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页面,查看数据是否正常

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

相关推荐
luck_lin2 小时前
linux添加新硬盘挂载分区和数据迁移
linux·运维·分区扩容
四时久成2 小时前
服务器认证系统
运维·服务器
徐子元竟然被占了!!2 小时前
Windows Server 2019 DateCenter搭建 FTP 服务器
运维·服务器·windows
-L72 小时前
进入docker中mysql容器的方法
运维·mysql·docker·容器
wayuncn4 小时前
影响服务器托管费用的因素
运维·服务器·数据中心·服务器托管·物理服务器租用·服务器机柜·idc机房托管
喜欢你,还有大家4 小时前
Linux笔记10——shell编程基础-4
linux·运维·服务器·笔记
司徒轩宇4 小时前
Python secrets模块:安全随机数生成的最佳实践
运维·python·安全
wjm05194 小时前
jenkins使用publishover ssh 进行远程连接
运维·ssh·jenkins
✎﹏赤子·墨筱晗♪4 小时前
服务器初始化
运维·服务器
tanyongxi665 小时前
简易shell
linux·运维·服务器