不同mysql版本資料匯入出現的問題,mysql版本資料匯入

來源:互聯網
上載者:User

不同mysql版本資料匯入出現的問題,mysql版本資料匯入

原mysql的版本是:3.4.10.1deb1,目標mysql的版本是:5.0.51b-community-nt-log,匯入資料時出現了一下問題:

1、DELIMITER

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER //' at line 1

google了一下,[1]中的說明正確,它說,DELIMITER並不是一個MySQL命令,與你執行這句話的mysql用戶端有關,我用的是PHPMYAdmin,其用戶端的版本為:5.0.51a,它不支援DELIMITER語句,換個用戶端即可。用命令符介面匯入sql檔案,運行成功。總結:DELIMITER與MySQL伺服器的版本無關,只與mysql用戶端有關。

2、不支援BTREE結構

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'USING BTREE,
  KEY `authorid` (`authorid`) USING BTREE,
  KEY `dateline` (`datel' at line 24

其實並不是mysql版本不支援BTREE索引結構,而是sql文法不對。目標版本的mysql語句為將括弧裡的索引項目放置在後面,即將所有類似 

KEY `authorid` (`authorid`) USING BTREE

的語句修改成[2]:

 KEY `authorid`USING BTREE(`authorid`)

3、不支援Innodb

目標mysql資料庫不支援Innodb引擎,但是程式需要支援事務,因此,需要讓其支援Innodb。做法如下:

找到my.ini檔案,尋找skip-innodb,刪除前面的#,儲存。重啟mysql服務。


[1] http://stackoverflow.com/questions/9017269/mysql-delimiter-syntax-error

[2] http://www.xuyuanchi.com/thread-933-1-1.html

[3] http://lxy.me/mysql-supports-innodb-storage-engine.html

轉載請註明:康瑞的部落 » 不同mysql版本資料匯入出現的問題

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.