【轉】把sqlite3數據導入到MySQL中


 

之前我們默認使用的是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的中文社區


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM