Django项目中把原生sqlite数据迁移至mysql数据库

Sqlite数据库是django项目在pycharm中产生的原生数据库,里面会有许多数据,但有时我们想中途转换成mysql数据库,那我们先得把旧数据从sqlite导出,然后再导入到数据的mysql数据库中。

准备:本地己安装MySQL数据库;pycharm中己安装mysqlclient。

1、在mysql中生成数据表:

在setting.py中将数据库配置改为mysql的:

 

 

 

迁移数据库:python mange.py migrate

生成缓存表:python manage.py createcachetable

运行项目并查看启动情况:python manage.py runserver

 

 

2、还原setting.py的database为sqlite,把数据导出:

Sqlite导出数据

确保setting.py数据库配置里是sqlite配置:

 

 

 

 

然后在cmd命令行里输入:

python manage.py dumpdata > data.json

这样就将数据导出到django项目根目录下的data.json。

删除mysql中表django_content_type和auth_permission的所有数据,防止导入数据报错数据重复:

输入:delete from auth_permission;

Delete from django_content_type;

 

 

 

 

Mysql导入数据

在setting.py中将数据库配置改为mysql的:

 

 

 

 

 

然后在cmd命令行中输入:

python manage.py loaddata data.json

查看mysql数据库表,数据己成功导入

 

 

注意  不要忘记在项目的主路径__init__中  导入:

 

 

转至https://mp.weixin.qq.com/s?src=11&timestamp=1598533100&ver=2548&signature=-PzF-RGCsYcAPRwQjpAmpWTLFisPN2IaUgVSceeKGkBCore-9k5e3oI2TKPh8qcjFkxEcN9VRXHWDcfiItPCSDXGyJFrMwR67wL8fN2aLj4UNIxm0cCQzEz-woRLRb*4&new=1

 

posted @ 2020-08-27 21:20  小丞cc  阅读(554)  评论(0编辑  收藏  举报