我正在尝试将用于旧服务器的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
我试着寻找解决方案。但是在所有的文档中,它说的是,备份已经迁移到以前的版本。但它们都没有描述如何迁移备份。任何有关这方面的解决方案都将不胜感激!
发布于 2014-03-21 12:01:45
此错误消息由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
和git checkout -b 5-2-stable COMMIT-HASH
)再次签出5-2-stable
,5-2-stable
( config/database.yml
)运行所有的任务,比如安装一个新的config/gitlab.yml
版本。backup.tar
文件复制到默认的/home/git/gitlab/tmp/backups
中,并运行restore rake
任务。没有任何问题。然后我跟踪5-2稳定到5-3稳定升级,一切都进行得很顺利.
发布于 2016-11-28 07:31:13
根据错误消息,备份存档由(gitlab-6.5.1-0)创建,无法使用(gitlab 6.6.5-omnibus)进行还原。
对于简单的解决方案,我建议先安装gitlab-6.5.1-omnibus
并还原备份存档。然后,通过linux包系统进行升级。如果遇到任何与数据库相关的问题,请运行sudo gitlab-rake db:migrate
发布于 2018-04-10 06:51:55
根据Gitlab关于https://docs.gitlab.com/ce/raketasks/backup_restore.html的官方文档
您只能将备份还原到与其创建的完全相同的版本和类型(CE/EE)。将存储库从一台服务器迁移到另一台服务器的最佳方法是备份还原。
因此,首先在旧服务器上更新您的gitlab (即6.5.1-0 -> 6.6.5 ),然后按照正式文件进行操作。
https://stackoverflow.com/questions/22557785
复制相似问题