Django数据库迁移常见使用方法
作者:yoyo008 时间:2024-01-17 09:57:26
1 数据导出 python manage.py dumpdata
不指定 appname 时默认为导出所有的app
python manage.py dumpdata [appname] > appname_data.json
指定appnamde 导出 指定app 的数据(比如appname为cmdb)
python manage.py dumpdata cmdb>cmdb.json
2. 数据导入python manage.py loaddata
不需要指定 appname
python manage.py loaddata blog_dump.json
优点:可以兼容各种支持的数据库,也就是说,以前用的是 SQLite3,可以导出后,用这种方法导入到 MySQL, PostgreSQL等数据库,反过来也可以。
缺点:数据量大的时候,速度相对较慢,表的关系比较复杂的时候可能导入不成功。
个人推荐导入数据做法:
1 将APP的migrations目录下,只保留__init__.py文件,其余文件全部清空;
重置文件
python manage.py migrate --fake cmdb zero # cmdb是app的名称
删除migrations的处init.py的其他文件
2 然后分别执行:python manage.py makemigrations 和 python3 manage.py migrate;
3 最后导入数据:python manage.py loaddata blog_dump.json
以上做法,能够增加数据导入的成功率。
来源:https://www.cnblogs.com/yoyo008/p/13203517.html
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python实现提取XML内容并保存到Excel中的方法
![](https://img.aspxhome.com/file/2023/7/90317_0s.png)
详解Python核心编程中的浅拷贝与深拷贝
![](https://img.aspxhome.com/file/2023/2/104942_0s.png)
pycharm重命名文件的方法步骤
![](https://img.aspxhome.com/file/2023/7/128337_0s.png)
Python+matplotlib调用随机函数生成变化图形
![](https://img.aspxhome.com/file/2023/3/111853_0s.png)
MySQL 8.0.29 解压版安装配置方法图文教程
![](https://img.aspxhome.com/file/2023/1/104411_0s.jpg)
python re的findall和finditer的区别详解
MySql 备忘录
Python Selenium异常处理的实例分析
特效代码:弹出一个淡入淡出的提示框
oracle 常用的几个SQL
Python调用C语言的方法【基于ctypes模块】
Matplotlib中%matplotlib inline如何使用
![](https://img.aspxhome.com/file/2023/4/89314_0s.png)
QingScan扫描器安装、使用小结
![](https://img.aspxhome.com/file/2023/9/131829_0s.jpg)
python开发之Docker入门安装部署教程
![](https://img.aspxhome.com/file/2023/7/121457_0s.png)
最新Linux系统下安装MySql 5.7.17全过程及注意事项
使用PyTorch实现随机搜索策略
![](https://img.aspxhome.com/file/2023/4/75864_0s.png)