阿小信大人的头像
Where there is a Python, there is a way. 阿小信大人

将sqlite3的数据导入mysql中2014-09-02 04:43

导出数据:

ashin@linux:~$ sqlite3 ~/geek/iamnotdbfile .dump > geek.sql

删除前两行和最后一行:

PRAGMA foreign_keys=OFF;

BEGIN TRANSACTION;

...

COMMIT;

ashin@linux:~$ sed -i '1,2d; $d' geek.sql

将sqlite的"换成mysql的`:

ashin@linux:~$ sed 's/"/`/g' geek.sql > geek1.sql

加上mysql的建表约束:

ashin@linux:~$ sed -i -e 's/^);$/) engine=innodb default charset=utf8 collate=utf8_bin ;/g' geek1.sql

将整形主键改为自增:

ashin@linux:~$ sed -i 's/integer.*PRIMARY KEY/int NOT NULL auto_increment PRIMARY KEY/g' geek1.sql

将text改为longtext:

ashin@linux:~$ sed -i 's/ text/ longtext/g' geek1.sql

在mysql中建好数据库后将sql文件导入mysql:

ashin@linux:~$ mysql -uroot -p geek < geek1.sql

如果您觉得从我的分享中得到了帮助,并且希望我的博客持续发展下去,请点击支付宝捐赠,谢谢!

若非特别声明,文章均为阿小信的个人笔记,转载请注明出处。文章如有侵权内容,请联系我,我会及时删除。

#数据库#   #mysql #sqlite3
分享到:
阅读[1500] 评论[2]

你可能也感兴趣的文章推荐

本文最近访客

发表评论

#1 网友180.*.*.186[南京]35896 :
这些命令是在哪里输入呢
2016-08-01 09:16 回复
#2 网友103.*.*.146[香港]22400 回复 #1 网友180.*.*.186[南京] :
在终端命令行中
2016-08-01 19:16 回复