电光石火电光石火

陌晴博客
ilkhome.cn

gitlab备份与恢复

1.备份数据

gitlab-rake gitlab:backup:create  #执行命令备份数据库

这是会自动备份到backups这个目录下面的,备份文件前面的一串数字就是时间戳,还原时候回用到!

2.使用scp命令把备份的数据拷贝到新的服务器上面去(我用的是免密传输)

scp  -r 1563788420_2019_07_22_10.4.2_gitlab_backup.tar root@192.168.1.1:~

3.到新服务器把刚才拷过来的备份文件放在backps目录下面:

cp -rf  /root/1563788420_2019_07_22_10.4.2_gitlab_backup.tar    /var/opt/gitlab/backups/

4.执行还原数据的命令(或者说是导入数据到新服务器)

gitlab-rake gitlab:backup:restore BACKUP=1563788420_2019_07_22_10.4.2     #这个及时还原要用到的时间戳

还原要是报错了:

(1)自己gitla没有关闭,还原前记得关闭再还原

 gitlab-ctl stop unicorn

 gitlab-ctl stop sidekiq

(2)1563788420_2019_07_22_10.4.2_gitlab_backup.tar  记得授权这个文件

chown -R gitlab.root 1563788420_2019_07_22_10.4.2_gitlab_backup.tar

(3)旧服务器的版本gitlab版本和新的服务器版本是不通的

解决方法,那就只能升级了,保持两个版本是一样的,在备份还原才行

5.最后启动gitlab

gitalb-ctl  restart

有时候在还原后会出现点击project出现500现象,若出现此现象请执行下面命令:

gitlab-rails runner  "Project.where.not(import_url: nil).each { |p| p.import_data.destroy if p.import_data }"

本博客所有文章如无特别注明均为原创。作者:陌晴
版权所有:《电光石火》 => gitlab备份与恢复
本文地址:http://ilkhome.cn/index.php/archives/558/
欢迎转载!复制或转载请以超链接形式注明,文章为 陌晴 原创,并注明原文地址 gitlab备份与恢复,谢谢。

评论