009. gitlab备份和恢复
gitlab备份
#1. 创建添加配置文件
vim /etc/gitlab/gitlab.rb
文件尾添加:
gitlab_reils['backup_path'] = '/data/backup/gitlab'
gitlab_rails['backup_keep_time'] = 604800
#2. 创建 /data/backup 目录和权限配置
mkdir /data/backup/gitlab
chwon -R git.git /data/backup/git.lab
#3. 备份命令
/usr/bin/gitlab-rake gitlab:backup:create
#4. 将备份命令添加到定时任务,每周或者每天进行备份
crontab -e
0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
手动备份gitlab
默认备份文件夹: /var/opt/gitlab/backups/
备份命令: gitlab-rake gitlab:backuo:create
定时任务备份gitlab
crontab -l
0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
gitlab数据恢复步骤
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-rake gitlab:backup:restore BACKUP=1577142190_2019_12_24_10.2.2_gitlab_backup.tar
gitlab-ctl restart
告知你相关风险,提示是否恢复:
选择yes即可恢复
这里继续提醒: 选择yes
恢复完毕后重启相关服务
[root@master git_test]# gitlab-ctl restart
ok: run: gitaly: (pid 115728) 0s
ok: run: gitlab-monitor: (pid 115740) 1s
ok: run: gitlab-workhorse: (pid 115748) 0s
ok: run: logrotate: (pid 115758) 0s
ok: run: nginx: (pid 115765) 1s
ok: run: node-exporter: (pid 115771) 0s
ok: run: postgres-exporter: (pid 115776) 1s
ok: run: postgresql: (pid 115820) 0s
ok: run: prometheus: (pid 115828) 1s
ok: run: redis: (pid 115837) 0s
ok: run: redis-exporter: (pid 115842) 0s
ok: run: sidekiq: (pid 115847) 1s
ok: run: unicorn: (pid 115849) 0s
检查状态:
[root@master git_test]# gitlab-ctl status
run: gitaly: (pid 115728) 48s; run: log: (pid 25672) 710356s
run: gitlab-monitor: (pid 115740) 48s; run: log: (pid 25775) 710349s
run: gitlab-workhorse: (pid 115748) 47s; run: log: (pid 25571) 710375s
run: logrotate: (pid 115758) 47s; run: log: (pid 25608) 710362s
run: nginx: (pid 115765) 47s; run: log: (pid 25590) 710368s
run: node-exporter: (pid 115771) 46s; run: log: (pid 25719) 710355s
run: postgres-exporter: (pid 115776) 46s; run: log: (pid 25829) 710341s
run: postgresql: (pid 115820) 45s; run: log: (pid 25350) 710419s
run: prometheus: (pid 115828) 45s; run: log: (pid 25810) 710342s
run: redis: (pid 115837) 45s; run: log: (pid 25278) 710426s
run: redis-exporter: (pid 115842) 45s; run: log: (pid 25789) 710349s
run: sidekiq: (pid 115847) 45s; run: log: (pid 25553) 710382s
run: unicorn: (pid 115849) 44s; run: log: (pid 25515) 710384s
到这里,所以备份之前删除的库表都会被恢复

微信赞赏

支付宝赞赏

【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· 2025成都.NET开发者Connect圆满结束
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 在 VS Code 中,一键安装 MCP Server!
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析