1. 程式人生 > >win處navicat直接導出的sql腳本導入Linux mysql報錯問題

win處navicat直接導出的sql腳本導入Linux mysql報錯問題

錯誤 www. nbsp 提取 xxx .com 根目錄 打開 win

最近幾天在把win上的項目的數據庫轉移到Ubuntu,於是第一件事就是從win處的navicat直接導出sql腳本,然後進入Ubuntu導入的時候會報錯誤,跳過錯誤繼續執行導致數據庫表的缺失。

跨平臺錯誤的操作如下:

技術分享

如果都是win下的話,上邊的這種操作是可以的,導入導出都沒有錯誤,可是到了Linux下的時候,就會出現sql錯誤,最開始還以為是因為數據庫版本問題,在Ubuntu下安裝了好幾個版本,最後停在了8.0.3最新的版本。之後問同事知:navicat導出的sql是經過navicat改變了的。

手動打開sql文件發現,如圖:

技術分享最下邊使用的是遊標之類的東西,可是手寫sql的時候我們知道一般保存的sql都是建表語句和插入語句的集合。

於是查了navicat的其他導出sql的辦法,得出了方法一:先備份,然後提取sql

技術分享

技術分享

貌似可以直接提取,總之從這裏提取的sql腳本是可以導入Linux成功並沒有錯誤的。(幾乎不存在mysql版本問題)

方法二:使用命令行直接導出

#命令行進入mysql根目錄(以我的路徑舉例)
cd c:\mysql\bin
mysqldump -uroot -p 數據庫名 > xxx.sql

輸入密碼後,會自動導出sql到bin目錄下,找到之後就可以用它來導入Linux了

導入Linux的話可以使用navicat,參考我的另一篇帖子 http://www.cnblogs.com/hellxz/p/7638238.html

win處navicat直接導出的sql腳本導入Linux mysql報錯問題