我需要将我在SQLite3中创建的信息迁移到我网站上的MySQL数据库中。该网站位于托管服务器上。我可以远程访问MySQL数据库。我最初认为这很容易,但我没有找到任何好的信息,我读到的一切似乎暗示你需要转储SQLite3文件,使用凌乱的脚本将其转换为MySQL转储文件,然后导入它进入MySQL。
(例如:Quick easy way to migrate SQLite3 to MySQL?)
我的问题:阅读它并将其直接从脚本导入MySQL是不是更好。我根本没有使用过Python的MySQL,但是看起来很直观,没有什么步骤可以让你错过阅读。我还想通过不必了解MySQL转储文件的工作方式来节省一点时间。
如果你有一个脚本(Python,如果可能的话),工具或链接将帮助我,这将是伟大的,但我首先关注的是如何去做。我无法现实地检查所有内容(否则我只会复制和粘贴),所以我想确保我以正确的方式进行检查。
我正在使用Django,也许有一个Django特定的方法,但我找不到。
答案 0 :(得分:2)
需要“杂乱”脚本的原因是它通常是一个难以解决的问题。
如果幸运的话,数据库之间的架构不兼容性不会太多。
这些可能会有所帮助
db_dump.py
dbpickle.py
What is your favorite solution for managing database migrations in django?
答案 1 :(得分:2)
您是否尝试过使用django-admin的dumpdata和loaddata?
e.g。 dump sqllite3 db
manage.py dumpdata
将db更改为mysql,重新创建表并加载
manage.py loaddata mydata.json
默认情况下,dumpdata会转储json,但您也可以将格式设置为xml。
或者,您可以使用python db api或sqlalchemy或django ORM读取整个sqlite3数据库并将其转储到MySQL数据库。