其實遷移數據庫,一般用sql文件就行,把A服務器數據庫的表結構和數據等等導出,然后導入到B服務器數據庫,
但是這次數據文件過大,大約有40個G,使用命令行導入,效果不是很好,經常在執行過程中報錯、卡死。
最后參考網上的帖子,復制源數據庫的data目錄下的文件,完成數據遷移。
步驟如下:
1.首先要確定data目錄在哪里
這個問題困擾了我很久,因為網上的帖子大部分只是說拷貝mysql數據庫目錄下的data文件夾中的數據,但是data目錄到底在哪里,並未說明,我開始是拷貝的MySQL安裝目錄中的data文件夾,但是顯然這是錯誤的,拷貝后並未出現需要的數據庫。
其實是拷貝mysql的數據存放路徑,具體如下
C:\ProgramData\MySQL\MySQL Server 5.6\data(注意:ProgramData文件夾是隱藏的,需要先顯示出來)
(也可以使用命令 show global variables like "%datadir%";來查找data目錄)
2.需要拷貝的文件包括:數據庫文件(例如上圖所示的gd_base、common、gd_dbwizard等數據庫)和 ibdata1 (這個必須拷貝)
3.停掉mysql服務,將拷貝的文件復制到目標數據庫的data目錄中(路徑和上面的一樣在ProgramData文件夾中)
4.復制好后,啟動mysql服務,用數據庫連接工具連接數據庫即可看到導進來的數據庫