Gitlab 备份与恢复

备份

1、备份数据(手动备份)

复制代码
gitlab-rake gitlab:backup:create

2、备份数据(定时任务备份)

复制代码
[root@localhost ]# crontab -l
00 1 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
说明:每天凌晨1点备份数据
数据默认保存路径:/var/opt/gitlab/backups/

还原

1、还原数据

1.1、复制数据到新Gitlab默认备份目录

复制代码
cp 备份文件_gitlab_backup.tar /var/opt/gitlab/backups/

1.2、设置备份文件权限

复制代码
chown git.git 备份文件_gitlab_backup.tar

1.3、使用如下命令恢复数据

1.3.1、停止 Gitlab

复制代码
gitlab-ctl stop unicorn
gitlab-ctl stop sideki

1.3.2、还原数据

复制代码
[root@localhost ]# gitlab-rake gitlab:backup:restore BACKUP=1690391227_2023_07_27_12.3.4-ee
Unpacking backup ... done
Before restoring the database, we will remove all existing
tables to avoid future upgrade problems. Be aware that if you have
custom tables in the GitLab database these tables and all data will be
removed.

Do you want to continue (yes/no)? yes   # 输入yes
Removing all tables. Press `Ctrl-C` within 5 seconds to abort
2023-07-27 16:07:36 +0800 -- Cleaning the database ... 
2023-07-27 16:07:46 +0800 -- done
2023-07-27 16:07:46 +0800 -- Restoring database ... 
Restoring PostgreSQL database gitlabhq_production ... SET

1.3.3、重启 Gitlab

复制代码
[root@localhost ]# gitlab-ctl restart
ok: run: alertmanager: (pid 19043) 0s
ok: run: gitaly: (pid 19067) 0s
ok: run: gitlab-exporter: (pid 19087) 1s
ok: run: gitlab-workhorse: (pid 19089) 0s
ok: run: grafana: (pid 19093) 0s
ok: run: logrotate: (pid 19120) 0s
ok: run: nginx: (pid 19133) 0s
ok: run: node-exporter: (pid 19289) 0s
ok: run: postgres-exporter: (pid 19300) 1s
ok: run: postgresql: (pid 19318) 0s
ok: run: prometheus: (pid 19320) 0s
ok: run: redis: (pid 19338) 0s
ok: run: redis-exporter: (pid 19343) 0s
ok: run: sidekiq: (pid 19358) 0s

1.4、打开web页面,查看数据是否正常

说明:输入账号密码,查看数据是否已恢复完成

相关推荐
wanhengidc2 小时前
云手机的适配性怎么样?
运维·服务器·安全·智能手机·云计算
jimy12 小时前
安卓里运行Linux
linux·运维·服务器
哟哟耶耶3 小时前
js-fetch流式实现中断重连
运维·服务器
爱凤的小光3 小时前
Linux清理磁盘技巧---个人笔记
linux·运维
字节数据平台5 小时前
刚刚,火山引擎多模态数据湖解决方案发布大数据运维Agent
大数据·运维·火山引擎
原神启动16 小时前
Docker 场景化作业:生产环境容器操作实训
运维·docker·容器
云老大TG:@yunlaoda3606 小时前
如何通过华为云国际站代理商CSBS进行备份策略设置?
运维·数据库·华为云
zly35007 小时前
linux查看正在运行的nginx的当前工作目录(webroot)
linux·运维·nginx
QT 小鲜肉7 小时前
【Linux命令大全】001.文件管理之file命令(实操篇)
linux·运维·前端·网络·chrome·笔记
呼啦啦呼啦啦啦啦啦啦7 小时前
docker制作镜像的两种方式(保姆级教学)
运维·docker·容器