如何將高版本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”錯誤問題。
當運行SQL會出現:[Err] 1067 - Invalid default value for 'create_time',是因為Mysql版本不同,如果版本不 < 5.6請去的話報錯的處理方法如下:
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間' (修改前)
`create_time` datetime DEFAULT NULL COMMENT '創建時間' (修改后)
按照上述全局替換即可運行。