HOWTO · Django

將 Django 連線到 MySQL 資料庫

瞭解如何將 Django 連線到 MySQL 資料庫

本頁內容

使用資料庫時,列表中有很多選項。我們可以選擇關係型資料庫或 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 進行所需的遷移以完成設定。