MySQL5.7的sql腳本導入到MySQL5.5出錯3種解決方案
筆者需要將使用MySQL5.7數(shù)據(jù)庫的網(wǎng)站挪入winows服務器,目標服務器使用的是MySQL5.5,因為兼顧到以前的網(wǎng)站,MySQL不能升級。遇到MySQL5.7的sql腳本導入到MySQL5.5出錯,總結了3種解決方案,總有一個方案適合你。
MySQL5.7的sql導入到5.5出錯原因
從MySQL 5.6.5開始,TIMESTAMP和DATETIME列可以自動初始化并更新為當前日期和時間(即CURRENT_TIMESTAMP)
在5.6.5之前,這僅適用于TIMESTAMP,并且每個表最多只有一個TIMESTAMP列
MySQL5.7的sql導入到5.5,3種解決方案
一、修改sql文件
sql文件中進行全文替換,注意備份一下sql原文件。
datetime(3) ===>datetime datetime(0) ===>datetime TIMESTAMP(3) ===>TIMESTAMP DEFAULT CURRENT_TIMESTAMP ===>DEFAULT '0000-00-00 00:00:00' DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ===>DEFAULT '0000-00-00 00:00:00' DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) ===>DEFAULT '0000-00-00 00:00:00' DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP ===>DEFAULT '0000-00-00 00:00:00'
都替換后重新導入sql,導入成功
二、Navicat數(shù)據(jù)傳輸
用客戶端軟件 Navicat 同時連接兩端的數(shù)據(jù)庫后,使用【數(shù)據(jù)傳輸】功能進行導入。
打開Navicat,在上面的菜單欄點擊“工具”,選擇“數(shù)據(jù)傳輸”,進行操作
三、phpmyadmin導出
如果可以使用phpmyadmin導出的話,也有個兼容辦法。
導出時,導出方式選擇“自定義“,在“格式特定選項”中“最大程度兼容數(shù)據(jù)庫系統(tǒng)或舊版本的 MySQL 服務器”,選擇“MySQL40”
這樣導出的數(shù)據(jù)庫就可以兼容舊版本的編碼格式了
到此這篇關于MySQL5.7的sql腳本導入到MySQL5.5出錯3種解決方案的文章就介紹到這了,更多相關MySQL5.7的sql導入5.5內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
MySQL切分函數(shù)substring()的具體使用
這篇文章主要介紹了MySQL切分函數(shù)substring()的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-02-02MySQL快速插入大量數(shù)據(jù)的解決方案和代碼示例
在這篇博客中,我們將深入探討如何高效插入大量數(shù)據(jù)到MySQL數(shù)據(jù)庫,無論你是數(shù)據(jù)庫新手還是經(jīng)驗豐富的開發(fā)者,這篇文章都將為你提供實用的解決方案和代碼示例,幫助你解決插入3萬條數(shù)據(jù)需要20多秒的問題,需要的朋友可以參考下2024-08-08使用Dify訪問mysql數(shù)據(jù)庫詳細代碼示例
這篇文章主要介紹了使用Dify訪問mysql數(shù)據(jù)庫的相關資料,并詳細講解了如何在本地搭建數(shù)據(jù)庫訪問服務,使用ngrok暴露到公網(wǎng),并創(chuàng)建知識庫、數(shù)據(jù)庫訪問工作流和智能體,需要的朋友可以參考下2025-03-03mysql實用技巧之比較兩個表是否有不同數(shù)據(jù)的方法分析
這篇文章主要介紹了mysql實用技巧之比較兩個表是否有不同數(shù)據(jù)的方法,結合實例形式分析了mysql數(shù)據(jù)表比較的相關操作技巧與注意事項,需要的朋友可以參考下2019-12-12