如何在阿里雲上部署django網站(2)——使用MySQL資料庫
阿新 • • 發佈:2019-01-02
如果要在阿里雲上部署django網站,建議不要使用django自帶的sqlite,雖然一時省事,但帶來了很多其他的麻煩。建議使用MySQL或者PostgreSQL。由於MySQL比較流行,我就選擇了MySQL。
安裝MySQL
在使用MySQL之前,首先需要安裝。在ubuntu系統下,輸入以下命令:
sudo apt-get install mysql-server
sudo apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev
安裝過程中會提示設定密碼,安裝完成之後可以使用如下命令來檢查是否安裝成功:
sudo netstat -tap | grep mysql
通過上述命令檢查之後,如果看到有mysql 的socket處於 listen 狀態則表示安裝成功。
登陸mysql資料庫可以通過如下命令:
mysql -u root -p
-u 表示選擇登陸的使用者名稱, -p 表示登陸的使用者密碼,上面命令輸入之後會提示輸入密碼,此時輸入密碼就可以登入到MySQL。
隨後新建database,在命令列中輸入:
create database database_name;
就完成了名為database_name的資料庫的建立。
讓MySQL支援python
mysql是支援python3的(備註:目前,mysqldb尚不支援python3.x,只支援python2.x。若使用python2.x,建議安裝mysqldb)。如果不安裝python3的mysql庫,則會報錯。安裝mysql庫的方法為:
sudo apt-get install python3-pymysql
修改django中database的設定
最初新建django網站時,資料庫預設採用的是sqlite,在setting.py檔案中,相關語句為:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
將以上語句替代為:
DATABASES = {
'default' : {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'data_base_name',
'USER':'user_name',
'PASSWORD':'password',
'HOST':'127.0.0.1',
'PORT':3306,
}
}
注意此處的PORT,需要設定為3306,否則有可能會報錯。
重新設定完資料庫後,在manage.py所在的目錄下,使用命令終端輸入:
python3 manage.py migrate
完成後,再輸入:
python3 manage.py runserver 8000
就將sqlite資料庫更改為MySQL資料庫了。