將高版本mysql資料庫的資料匯入低版本mysql中
前言
最近做了個網站,準備放到虛擬主機上的時候,發現本地資料庫是mysql5.6,伺服器上的mysql是5.0的。於是嘗試匯出資料,結果,匯入的資料不是出錯,就是各種亂碼。折騰了好久之後,終於找到了解決之道,特來水一貼,分享一發。
建議是在資料遷移的時候版本差距別太大,有可能會出現版本相容問題。
方法
之前用的是phpmyadmin匯出的,即使設定了mysql匯出相容低版本,還是有問題。後來,想到了電腦上還裝了個navicat for mysql,開啟一看,果然可以將高版本mysql資料庫中的資料無傷匯入低版本mysql中。前提是你裝了navicat for mysql,步驟:
1. 開啟navicat for mysql,選擇你要匯出的資料庫,然後右鍵
2. 設定屬性,選擇對應的mysql版本即可,然後開始
總結
高版本mysql和低版本mysql之間會有相容性問題,一不小心就可能導致亂碼或者錯誤。”Unknown collation: ‘utf8mb4_unicode_ci”錯誤問題。
不同的msyq版本和不同的mysql驅動會出現不相容問題
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
解決辦法是 重新下載mysql 並使用相同版本的 驅動。。。結果就沒有問題了。
後來,我又重新用了之前的驅動,結果也沒有問題。所以我覺得應該是我之前的mysql資料庫出問題了。
看網上說,最好用較高版本的的驅動,這樣會向下相容。
mysql5.x升級到mysql5.7後匯入之前資料庫date出錯的快速解決方法【mysql低版本資料匯入到高版本出錯】
【具體參考:mysql的sql_mode詳解】
修改mysql5.7的配置檔案即可解決,方法如下:
linux版:找到mysql的安裝路徑進入預設的為/usr/share/mysql/中,進行對my-default.cnf編輯利用查詢功能"/"找 到"sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"將其刪除或者是註釋即可。
Windows版:
32位找到mysql安裝路徑直接修改my.ini檔案利用ctrl+f搜尋出來的內容
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"將其註釋或者是刪除即可。
64位需要進入windows的安裝目錄下XXX\MySQL Server 5.7\Data,修改配置檔案my.ini,利用ctrl+f搜尋出來
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"將其註釋者刪除即可。
高版本mysql匯入低版本mysql的方法解決資料庫亂碼的問題
用PHP+mysql開發的網站經常會遇到mysql資料庫版本不同導致遷移網站資料時經常出現:匯入不成功,如出現資料庫臭蟲,匯入後是亂碼等問題
邦明科技遷移mysql資料庫的方法是:
高版本mysql匯入低版本mysql的方法:
1.從高版本的mysql預設匯出utf-8為mysql.sql
2.用記事本開啟mysql.sql
3.去掉含有/*!40101 符號的註釋行
4.複製所有記事本里的sql語句
5.開啟低版本的mysql資料庫,然後點選查詢SQL,將複製的SQL程式碼貼上到SQL查詢框中執行
6.這樣就成功將高版本的mysql匯入到低版本的mysql,並解決了亂碼問題
之前做的很多失敗過程:
1.刪除頭尾:/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;匯入utf-8無法匯入,出錯
2.另存為ansi 匯入utf-8可以匯入,亂碼,無法顯示
3.另存為:unicode 匯入utf-8無法匯入,出錯
4.另存為unicode 替換utf-8為latin1 匯入utf-8無法匯入,出錯
5.另存為unicode 替換utf8為latin1 匯入utf-8無法匯入,出錯
相關文章
- 解決MYSQL資料從高版本匯入低版本的問題(轉)MySql
- IMPDP 高版本DUMP檔案匯入低版本資料庫資料庫
- 用EXP/IMP從高版本資料庫匯出至低版本資料庫匯入實驗資料庫
- 資料庫 MySQL 資料匯入匯出資料庫MySql
- 在SQL Server資料庫中匯入MySQL資料庫Server資料庫MySql
- mysql 資料庫匯入匯出MySql資料庫
- MySQL資料庫匯入匯出MySql資料庫
- 資料泵(expdp,impdp)高版本匯入低版本操作例項
- 【mysql】資料庫匯出和匯入MySql資料庫
- mysqldump匯入匯出mysql資料庫MySql資料庫
- Mysql 資料庫匯入與匯出MySql資料庫
- Sqoop將MySQL資料匯入到hive中OOPMySqlHive
- 厲害了!12秒將百萬資料透過EasyExcel匯入MySQL資料庫中ExcelMySql資料庫
- MySQL資料的匯入MySql
- 低版本exp連線到高版本庫進行匯出,匯出資料為空
- mysql資料匯入匯出MySql
- mysql資料匯出匯入MySql
- MySQL資料庫結構和資料的匯出和匯入 (轉)MySql資料庫
- 從Excel到匯入MYSQL資料庫ExcelMySql資料庫
- mysql資料庫備份匯入命令MySql資料庫
- 將Mysql資料匯入到ElasticSearch叢集MySqlElasticsearch
- 將資料從文字匯入到mysql(轉)MySql
- 將MYSQL資料顯示在QT的tablewidget中/將QT中的資料儲存到MYSQL資料庫中MySqlQT資料庫
- MySQL資料匯入到infobright中MySql
- Mysql 大資料表 資料匯入到SqlServer 中的方法MySql大資料Server
- Python使用pymysql和xlrd2將Excel資料匯入MySQL資料庫PythonMySqlExcel資料庫
- 資料整合通過JDBC將資料匯入MySQL的幾種模式JDBCMySql模式
- .NET Core使用NPOI將Excel中的資料批量匯入到MySQLExcelMySql
- 談談資料從sql server資料庫匯入mysql資料庫的體驗(轉)Server資料庫MySql
- 把ACCESS的資料匯入到Mysql中(轉)MySql
- 將informix匯出的文字資料匯入oracle資料庫ORMOracle資料庫
- MYSQL資料檔案匯入MySql
- ORACLE MYSQL互相匯入資料OracleMySql
- 將XML匯入資料庫XML資料庫
- MySQL入門--匯出和匯入資料MySql
- pl/sql developer將excel資料匯入到資料庫中SQLDeveloperExcel資料庫
- 利用Java進行MySql資料庫的匯入和匯出JavaMySql資料庫
- mysql匯入匯出.csv格式資料MySql