如何將GitLab的資料從舊伺服器遷移到新伺服器

2021-10-21 19:01:40 字數 2609 閱讀 9265

二、先在舊伺服器做gitlab資料備份檔案

三、上傳剛剛的備份檔案到新伺服器上

四、將備份檔案許可權修改為777,避免出現許可權不夠的問題

五、停止新伺服器上gitlab資料連線服務

六、恢復備份檔案到gitlab

七、重新啟動gitlab

注意:在遷移 gitlab 資料前首先要確保新舊伺服器上安裝的 gitlab 版本是一致的。

1.1 舊伺服器上的安裝版本

[root@old-host ~]# cat /opt/gitlab/embedded/service/gitlab-rails/version

10.0.0

1.2 新伺服器上的安裝版本
[root@new-host ~]# cat /opt/gitlab/embedded/service/gitlab-rails/version

10.0.0

1.3 如果新舊伺服器上安裝的版本不一致

例如: 舊伺服器上gitlab版本10.3.3,新伺服器上gitlab版本12.0.1。

gitlab不能跨版本公升級,需乙個乙個大版本公升級。例如:10.8.7是10的最後乙個版本,11.11.0是11的最後乙個版本,則從 10.3.3 公升級到 12.0.1,需要經過 10.3.3 -> 10.8.7 -> 11.11.0 -> 12.0.1三次版本公升級。

所以,要先在舊伺服器上執行以下版本公升級命令:

[root@old-host ~]# yum install -y gitlab-ce-10.8.7-ce.0.el7

[root@old-host ~]# yum install -y gitlab-ce-11.11.0-ce.0.el7

[root@old-host ~]# yum install -y gitlab-ce-12.0.1-ce.0.el7

#注:如果不指定版本號,則自動公升級到最新版本。

[root@old-host ~]# yum install -y gitlab-ce

在每一次公升級後,都要測試gitlab後台系統是否正常,如果不能訪問了,則說明本次公升級失敗,應解決錯誤或回退版本。

[root@old-host ~]# gitlab-rake gitlab:backup:create

#預設將會在 /var/opt/gitlab/backups/ 目錄下生成備份檔案。

[root@old-host ~]# cd /var/opt/gitlab/backups/

[root@old-host backups]# ll /var/opt/gitlab/backups/

[root@old-host backups]# ll -h

總用量 3.4g

-rw-------. 1 git git 3.4g 3月 11 11:10 1615432132_2021_03_11_10.0.0_gitlab_backup.tar

[root@old-host backups]# scp -pxx 1615432132_2021_03_11_10.0.0_gitlab_backup.tar  [email protected]: /var/opt/gitlab/backups/
[root@new-host ~]# cd /var/opt/gitlab/backups/ 

[root@new-host backups]# ll -h

總用量 3.4g

-rw------- 1 root root 3.4g 3月 11 11:25 1615432132_2021_03_11_10.0.0_gitlab_backup.tar

[root@new-host backups]# chmod 755 1615432132_2021_03_11_10.0.0_gitlab_backup.tar

[root@new-host backups]# ll -h

總用量 3.4g

-rwxrwxrwx 1 root root 3.4g 3月 11 11:25 1615432132_2021_03_11_10.0.0_gitlab_backup.tar

[root@new-host backups]# gitlab-ctl stop unicorn

[root@new-host backups]# gitlab-ctl stop sidekiq

gitlab-rake gitlab:backup:restore backup=備份檔案編號

例如:備份檔案名為 1615432132_2021_03_11_10.0.0_gitlab_backup.tar,則編號為:1615432132_2021_03_11_10.0.0。

在提示中敲入「yes」繼續

[root@new-host backups]# gitlab-rake gitlab:backup:restore backup=1615432132_2021_03_11_10.0.0
[root@new-host backups]# gitlab-ctl restart
最後檢查新舊伺服器上gitlab的內容(包括賬號密碼等),完全一模一樣,遷移成功!

如何將檔案從stage移除

git將檔案分成三個階段 working directory stage repository 要進入repository之前,必須先進入stage,但實際上可能用了git add之後,才後悔發現這個檔案不應該進stage,必須從stage中移除,由於必須考慮該檔案是否已經存在於repository...

如何將資料從文字匯入到mysql

access中可以將文字中的資料輕鬆匯入表中,mysql中用起來沒那麼方便,其實起來也很簡單。首先將資料記錄按行處理好用特定的字元分開如 記錄形如 aaa,bbb,ccc,ddd,eee fff,ggg,hhh,iii,jjj,kkk 就行,建立loaddate.php hostname local...

如何將資料從文字匯入到mysql

access中可以將文字中的資料輕鬆匯入表中,mysql中用起來沒那麼方便,其實起來也很簡單。首先將資料記錄按行處理好用特定的字元分開如 記錄形如 aaa,bbb,ccc,ddd,eee fff,ggg,hhh,iii,jjj,kkk 就行,建立loaddate.php hostname lotqo...