Heim  >  Artikel  >  Backend-Entwicklung  >  So ändern Sie die Standarddatenbank in Django auf MySQL (detaillierter Prozess)

So ändern Sie die Standarddatenbank in Django auf MySQL (detaillierter Prozess)

不言
不言nach vorne
2018-12-04 17:24:283431Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Änderung der Standarddatenbank in Django (detaillierter Prozess). Ich hoffe, dass er für Sie hilfreich ist.

Django verwendet standardmäßig die SQLite3-Datenbank. Heute habe ich untersucht, wie man sie durch die gängige MySQL-Datenbank ersetzt.

Da das Projekt Python3 verwendet und MySQLdb keine Version hat, die Python3 unterstützt, wird bei der pip-Installation von MySQLdb ein Fehler gemeldet, wenn Sie die Version python3.x verwenden.

Später habe ich über Google herausgefunden, dass pymysql anstelle von MySQLdb verwendet werden kann

1 Fügen Sie den folgenden Code zur Datei __init__.py im Projektstammverzeichnis hinzu:

import pymysql
pymysql.install_as_MySQLdb()

2 Verwenden Sie mysqlclient anstelle von MySQLdb. Die Installationsmethode lautet:

pip install mysqlclient

3 Ändern Sie die Datenbankkonfiguration im Projekt Setting.py in:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'test',
        'USER': 'username',
        'PASSWORD': 'passwd',
        'HOST': 'localhost',
        'PORT': '3306'
    }
}

4 Abschließend über den Python-Befehl manage.py migrate: Django erstellt automatisch die entsprechende Datenbank in der Datenbanktabelle

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, polls, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying polls.0001_initial... OK
  Applying sessions.0001_initial... OK

5 Beim Erstellen des Admin-Benutzers ist der folgende Fehler aufgetreten

python manage.py createsuperuser
Superuser creation skipped due to not running in a TTY. You can run `manage.py createsuperuser` in your project to create one manually.

Später habe ich nachgesehen und festgestellt, dass es daran lag, dass ich Git verwendet habe Führen Sie den Befehl aus und wechseln Sie zur Windows-Befehlszeile. Dieses Problem kann gelöst werden!

Das obige ist der detaillierte Inhalt vonSo ändern Sie die Standarddatenbank in Django auf MySQL (detaillierter Prozess). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen