最近项目需要将sqlite3转化为mysql,找了几种方案,发现大多有些陈旧。
后面看到这个,试验也成功了。
Django Sqlite3 数据库向MySQL迁移
具体用到
django-admin and manage.py
步骤也很简单,按照链接的教程直接跑就可以了。
但不确保这个方法对任何的转化都适用,可能得确保原本的数据继承逻辑不会出错。
不过django版本升级后,syncdb被migrate取消,新版本用以下命令语句:
# 将数据库字段迁移
python manage.py migrate --database slave
总体来讲,这种迁移法就是:
- 1.建立新的要迁移的数据库;
CREATE DATABASE;
- 2.将数据字段迁移;
python manage.py migrate --database slave
- 3.将数据转化为中间格式,如json;
python manage.py dumpdata > data.json
- 4.切换数据库,将数据导入新的数据库;
python manage.py loaddata data.json
假如出现问题数据导入问题的话,可以考虑部分导出,然后分批次导入
python manage.py dumpdata app.model > data.json