環境介紹:
centos 6.7
gitlab:6.3.1
需求:gitlab從a伺服器遷移至b伺服器
第一、在b伺服器上部署gitlab環境
參考《gitlab完整搭建(版本6.3.1)》
第二、備份a伺服器上的資料
1).打包倉庫檔案#su- git
$cd/home/git/
$tarzcvf repositories.tar.gz ./repositories
2).備份sql檔案$mysqldump-uroot -p***x gitlabhq_production > /tmp/gitlabhq_production.sql
3).備份keys$cp/home/git/.ssh/authorized_keys /tmp/authorized_keys
4).複製1-3步的檔案到b伺服器$scprepositories.tar.gz gitlabhq_production.sql authorized_keys root@b:/tmp/
第三、在b伺服器上匯入資料
1).匯入倉庫,檢查許可權$cd/home/git
$tarzxvf repositories.tar.gz
如果許可權有異常,直接重新賦權$chown-r git.git /home/git/repositories/
2).匯入資料庫$mysql-uroot -p*** gitlabhq_production
3).匯入keys$catauthorized_keys >> /home/git/.ssh/authorized_keys
4.將檔案匯入ruby$cd/home/git/gitlab/
$bundleexec rake gitlab:import:repos rails_env=production
$bundleexec rake gitlab:satellites:create rails_env=production
5).檢測$bundleexec rake gitlab:check rails_env=production
如果檢測沒有異常,可以重啟gitlab服務#/etc/init.d/gitlab restart
第四、驗證git pull/push與異常解決
如果報錯:
git.exe push --progress "origin"master:master
counting objects: 3, done.
delta compression using up to 4 threads.
compressing objects: 100% (2/2), done.
writing objects: 100% (3/3), 350 bytes | 0bytes/s, done.
total 3 (delta 0), reused 0 (delta 0)
remote: gitlab: an unexpected erroroccurred (redis-cli returned 1).
remote: error: hook declined to updaterefs/heads/master
to ! [remote rejected] master -> master(hook declined)
error: failed to push some refs to『『
遮蔽 /home/git/gitlab-shell/config.yml 28行redis配置
mysql庫遷移 mysql資料庫遷移
由於yum安裝mysql的時候,資料庫的data目錄預設是在 var lib下,出於資料安全性的考慮需要把它挪到 data分割槽。步驟如下 一 關閉apache和mysql.複製 如下 二 將 var lib下的mysql目錄mv 移動 到data目錄。為什麼要用mv命令,而不用cp命令呢?應為li...
MYSQL資料庫遷移
因為今天公司換了新電腦,所以需要把之前電腦的mysql資料庫遷移到新 電腦上 匯出整個資料庫 mysqldump u 使用者名稱 p 資料庫名 匯出的檔名 mysqldump u dbuser p dbname dbname.sql 一般要是沒指定檔案路徑則.sql檔案生成在cmd當前路徑下 匯入資...
MySQL資料庫遷移
mysql資料庫遷移 資料檔案直接遷移 在今年10月下旬的時候,公司的伺服器需要遷移,其中涉及到了mysql資料庫遷移。檢視了一下mysql資料檔案的大小,接近60g的大小 實際資料並沒用那麼多 由於伺服器上業務需要,要儘量減少伺服器遷移時的損失。所以遷移時間選在了晚上零點開始,而且要儘量減少遷移所...