将mysql数据库转换为sqlite数据库的最佳方法是什么?

时间:2020-03-05 18:38:50  来源:igfitidea点击:

我目前有一个较小的MySQL数据库(4或者5个表,5000行),我想将其转换为sqlite数据库。由于我可能不得不多次执行此操作,如果有人可以推荐任何有用的工具,或者至少推荐任何易于复制的方法,我将不胜感激。

(我对所涉及的数据库/计算机具有完全的管理员访问权限。)

解决方案

回答

如果只有几个表,则可以在首选的脚本语言中编写脚本,并在阅读所有答复或者找到合适的工具之前全部完成。我会的。 :)

回答

只要MySQL转储文件不超过SQLite查询语言,我们就应该能够轻松迁移:

tgl@moto~$ mysqldump old-database > old-database-dump.sql
 tgl@moto~$ sqlite3 -init old-database-dump.sql new-database

我自己还没有尝试过。

更新:

看来我们需要对MySQL转储进行一些编辑。我会用sed或者Google来做。

只是注释语法,auto_increment和TYPE =声明以及转义字符不同。

回答

我不得不做几次类似的事情。对我而言,最简单的方法是编写一个脚本,该脚本从一个数据源提取并为新数据源生成输出。只需对当前数据库中的每个表执行" SELECT *"查询,然后将所有行转储到新数据库的" INSERT INTO"查询中。我们既可以将其转储到文件中,也可以将其直接输送到数据库前端。

它不是很漂亮,但是说实话,对于这样的事情,它似乎几乎不是主要的关注点。这种技术写起来很快,并且行得通。这些是我对此类事情的主要标准。

我们可能也想签出此线程。看起来已经有几个人基本上将我们需要的东西放在一起了。不过,我的关注程度并不高,因此无法保证。