成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Django數(shù)據(jù)庫(kù)遷移常見(jiàn)使用方法

瀏覽:133日期:2024-09-19 13:39:28

1 數(shù)據(jù)導(dǎo)出 python manage.py dumpdata

不指定 appname 時(shí)默認(rèn)為導(dǎo)出所有的app

python manage.py dumpdata [appname] > appname_data.json

指定appnamde 導(dǎo)出 指定app 的數(shù)據(jù)(比如appname為cmdb)python manage.py dumpdata cmdb>cmdb.json

2. 數(shù)據(jù)導(dǎo)入python manage.py loaddata

不需要指定 appname

python manage.py loaddata blog_dump.json

優(yōu)點(diǎn):可以兼容各種支持的數(shù)據(jù)庫(kù),也就是說(shuō),以前用的是 SQLite3,可以導(dǎo)出后,用這種方法導(dǎo)入到 MySQL, PostgreSQL等數(shù)據(jù)庫(kù),反過(guò)來(lái)也可以。

缺點(diǎn):數(shù)據(jù)量大的時(shí)候,速度相對(duì)較慢,表的關(guān)系比較復(fù)雜的時(shí)候可能導(dǎo)入不成功。

個(gè)人推薦導(dǎo)入數(shù)據(jù)做法:

1 將APP的migrations目錄下,只保留__init__.py文件,其余文件全部清空;

重置文件

python manage.py migrate --fake cmdb zero # cmdb是app的名稱(chēng)

刪除migrations的處init.py的其他文件

2 然后分別執(zhí)行:python manage.py makemigrations 和 python3 manage.py migrate;

3 最后導(dǎo)入數(shù)據(jù):python manage.py loaddata blog_dump.json

以上做法,能夠增加數(shù)據(jù)導(dǎo)入的成功率。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Django
相關(guān)文章: