Gitlab備份和恢復操作
阿新 • • 發佈:2018-05-09
hive 分享圖片 手動 環境變量 ide nta pre mkdir -p blog
參考:https://www.cnblogs.com/kevingrace/p/7821529.html
一,設置開啟備份以及備份路徑
/etc/gitlab/gitlab.rb
gitlab_rails[‘manage_backup_path‘] = true #開啟備份 gitlab_rails[‘backup_path‘] = "/data/gitlab/backups" #設置備份路徑 gitlab_rails[‘backup_archive_permissions‘] = 0644 #備份文件的權限 gitlab_rails[‘backup_keep_time‘] = 604800 #備份保留天數這裏單位是秒是7天
創建備份路徑並且設置權限
mkdir -p /data/gitlab/backups chown -R git.git /data/gitlab/backups chmod -R 777 /data/gitlab/backups
設置生效
gitlab-ctl reconfigure
二,手動使用命令備份
gitlab-rake gitlab:backup:create
執行完畢可以在備份路徑下面看到備份文件
設置腳步定時備份
gitlab_backup.sh
#!/bin/bash /usr/bin/gitlab-rake gitlab:backup:create CRON=1
PS:環境變量CRON=1的作用是如果沒有任何錯誤發生時, 抑制備份腳本的所有進度輸出
crontab -e
0 0,6,12,18 * * * /bin/bash -x /data/gitlab/backups/gitlab_backup.sh > /dev/null 2>&1
三,恢復操作
停止數據庫連接
gitlab-ctl stop unicorn gitlab-ctl stop sidekiq
查看狀態
gitlab-ctl status
恢復(遇到需要輸入則輸入yes)
恢復之前可以刪除一個測試庫比如test然後在恢復以後看是否恢復
gitlab-rake gitlab:backup:restore backup=1525801521_gitlab_backup.tar
再次啟動gitlab
gitlab-ctl start
PS:另外:Gitlab遷移與恢復一樣,但是要求兩個GitLab版本號一致
Gitlab備份和恢復操作