[PYTHON] Erste Schritte mit Django: 4_MySQL-Integration

Inhaltsverzeichnis

Django Start: 1_Environment Construction Django Start: 2_Create Project Django-Start: 3_Apache-Integration Django-Start: 4_MySQL-Integration

Letztes Mal war ich bereit, ein Projekt zu veröffentlichen, das mit Django in Zusammenarbeit mit Apache erstellt wurde. Wir werden die Umgebung weiter aufbauen, ohne das eigentliche Programm zu schreiben. Ändern Sie diesmal die DB-Einstellungen.

Django verwendet standardmäßig SQLite. Es hat zwar den Vorteil, dass ein Projekt sehr einfach gestartet werden kann (keine Einstellungen erforderlich). Wenn Sie später auf MySQL migrieren, wird dies mehr Zeit und Mühe kosten. Lassen Sie uns zuerst die schmerzhaften Dinge tun.

Wovon ich bei der Migration der Django-Datenbank von sqlite3 nach MySQL süchtig war

Vor allem, weil ich vorhabe, Textanalysen durchzuführen, habe ich irgendwo gelesen, dass SQLite nicht für die Verarbeitung großer Datenmengen geeignet ist, und habe mich daher entschlossen, die Einstellung zu ändern. Außerdem war ich an MySQL gewöhnt.

Ich konnte keinen guten Artikel über den Unterschied zwischen SQLite und MySQL finden, daher würde ich mich freuen, wenn Sie einen guten Artikel oder ein gutes Buch vorstellen könnten. Es ist leicht, aber hier ist der Unterschied. Liste der Datenbankverwaltungssysteme, die mit Mietservern verwendet werden können

Umgebung

MariaDB Installation

yum install mariadb mariadb-server mariadb-devel

Einstellungsdatei bearbeiten

Öffnen Sie die MySQL-Konfigurationsdatei. Geben Sie beim Umgang mit Japanisch den Zeichencode an.

vi /etc/my.cnf

Fügen Sie unter [mysqld] Folgendes hinzu

character-set-server = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

Darüber hinaus das folgende vollständige Nachskript

[client]
default-character-set = utf8

Lassen Sie uns neu starten, damit die Einstellungen wirksam werden.

systemctl start mariadb
systemctl enable mariadb

Grundeinstellung

Mir werden verschiedene Fragen gestellt, also werde ich antworten.

mysql_secure_installation
Enter current password for root (enter for none):  #Die Standardeinstellung ist leer. Drücken Sie einfach die Eingabetaste
Set root password? [Y/n] y
New password: #Beliebiges Passwort
Re-enter new password:: #Passwort Bestätigung

Alle nachfolgenden Fragen sind mit "y" in Ordnung.

Führen Sie MySQL mit einem Passwort aus.

$ mysql -u root -p
Enter password: #Geben Sie das zuvor festgelegte Passwort ein
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 789
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Jetzt erstellen wir eine Datenbank für Django.

MariaDB [(none)]> create database xxx;
MariaDB [(none)]> exit;

Damit sind die Einstellungen auf der DB-Seite abgeschlossen. Lassen Sie Django danach diese Datenbank erkennen.

Django-Einstellungen

Öffnen Sie die Einstellungsdatei.

vi settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'xxx',  #DB-Name früher erstellt
        'USER': 'root',  #MySQL-Benutzername (root ist aus Sicherheitsgründen NG, ändern Sie entsprechend)
        'PASSWORD': 'pass',  #MySQL-Passwort
        'HOST': '',  #Host-IP
        'PORT': '',  #Hafen
    }
}

...

TIME_ZONE = 'Asia/Tokyo'

HOST und PORT können leer sein, wenn Sie den Standardport in der Datenbank des lokalen Hosts verwenden.

Fügen Sie ein Modul hinzu

pip install PyMySQL

Weist an, das zu manage.py hinzugefügte Modul zu verwenden.

vi manage.py 
import pymysql
pymysql.install_as_MySQLdb()

Lassen Sie uns eine Migration erstellen und ausführen.

python manage.py makemigrations
python manage.py migrate

Referenz

Mit Python3 + Django eine Verbindung zu MySQL herstellen

Recommended Posts

Erste Schritte mit Django: 4_MySQL-Integration
Erste Schritte mit Django: 3_Apache-Integration
Erste Schritte mit Django 1
Erste Schritte mit Django 2
Erste Schritte mit Django Teil 3 über Python3 und MySQL Connector
Django Erste Schritte: 2_ Erstellen eines Projekts
Django Erste Schritte: 1_Umgebungsgebäude
Erste Schritte mit Python Django (1)
Erste Schritte mit Python Django (4)
Erste Schritte mit Python Django (3)
Einführung in Python Django (6)
Erste Schritte mit Django mit PyCharm
Erste Schritte mit Python Django (5)
Django + MySQL-Einstellungen
Grale fangen an
Django Erste Schritte Teil 2 mit dem Eclipse Plugin (PyDev)
Erste Schritte mit Android!
Erste Schritte mit apache2
Erste Schritte mit Python
Einführung in die Optimierung
Erste Schritte mit Numpy
Erste Schritte mit Spark
Erste Schritte mit Python
Verwenden Sie MySQL mit Django
Erste Schritte mit Pydantic
Erste Schritte mit Jython
Einführung in Python-Funktionen
Einführung in Tkinter 2: Button
Fangen Sie mit Django an! ~ Tutorial ⑤ ~
Erste Schritte mit Go Assembly
[Linux] [Grundeinstellung] Einführung
Erste Schritte mit PKI mit Golang ―― 4
Fangen Sie mit Django an! ~ Tutorial ④ ~
Erste Schritte und Verwendung von auf Klassenklassen basierenden generischen Ansichten in Django
Fangen Sie mit Django an! ~ Tutorial ⑥ ~
Erste Schritte mit Heroku-Viewing Hello World in Python Django mit Raspberry PI 3
Erste Schritte mit Python Responder v2
Einführung in Git (1) History-Speicher
Erste Schritte mit Sphinx. Generieren Sie Docstring mit Sphinx
Erste Schritte mit Python-Webanwendungen
Erste Schritte mit Python für PHPer-Klassen
Erste Schritte mit Docker Apache Hadoop
Erste Schritte mit Sparse Matrix mit scipy.sparse
Erste Schritte mit Julia für Pythonista
Erste Schritte mit Python Grundlagen von Python
Wie fange ich mit Django an?
Erste Schritte mit der Cisco Spark REST-API
Beginnend mit USD unter Windows
Erste Schritte mit genetischen Python-Algorithmen
Erste Schritte mit Python 3.8 unter Windows
Erste Schritte mit Python für PHPer-Funktionen
Verwenden Sie Unicode 6.0-Piktogramme mit Django / MySQL
Erste Schritte mit der CPU-Diebstahlzeit