11

古いサーバーの gitlab バックアップを新しいサーバーに移行しようとしています。古いサーバーには gitlab (gitlab-6.5.1-0) があり、新しいサーバーには gitlab バージョン (gitlab 6.6.5-omnibus) があります。次のコマンドを使用して、古いサーバーからバックアップを取得しました

bundle exec rake gitlab:backup:create RAILS_ENV=production

そして、このコマンドを使用して新しいサーバーでこのバックアップを復元しようとすると

gitlab-rake gitlab:backup:restore BACKUP=1395394855

次の出力が得られます

Unpacking backup ... done
GitLab version mismatch:
  Your current GitLab version (6.6.5) differs from the GitLab version in the backup!
  Please switch to the following version and try again:
  version: 6f6f1588ba5123f156ee3b0635a061745b71fcde

解決策を探してみました。しかし、すべてのドキュメントで、The backup is already migrated to the previous versionと書かれています。ただし、バックアップの移行方法については説明していません。これに関する解決策は大歓迎です!

4

3 に答える 3

2

このエラー メッセージは、によって生成されlib/backup/manager.rb#L87-L92ます。

  settings = YAML.load_file("backup_information.yml")
  ENV["VERSION"] = "#{settings[:db_version]}" if settings[:db_version].to_i > 0

  # restoring mismatching backups can lead to unexpected problems
  if settings[:gitlab_version] != Gitlab::VERSION
    puts "GitLab version mismatch:".red

このコメントで説明されているように、増分バックアップを強制しているようです:

バックアップを新しいサーバーに復元するときに、同じ問題に直面しました。

backup.rakeバックアップ時に GITLAB コミット番号をチェックし、最新のチェックアウトから同じブランチ名に復元するとき。

私はしなければならない:

  • 削除5-2-stableして
  • 5-2-stable同じコミット ハッシュ ( git checkout -b 5-2-stable COMMIT-HASH) で再度チェックアウトし、
  • すべてのタスクを、5-2-stable同じ.config/gitlab.ymlconfig/database.yml
  • backup.tar次に、ファイルをデフォルトにコピーしてタスク/home/git/gitlab/tmp/backupsを実行しました。restore rake

問題なく動作しました。その後、5-2-stable から 5-3-stable へのアップグレードを行ったところ、すべてうまくいきました。

于 2014-03-21T12:01:45.943 に答える