之前我們默認使用的是SQLite數據庫,我們開發完成之后,里面有許多數據。如果我們想轉換成Mysql數據庫,那我們先得把舊數據從SQLite導出,然后再導入到新的Mysql數據庫里去。
1、SQLite導出數據
導出之前,我們先確保settins.py數據庫配置選項那里,還是使用的是SQLite配置,如果已經修改了,請先修改回來:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
然后在CMD命令行里輸入:
python manage.py dumpdata > data.json
這樣就將數據導出到Django項目根目錄下的data.json文件。
2、MySQL導入數據
同樣,先將Django的數據庫配置改為MySQL的:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '你的數據庫名', 'USER': '你的MySQL用戶名', 'PASSWORD': '你的密碼', 'HOST': 'localhost', 'PORT': '3306', } }
然后在CMD命令行里輸入:
python manage.py loaddata data.json
注意:
確保Mysql用戶表里為空的,如果之前有遷移過數據到Mysql,有可能會出錯。注意出錯的時候所報的錯誤信息。如果提示有重復主鍵,那需要先刪掉數據。這些數據是在給MySQL數據庫應用遷移文件的時候產生的,一般是content_type相關的表。
自己備份,待查!
轉自:https://www.django.cn/article/show-17.html
Django的中文社區