將 Django 連線到 MySQL 資料庫
Vaibhav Vaibhav
2023年1月30日
使用資料庫時,列表中有很多選項。我們可以選擇關係型資料庫或 SQL 資料庫(如 MySQL、PostgreSQL、SQL Server、SQLite、MariaDB)和非關係型資料庫或非 SQL 資料庫(如 MongoDB 和 Redis Couchbase)。
由於 Django 是一個成熟的強大 Web 框架,它幾乎與所有資料庫相容。我們可能需要做一些額外的工作,或者可能需要為特定資料庫使用一些外掛或應用程式,但 Django 官方支援 PostgreSQL、MariaDB、MySQL、Oracle 和 SQLite。
這篇文章講的是如何連線 MySQL 到 Django。
MySQL 與 Django 連線的初始設定
在繼續進行連線設定之前,請確保你的系統上已設定 MySQL。確保你建立了一個帳戶並建立了要連線的資料庫。
此外,你還需要一個 MySQL 客戶端來使用 Python(3.X 版本)與資料庫進行互動。
可以使用以下 pip
命令下載 MySQL 客戶端。
pip install mysqlclient
或者,
pip3 install mysqlclient
Django MySQL 連線設定
預設情況下,Django 使用 SQLite 資料庫。相同的連線設定如下所示。
DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": BASE_DIR / "db.sqlite3",
}
}
要將 Django 連線到 MySQL 資料庫,我們必須使用以下設定。
DATABASES = {
"default": {
"ENGINE": "django.db.backends.mysql",
"NAME": "databaseName",
"USER": "databaseUser",
"PASSWORD": "databasePassword",
"HOST": "localhost",
"PORT": "portNumber",
}
}
MySQL 資料庫的 ENGINE
鍵各不相同。除此之外,還有一些額外的鍵,如 USER
、PASSWORD
、HOST
和 PORT
。
NAME |
該鍵儲存你的 MySQL 資料庫的名稱。 |
USER |
此鍵儲存你的 MySQL 帳戶的使用者名稱,將使用該使用者名稱連線 MySQL 資料庫。 |
PASSWORD |
此鍵儲存該 MySQL 帳戶的密碼。 |
HOST |
此鍵儲存託管 MySQL 資料庫的 IP 地址。 |
PORT |
此鍵儲存託管 MySQL 資料庫的埠號。 |
最後,使用 python manage.py makemigrations
和 python manage.py migrate
進行所需的遷移以完成設定。
作者: Vaibhav Vaibhav