Compatibilidad con MySQL
es simple de agregar. En tus DATABASES
diccionario, tendrá una entrada como esta:
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',
}
}
También tiene la opción de utilizar MySQL archivos de opciones
, a partir de Django 1.7. Puede lograr esto configurando sus DATABASES
matriz así:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file': '/path/to/my.cnf',
},
}
}
También necesita crear el /path/to/my.cnf
archivo con configuraciones similares a las anteriores
[client]
database = DB_NAME
host = localhost
user = DB_USER
password = DB_PASSWORD
default-character-set = utf8
Con este nuevo método de conexión en Django 1.7, es importante saber el orden en que se establecen las conexiones:
1. OPTIONS.
2. NAME, USER, PASSWORD, HOST, PORT
3. MySQL option files.
En otras palabras, si establece el nombre de la base de datos en OPCIONES, tendrá prioridad sobre NOMBRE, que anularía cualquier cosa en un archivo de opciones de MySQL.
Si solo está probando su aplicación en su máquina local, puede usar
python manage.py runserver
Agregando el ip:port
El argumento permite que máquinas distintas a la suya accedan a su aplicación de desarrollo. Una vez que esté listo para implementar su aplicación, le recomiendo que consulte el capítulo sobre Implementación Django
en el djangobook
El conjunto de caracteres predeterminado de Mysql a menudo no es utf-8, por lo tanto, asegúrese de crear su base de datos usando este sql:
CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_bin
Si está utilizando Conector MySQL de Oracle tu ENGINE
la línea debería verse así:
'ENGINE': 'mysql.connector.django',
Tenga en cuenta que primero deberá instalar mysql en su sistema operativo.
brew install mysql (MacOS)
Además, el paquete del cliente mysql ha cambiado para python 3 (MySQL-Client
funciona solo para python 2)
pip3 install mysqlclient