linux下拷貝MySql數據庫文件備份數據庫

     大致上MySql數據庫備份可以採用兩種方式:一種就是直接導出sql語句或者易於導入的其他格式的sql存儲文件,使用sql語句或者一些可視化客戶端導出,這種方法非常簡單,無需贅述;另一種方法就是拷貝出數據庫文件,再將數據庫文件轉換成sql文件,這篇文章就介紹一下這種方法。

    ①查找數據庫文件存放位置,MySql文件的後綴有三種形式*.MYD、*.MYI、*.frm;

  1. find / -name *.MYD 

   

    ②進入數據庫存儲文件目錄;

  1. cd /opt/lanmp/mysql-5.1.63/win/data/ 

    ③使用copy命令把所有數據拷出去;

  1. copy mysql /home 

    ④此時只需將這些數據庫文件轉換成sql文件,這也是這篇文章裏我要講的重點,如果需要的時候再將sql文件用命令導入即可;

    ⑤新建一個數據庫命名爲mysqlbak,將剛纔拷出來的文件夾拷入新數據庫的data文件夾;

  1. find / -name mysqlbak 

  1. cd /home/mysql 
  2. copy * /www/wdlinux/mysql-5.1.63/var/mysqlbak/ 

    ⑥此時就已經可以看到新數據庫mysqlbak裏的數據了,跟原數據庫mysql裏的數據是一樣的;

    ⑦使用命令導出數據庫文件即可。

  1. mysqldump -uroot -p mysqlbak > /home/mysql.sql 

    ⑧這home文件夾下的文件mysql.sql文件就是易導入的數據庫文件。需要注意的是所有的操作都必須在操作系統下用命令完成,而不提倡使用工具。因爲在實際操作過程中,我們經常會遇到數據庫裏的數據庫文件版本和數據庫版本不一致,或者新舊數據庫版本不一致的問題,再或者數據服務器版本與客戶端工具不兼容等意想不到的問題,如果是這種情況,使用工具導出一般會報“1577:Cannot proceed because system tables used by Event Scheduler were found damaged at server start”的錯誤。說到這裏,其實本文也提供了一種打開mysql數據庫文件的方法,如果現在只有一堆*.MYD、*.MYI、*.frm文件,執行步驟⑤到步驟⑧即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章