Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Konfigurowanie Django do korzystania z MySQL

Obsługa MySQL jest proste do dodania. W Twoich DATABASES słownika, będziesz miał taki wpis:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'DB_NAME',
        'USER': 'DB_USER',
        'PASSWORD': 'DB_PASSWORD',
        'HOST': 'localhost',   # Or an IP Address that your DB is hosted on
        'PORT': '3306',
    }
}

Masz również możliwość korzystania z MySQL pliki opcji , począwszy od Django 1.7. Możesz to osiągnąć, ustawiając swoje DATABASES tablica tak:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {
            'read_default_file': '/path/to/my.cnf',
        },
    }
}

Musisz także utworzyć /path/to/my.cnf plik z podobnymi ustawieniami z góry

[client]
database = DB_NAME
host = localhost
user = DB_USER
password = DB_PASSWORD
default-character-set = utf8

Dzięki tej nowej metodzie łączenia w Django 1.7 ważne jest, aby wiedzieć, że połączenia są ustanawiane:

1. OPTIONS.
2. NAME, USER, PASSWORD, HOST, PORT
3. MySQL option files.

Innymi słowy, jeśli ustawisz nazwę bazy danych w OPTIONS, będzie ona miała pierwszeństwo przed NAZWA, która zastąpi wszystko w pliku opcji MySQL.

Jeśli tylko testujesz swoją aplikację na komputerze lokalnym, możesz użyć

python manage.py runserver

Dodawanie ip:port Argument umożliwia maszynom innym niż własne dostęp do aplikacji deweloperskiej. Gdy będziesz gotowy do wdrożenia swojej aplikacji, polecam zapoznać się z rozdziałem Wdrażanie Django na djangobook

Domyślny zestaw znaków Mysql często nie jest utf-8, dlatego upewnij się, że tworzysz bazę danych za pomocą tego sql:

CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_bin

Jeśli używasz konektora MySQL Oracle Twój ENGINE linia powinna wyglądać tak:

'ENGINE': 'mysql.connector.django',

Pamiętaj, że najpierw musisz zainstalować mysql na swoim systemie operacyjnym.

brew install mysql (MacOS)

Również pakiet klienta mysql został zmieniony dla Pythona 3 (MySQL-Client działa tylko dla Pythona 2)

pip3 install mysqlclient


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Maksymalna długość MySQL i GROUP_CONCAT()

  2. CROSS/OUTER APPLY w MySQL

  3. Jak połączyć się z bazą danych MySQL lub MariaDB

  4. Przewodnik po projektowaniu bazy danych do quizu w MySQL

  5. Zdalne połączenie MySQL nie powiodło się z nieznaną metodą uwierzytelniania