mysql8.0高版本數(shù)據(jù)導(dǎo)入5.6低版本,mysql8.0如何導(dǎo)入5.6低版本?mysql8.0導(dǎo)入mysql5.6
今日想將本機的mysql(8.0)中的數(shù)據(jù)庫文件導(dǎo)出到遠程服務(wù)器中的mysql(5.6)中,剛開始用source 一直報一大串ERROR,由于數(shù)據(jù)量比較大,那就直接用圖形化工具導(dǎo)吧,連接上遠程數(shù)據(jù)庫,建好庫,然后運行SQL文件,依舊是unsuccess.
[SQL] Query sql_bs start
[ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'
[ERR] /*Navicat Premium Data Transfer
找到最開始報錯的地方,看到了這個問題,一看就是編碼問題,將編碼修改后,數(shù)據(jù)完美導(dǎo)入
問題
這個錯誤是沒有“utf8mb4_0900_ai_ci”這個編碼,因為我用的mysql版本是:5.6,這個版本的mysql沒有這個編碼方式。
如果你不知道你的mysql版本的話,可以百度查一下:mysql版本如何查詢
這里提供一個方式,在Navicat軟件中–>新建查詢–>輸入select version();
即可得到自己的mysql版本。
解決
第一種
升級mysql版本到8.0
但,一般情況下,都是因為特殊原因,不能改變版本,所以有第二種方法:
第二種
修改編碼方式
打開sql文件,將文件中的所有utf8mb4_0900_ai_ci替換為utf8_general_ci,同時將utf8mb4替換為utf8。處理sql后重新在mysql庫中導(dǎo)入sql文件即可。