1. 程式人生 > >navicat 匯入匯出資料庫報錯的解決

navicat 匯入匯出資料庫報錯的解決

在使用navicat匯入匯出資料功能時,匯出沒問題,匯入總是報錯,還遇到了中文亂碼。在網上查了很多資料,比如使用了navicat的資料傳輸功能,但仍然報錯,弄了幾個小時都沒解決。

最後換了種思路,我直接用mysql自帶的命令列來嘗試匯入匯出,結果一試就成功無任何報錯、亂碼!

這裡順便貼出網上的教程:

MySQL命令列匯出資料庫:

1,進入MySQL目錄下的bin資料夾:cd MySQL中到bin資料夾的目錄如我輸入的命令列:cd D:\Program Files\MySQL\MySQL Server 5.5\bin(或者直接將windows的環境變數path中新增該目錄)2,匯出資料庫:mysqldump -u 使用者名稱 -p 資料庫名 > 匯出的檔名 
如我輸入的命令列:mysqldump -u lmapp -p lmapp -P 3308 > lmapp.sql   (輸入後會讓你輸入進入MySQL的密碼)如果匯出單張表的話在資料庫名後面輸入表名即可       mysql匯出資料庫一個表  mysqldump -u 使用者名稱 -p 資料庫名 表名> 匯出的檔名  mysqldump -u lmapp -p lmapp users> test_users.sql (結尾沒有分號)3、會看到檔案news.sql自動生成到bin檔案下  匯出時,遇到上面的問題。解決措施:加個引數-P 3308(mysql服務埠)即可解決問題。

命令列匯入資料庫:

1,將要匯入的.sql檔案移至bin檔案下,這樣的路徑比較方便2,同上面匯出的第1步3,進入MySQL:mysql -u 使用者名稱 -p如我輸入的命令列:mysql -u root -p   (輸入同樣後會讓你輸入MySQL的密碼)4,在MySQL-Front中新建你要建的資料庫,這時是空資料庫,如新建一個名為news的目標資料庫5,輸入:mysql>use 目標資料庫名如我輸入的命令列:mysql>use news;6,匯入檔案:mysql>source 匯入的檔名; 如我輸入的命令列:mysql>source news.sql;       注:由於匯入資料庫的規模、資料結構不同,匯入所需時間會有較大差異。我匯入的資料庫有123M,花費將近5個小時。期間以為機器宕掉了,仔細觀察命令列介面發現,匯入是在正常進行的。匯入成功後的介面如下:
      注:匯入單張資料表時,使用類似use lmapp lm_area 、source lm_area.sql的sql語句。原資料表可存在,匯入後的資料表會覆蓋同名已存在的資料表。      MySQL備份和還原,都是利用mysqldump、mysql和source命令來完成的。