Mysql
 sql >> база данни >  >> RDS >> Mysql

Настройване на Django да използва MySQL

Поддръжка на MySQL е лесно да се добави. Във вашите DATABASES речник, ще имате запис като този:

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',
    }
}

Също така имате възможност да използвате MySQL файлове с опции , от Django 1.7. Можете да постигнете това, като зададете вашите DATABASES масив така:

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

Вие също трябва да създадете /path/to/my.cnf файл с подобни настройки отгоре

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

С този нов метод за свързване в Django 1.7 е важно да знаете реда, в който връзките са установени:

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

С други думи, ако зададете името на базата данни в OPTIONS, това ще има предимство пред NAME, което ще отмени всичко във файл с опции на MySQL.

Ако просто тествате приложението си на локалната си машина, можете да използвате

python manage.py runserver

Добавяне на ip:port argument позволява на машини, различни от вашата, да имат достъп до вашето приложение за разработка. След като сте готови да внедрите приложението си, препоръчвам да разгледате главата за Внедряване Джанго в djangobook

Наборът от символи по подразбиране на Mysql често не е utf-8, затова не забравяйте да създадете вашата база данни с помощта на този sql:

CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_bin

Ако използвате MySQL конектора на Oracle вашият ENGINE ред трябва да изглежда така:

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

Имайте предвид, че първо ще трябва да инсталирате mysql на вашата ОС.

brew install mysql (MacOS)

Също така, клиентският пакет mysql се промени за python 3 (MySQL-Client работи само за python 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. Как да изградите неограничено ниво на меню чрез PHP и mysql

  2. Алтернативи на MySQL Workbench - ClusterControl Configuration Management

  3. Как да получите няколко броя с една SQL заявка?

  4. MySQL Cross Server Select Query

  5. Създаване на високодостъпна база данни за Moodle с помощта на MySQL репликация