服務器怎樣遷移—服務器遷移篇(WindowsServer2008SVN服務器遷移到Linux)
由於公司Windows服務器不太穩定,最近又被黑客攻擊,於是進行數據遷移
我們準備把WindowsServer2008上的數據都遷移到CentOS7上
由於數據量太大以及平臺兼容性,我們捨棄部分軟件,遷移一些核心的東西
由於我們的某些項目是部署在SVN上面的,於是乎,我們先來遷移SVN服務器
svn導出數據命令如下,其中 “D:\data\svndata\system”代表SVN倉庫
例如:svnadmin dump “D:\data\svndata\system” > D:\backup\system.dump
由於項目很多,不想一條一條執行浪費時間,於是編寫如下自動化batch腳本
命名爲dump.bat
該腳本放在SVN倉庫下執行
::create Joker
::time 03/13
@echo off
set dump=.dump
md C:\dump
for /d %%c in (*) do (
echo ===========start============
echo Working on files:
echo %cd%\%%c
:: svnadmin dump “D:\data\svndata\system” > D:\backup\system.dump
:: 由於當時安裝SVN服務器的時候沒有配置環境變量 導出時使用svnadmin的絕對路徑
"D:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe" dump %cd%\%%c > C:\dump\%%c%dump%
echo %cd%\%%c%dump% >> dump.txt
echo Complete!
echo ============end=============
)
echo Success!!
pause
等執行完成之後顯示如下(項目多要好久好久)
我們上面是導出到C:\dump下
導出完畢後本來想在Linux服務器上搭建一個Samba或者ftp傳文件的,由於是阿里雲服務器,不像麻煩管理員開端口,於是下載xhell和xftp,直接使用xftp傳文件了,由於文件大,果然傳了半天(髒話***)
傳完之後如下
在Linux中安裝SVN
yum install subversion -y
進入前面從windows上傳過來的那個目錄編寫如下shell腳本
命名爲load.sh
使用chmod u+x load.sh給予執行權限
#!/bin/bash
# create Joker
# time 03/14
dumpfilelist=`ls *.dump`
count=0
datapath=/root/svn/svndata/
mkdir $datapath -p
starttime=`date +"%Y-%m-%d %H:%M:%S"`
echo starttime:$starttime
for dumpfile in $dumpfilelist;
do
echo =======start========
echo "Being implemented:"$dumpfile"!"
# svnadmin load /data/svndata/system < /data/backup/system.dump
# svnadmin load /svn/data/$file < $dumpfile
file=`echo $dumpfile | awk -F '.' '{ print $1 }'`
let count+=1
echo Count:$count,BeingCreate:$file!
#svnadmin create /data/svndata/system
svnadmin create $datapath$file
svnadmin load $datapath$file < $dumpfile
echo $datapath$file
echo Complete!!!
echo ========end=========
done
endtime=`date +"%Y-%m-%d %H:%M:%S"`
echo endtime$endtime
tart_seconds=$(date --date="$starttime" +%s);
end_seconds=$(date --date="$endtime" +%s);
echo "SumTime: "$((end_seconds-start_seconds))"s"
echo Success!!!
./load.sh執行,顯示如下
慢慢的數據就導過來來了
當然也可以使用
nohup ./load.sh &
後臺執行然後睡覺第二天再處理後續操作
大概一個半小時數據全部導入了
設置版本庫啓動SVN
好了,我只負責遷移,其他加權限什麼的就不歸我管了,去遷移其他數據了,其餘的步驟博主就在此省略了,可以自行去搜索SVN for Linux去看看具體怎麼配置的
如果有人對我寫的腳本有疑問可以通過下面方式聯繫
QQ:2351147520
或發郵件到
[email protected]