使用sqlite3固然比較方便,但是也帶來了諸多不便。我用三臺機器(還有一臺服務器)進行開發,每次都得用git同步數據庫數據,實在太不方便了,於是我要把它轉移到mysql下,用雲端數據庫(騰訊雲數據庫)保存信息。
有很多注意事項,要一一注意
切換數據庫
在settings.py中進行如下改動
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),這一段註釋掉,不用sqlite3了
'NAME': 'djangosite_wangxiong',
'USER': 'root',
'PASSWORD': 'XXXXXX',
'HOST': 'XXXXXXXXXXXXX.tencentcdb.com',
'PORT': XXX,
}
}
直接python manage.py makemigrations大概率會報錯!因爲沒有mysqlclient
安裝mysqlclient
之前我用FLASK搭建網站時候,是用的pymysql.install_as_MySQLdb()
但是在這裏,我行不通了,提示版本過低,乾脆我直接裝一個mysqlclient好了。
csdn找的資源,有一個“mysqlclient-1.3.13各種版本”,鏈接找不到了……搜一下吧
然後用whl的方式安裝。
設置mysqlclient
在mysite/init.py增加如下代碼
import MySQLdb
完成數據庫配置
python manage.py makemigrations
python mange.py magrate
數據遷移
導出原數據
python manage.py dumpdata > data.json
導入雲端數據庫
python manage.py loaddata data.json
總結
soeasy,完成任務,以後不用再煩數據庫了,數據都在雲端。也方便我個人了。