Ich habe kürzlich bei der Entwicklung eines Projekts die MySql-Datenbank verwendet. Nachdem ich einige Artikel über MySql gelesen hatte, begann ich schnell damit, sie zu verwenden. Bei der Verwendung treten immer noch einige Probleme auf. Da die grüne, kostenlose Installationsversion von MySql verwendet wird, treten bei der Konfiguration einige Probleme auf. In diesem Artikel wird hauptsächlich die Konfiguration und Verwendung der grünen Version von MySql erläutert. 1. MySQL-Übersicht Die MySql-Datenbank wurde von der schwedischen Firma MySql AB entwickelt, die mittlerweile von Oracle übernommen wurde und im Besitz von Oracle ist. Ähnlich wie SQL Server handelt es sich auch hier um ein Datenbankverwaltungssystem, das auf einer relationalen Datenbank basiert. In Bezug auf Webanwendungen ist MySQL eines der besten RDBMS, da es ein leichtes RDBMS ist. Die neueste Version von MySql ist 5.6.17. Die neueste Download-Adresse lautet: http://dev.mysql.com/downloads/mysql/. Nach Abschluss des Downloads besteht der nächste Schritt darin, es zu installieren und bereitzustellen. Informationen zur Installation und Bereitstellung finden Sie im Online-Tutorial. 2. MySql-Konfiguration Da MySql auf SQL basiert, enthält es grundlegende DML, DDL und DAL. Diese grundlegenden Datenbanksprachen sind sehr einfach zu verwenden. Darüber hinaus kapselt MySql auch viele Datenbankbetriebsbefehle, die im DOS-System ausgeführt werden. Dies ist der Unterschied zwischen MySql und SQL Server. Die MySql-Umgebung basiert auf dem DOS-System und erfordert die Verwendung von DOS-Befehlen. Es ist Java etwas ähnlich. Man kann sagen, dass es auch auf einer virtuellen Maschine basiert, die einmal erstellt und überall verwendet werden kann. Um den MySql-Befehl bequem verwenden zu können, müssen einige Voraussetzungen eingerichtet werden. Die Einstellungsmethode ähnelt den Java-Umgebungsvariablen. Die folgende Methode verwendet die nicht installierte Version von MySql als Beispiel, um die Konfigurationsmethode zu demonstrieren. 1. MySql-Umgebungskonfiguration Indem Sie den MySQL-Dekomprimierungspfad zur Systemvariablen konfigurieren, können Sie den MySQL-Befehl überall verwenden. Hinweis: Dies ist eine konfigurierte Systemvariable. Jeder Drittanbieterbefehl, der Konsolenbefehle verwendet, kann der Systemvariable hinzugefügt werden. Die Systemvariable fungiert als Link und wird bei der Verwendung von Befehlen zuerst durchsucht. 2. MySQL-Serverkonfiguration Nachdem Sie die Systemumgebungsvariablen konfiguriert haben, können Sie alle unter MySql Bin bereitgestellten Dienste nutzen. Als Nächstes müssen Sie MySQL im System installieren. 2.1 MySQL Server installieren Öffnen Sie das entpackte Dateiverzeichnis, suchen Sie die Datei mit der Endung .ini, kopieren Sie eine Kopie, benennen Sie sie in my.ini um und ersetzen Sie den ursprünglichen Inhalt durch den folgenden Inhalt. [mysqld] basedir=D:/Program Files (x86)/MySql # Legt das Installationsverzeichnis von MySQL fest datadir=D:/Program Files (x86)/MySql/data # Legt das Speicherverzeichnis der MySQL-Datenbankdaten fest, das data oder //xxx/data sein muss *************************Trennlinie******************** Port = 3306 Socket = /tmp/mysql.sock default-character-set=gbk # Setzt die Zeichensatz-Sperre des MySQL-Servers Schlüsselpuffer = 16K max_zulässiges_Paket = 1M Tabellencache = 4 Sortierpuffergröße = 64 KB Lesepuffergröße = 256 KB Read_Rnd_Buffer_Größe = 256 KB Nettopufferlänge = 2K Thread-Stapel = 64 KB [Kunde] #password = Ihr_Passwort Port = 3306 Socket = /tmp/mysql.sock Standardzeichensatz = gbk *************************Trennlinie******************** Hinweis: [mysqld] unter basedir und datadir muss auf den Pfad nach dem Entpacken der Datei gesetzt werden. Hier hat der Autor die Datei in D:\Program Files (x86)\MySql abgelegt. Darüber hinaus ist der Inhalt innerhalb der obigen Trennlinie optional und kann beim Erstellen der Datenbank zurückgesetzt werden. Es wird empfohlen, ihn beim Erstellen nicht hinzuzufügen, da es viele Unsicherheitsfaktoren gibt. In der Datei my.ini habe ich die folgenden ausführbaren Optionen konfiguriert: # Hinweise zum Ändern der Einstellungen finden Sie unter # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html # *** BEARBEITEN SIE DIESE DATEI NICHT. Es handelt sich um eine Vorlage, die in das # *** Standardspeicherort während der Installation und wird ersetzt, wenn Sie # *** Upgrade auf eine neuere Version von MySQL. [Kunde] #password = Ihr_Passwort Port = 3306 Socket = /tmp/mysql.sock Standardzeichensatz = UTF-8 [mysqld] Port = 3306 basedir="C:/Programme/Mysql" # Legen Sie das Installationsverzeichnis von MySQL fest datadir="C:/Programme/Mysql/data" # Legen Sie das Speicherverzeichnis der MySQL-Datenbankdaten fest. Es muss data oder //xxx/data sein. Standard-Speicher-Engine = INNODB # Die Standard-Speicher-Engine, die beim Erstellen neuer Tabellen verwendet wird Socket = /tmp/mysql.sock sql-mode="STRICT_TRANS_TABLES,KEIN_AUTO_CREATE_USER,KEIN_ENGINE_SUBSTITUTION" # Der SQL-Modus ist der strikte Modus #Standardzeichensatz=utf-8 # Stellen Sie den Zeichensatz des MySQL-Servers ein #Zeichensatzserver=utf-8 # Der vom Server verwendete Standardzeichensatz ist der 8-Bit-Latin1-Zeichensatz max_verbindungen=100 # Die maximale Anzahl gleichzeitiger Verbindungen (Anzahl der Benutzer), die vom MySQL-Server unterstützt werden. Allerdings bleibt immer eine Verbindung für den Administrator reserviert, damit er sich mit Superprivilegien anmelden kann, auch wenn die maximale Anzahl an Verbindungen erreicht ist. Ist dieser Wert zu klein eingestellt und es sind viele Benutzer vorhanden, tritt häufig der Fehler „Zu viele Verbindungen“ auf. query_cache_size=0 # Abfrage-Cache-Größe, wird zum Zwischenspeichern von SELECT-Abfrageergebnissen verwendet. Wenn viele SELECT-Abfragen dieselben Abfrageergebnisse zurückgeben und die Tabelle selten geändert wird, kann das Festlegen einer query_cache_size größer als 0 die Abfrageeffizienz erheblich verbessern. Wenn sich die Tabellendaten häufig ändern, verwenden Sie dies nicht, es ist kontraproduktiv #table_cache=256 # Dieser Parameter heißt in Versionen nach 5.1.3 table_open_cache und wird zum Festlegen der Anzahl der Tabellencaches verwendet. Da jede Clientverbindung auf mindestens eine Tabelle zugreift, hängt der Wert dieses Parameters mit max_connections zusammen. Wenn eine Verbindung auf eine Tabelle zugreift, überprüft MySQL die Anzahl der aktuell zwischengespeicherten Tabellen. Wenn die Tabelle im Cache geöffnet wurde, wird zur Beschleunigung der Abfrage direkt auf die im Cache vorhandene Tabelle zugegriffen, wenn die Tabelle nicht im Cache gespeichert ist, wird die aktuelle Tabelle dem Cache hinzugefügt und abgefragt. Vor dem Ausführen eines Cachevorgangs wird table_cache verwendet, um die maximale Anzahl zwischengespeicherter Tabellen zu begrenzen: Wenn die aktuell zwischengespeicherten Tabellen table_cache nicht erreichen, werden neue Tabellen hinzugefügt. Wenn dieser Wert erreicht wurde, gibt MySQL den vorherigen Cache basierend auf der letzten Abfragezeit, der Abfragerate und anderen Regeln der zwischengespeicherten Tabelle frei. tmp_table_size=34M # Die maximal zulässige Größe für jede temporäre Tabelle im Speicher. Wenn die Größe der temporären Tabelle diesen Wert überschreitet, wird die temporäre Tabelle automatisch in eine festplattenbasierte Tabelle konvertiert. Thread-Cache-Größe = 8 # Maximale Anzahl zwischenzuspeichernder Threads. Wenn eine Client-Verbindung getrennt wird und die Gesamtzahl der Client-Verbindungen kleiner als dieser Wert ist, wird der Thread, der die Client-Aufgabe verarbeitet, wieder in den Cache gestellt. Wenn dieser Wert in Situationen mit hoher Parallelität zu klein eingestellt wird, werden viele Threads häufig erstellt, der Overhead bei der Thread-Erstellung steigt und die Abfrageeffizienz nimmt ab. Generell lässt sich sagen, dass dieser Parameter die Leistung nicht wesentlich verbessert, wenn auf der Anwendungsseite eine gute Multithread-Verarbeitung erfolgt. #------------------------------MyISAM-bezogene Parameter beginnen------------------------------------------------ myisam_max_sort_file_size=100G # Die maximale Größe der temporären Dateien, die zulässig ist, wenn MySQL den Index neu erstellt myisam_sort_buffer_size=68M Schlüsselpuffergröße = 54 M # Schlüsselpuffergröße, die zum Zwischenspeichern von Indexblöcken von MyISAM-Tabellen verwendet wird. Bestimmt die Geschwindigkeit der Datenbankindexverarbeitung (insbesondere Indexlesevorgänge). Lesepuffergröße = 64 KB # Die Puffergröße, die für den vollständigen Tabellenscan der MyISAM-Tabelle verwendet wird. Die Zuweisung erfolgt pro Thread (vorausgesetzt, es wird ein vollständiger Tabellenscan durchgeführt). Wenn Sie eine Sortierabfrage ausführen, durchsucht MySql zuerst den Puffer, um Festplattensuchen zu vermeiden und die Abfragegeschwindigkeit zu erhöhen. Wenn eine große Datenmenge sortiert werden muss, kann dieser Wert entsprechend erhöht werden. MySql reserviert diesen Pufferspeicherplatz jedoch für jede Clientverbindung. Sie sollten daher versuchen, diesen Wert entsprechend einzustellen, um einen übermäßigen Speicheraufwand zu vermeiden. Read_Rnd_Buffer_Größe = 256 KB Sortierpuffergröße = 256 KB # Parameter auf Verbindungsebene (für jeden Thread konfiguriert), 500 Threads verbrauchen 500*256K der Sort_Buffer_Size. #------------------------------MyISAM-bezogene Parameterend------------------------------------------------ #-------------------------------# InnoDB-bezogene Parameter beginnen --------------------------------------- innodb_additional_mem_pool_size=3M # Die Größe des Speicherpools, der von InnoDB zum Speichern von Metadateninformationen verwendet wird. Im Allgemeinen ist keine Änderung erforderlich. innodb_flush_log_at_trx_commit = 1 # Transaktionsbezogene Parameter. Wenn der Wert 1 ist, schreibt InnoDB das Transaktionsprotokoll bei jedem Commit auf die Festplatte (was mehr Festplatten-E/A verbraucht) und stellt so vollständige ACID-Eigenschaften sicher. Wenn der Wert auf 0 gesetzt ist, bedeutet dies, dass die Häufigkeit des Schreibens von Transaktionsprotokollen in Speicherprotokolle und von Speicherprotokollen auf die Festplatte 1 Mal pro Sekunde beträgt. Wenn der Wert auf 2 gesetzt ist, bedeutet dies, dass das Transaktionsprotokoll bei jedem Commit in das Speicherprotokoll geschrieben wird, die Häufigkeit des Schreibens des Speicherprotokolls auf die Festplatte jedoch 1 Mal/Sekunde beträgt. innodb_log_buffer_size=2M # Die Größe des InnoDB-Protokolldatenpuffers. Wenn der Puffer voll ist, werden die Protokolldaten im Puffer auf die Festplatte geschrieben (flush). Da die Platte grundsätzlich mindestens einmal pro Sekunde beschrieben wird, besteht auch bei langen Transaktionen kein Grund, sie zu groß einzustellen. innodb_buffer_pool_size=105M # InnoDB verwendet einen Pufferpool zum Zwischenspeichern von Indizes und Zeilendaten. Je größer der Wert ist, desto weniger Festplatten-E/A ist erforderlich. Dieser Wert wird im Allgemeinen auf 80 % des physischen Speichers eingestellt. innodb_log_file_size=53M # Die Größe jedes InnoDB-Transaktionsprotokolls. Im Allgemeinen auf 25 % bis 100 % von innodb_buffer_pool_size eingestellt innodb_thread_concurrency=9 # Maximale Anzahl gleichzeitiger Threads im InnoDB-Kernel #-------------------------------# InnoDB-bezogene Parameterende --------------------------------------- Nachdem die Datei my.ini konfiguriert wurde, können Sie den mysqld-Dienst in cmd installieren. Führen Sie den Befehl in cmd aus: mysqld --install MySQL --defaults-file="D:\Program Files(x86)\MySql\my.ini", wobei MySQL der Name des Installationsservers ist und Sie einen beliebigen Namen angeben können. Nach Abschluss der Installation wird die folgende Meldung angezeigt: Dienst erfolgreich installiert, was bedeutet, dass die Installation erfolgreich war. Nach erfolgreicher Installation wird der Dienst zur Dienstgruppenrichtlinie des Systems hinzugefügt. Bei Verwendung müssen Sie ihn nur aktivieren. Hinweis: Beim Ausführen des Installationsbefehls müssen Sie auf das Pfadproblem in cmd achten. Der Pfad muss sich in dem Pfad befinden, in dem sich der Bin von MySQL befindet. Wenn ich beispielsweise MySQL in den Ordner D:\Program Files(x86)\MySql entpacke, muss der aktuelle Pfad von cmd D:\Program Files(x86)\MySql\bin sein. Andernfalls wird beim Starten des Dienstes nach Abschluss der Installation eine Fehlermeldung angezeigt: Systemfehler 2. Das System kann die angegebene Datei nicht finden. 2.2 Starten Sie den Server Starten Sie den MySQL-Server und führen Sie den Befehl in cmd aus: net start MySQL. 2.3 Stoppen Sie den Server Nach der Verwendung können Sie den Server stoppen, indem Sie in cmd den Befehl „net stop MySQL“ ausführen. 2.4 Zeigen Sie den Namen und das Passwort des Designservers an Der Standardname des neu installierten Servers lautet root und es gibt kein Passwort. Sie können den Namen und das Passwort über den cmd-Befehl festlegen. Der entsprechende Befehl lautet: mysql -u root . Darüber hinaus können Sie die Update-Anweisung in cmd verwenden, um das Root-Passwort zu ändern. Die spezifische Einstellungsmethode wird im folgenden Code gezeigt: 1. Fügen Sie dem Root-Benutzer das Passwort ab12 hinzu Rufen Sie in DOS zunächst das Verzeichnis mysql\bin auf und geben Sie dann den folgenden Befehl ein: mysqladmin -u root -p password ab12 . Hinweis: Da root am Anfang kein Passwort hat, kann der Eintrag -p altes Passwort weggelassen werden. 2. Ändern Sie das Root-Passwort in djg345: mysqladmin -u root -p ab12 password djg345 2.5 Entfernen des Dienstes: mysqld --remove MySQL Verwenden Sie den Befehl „Remove“, gefolgt vom Namen des zu entfernenden Datenbankdienstes. 3. Allgemeine MySQL-Befehle 3.1 Verbindungsdienst Hier werden zwei Verbindungsmethoden vorgestellt: lokale Verbindung und Remote-Verbindung. 3.1.1 Lokale Verbindung Geben Sie in cmd den Befehl ein und führen Sie ihn aus: mysql -u root -p. Geben Sie anschließend das entsprechende Kennwort ein. Beachten Sie, dass zwischen -u und dem Benutzernamen kein Leerzeichen stehen darf, d. h. -uroot ist auch korrekt, aber zwischen dem Passwort und -p muss ein Leerzeichen stehen. Wenn MySQL gerade erst installiert wurde, hat der standardmäßige Root-Benutzername kein Passwort. Sie können MySQL aufrufen, indem Sie direkt mysql -u root eingeben. Die Eingabeaufforderung von MySQL lautet: mysql>. 3.1.2 Remote-Verbindung Angenommen, die IP-Adresse des Remote-Hosts lautet 219.243.79.8, der Benutzername ist root und das Kennwort ist 123. Führen Sie dann den folgenden Befehl in cmd aus: mysql -h219.243.79.8 -uroot -p 123. 3.1.3 MySQL beenden-Befehl: exit 3.2 Neue Benutzer hinzufügen 3.2.1 Super User Fügen Sie einen Benutzer test1 mit dem Kennwort abc hinzu, damit er sich auf jedem Host anmelden kann und die Berechtigungen zum Abfragen, Einfügen, Ändern und Löschen aller Datenbanken hat. Melden Sie sich zunächst als Root-Benutzer bei MySQL an und geben Sie dann den folgenden Befehl ein: gewähre select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identifiziert durch „abc“; Das Hinzufügen von Benutzern ist jedoch sehr gefährlich. Wenn jemand das Passwort von test1 kennt, kann er sich von jedem Computer im Internet aus in Ihre MySQL-Datenbank einloggen und mit Ihren Daten machen, was er will. Die Lösung finden Sie unter 2. 3.2.2 Lokaler Benutzer Fügen Sie einen Benutzer test2 mit dem Kennwort abc hinzu, damit er sich nur bei localhost anmelden und die Datenbank mydb abfragen, einfügen, ändern und löschen kann (localhost bezieht sich auf den lokalen Host, d. h. den Host, auf dem sich die MySQL-Datenbank befindet). Selbst wenn der Benutzer das Kennwort von test2 kennt, kann er daher nicht direkt über das Internet auf die Datenbank zugreifen, sondern nur über die Webseite auf dem MySQL-Host. Gewähren Sie Select, Insert, Update und Delete auf mydb.* an [email=test2@localhost]test2@localhost[/email], identifiziert durch „abc“. Wenn Sie nicht möchten, dass test2 ein Kennwort hat, können Sie einen anderen Befehl eingeben, um das Kennwort zu löschen. gewähre Select, Insert, Update, Delete auf mydb.* an [email=test2@localhost]test2@localhost[/email], gekennzeichnet durch „“; 3.3 Befehl anzeigen Der Befehl „show“ bedeutet „anzeigen“ und kann zum Anzeigen einiger Listeninformationen in MySql verwendet werden, z. B.: „show databases“ zeigt die Namen aller Datenbanken an; „show tables“ zeigt die Namen aller Tabellen in einer Datenbank an. 3.4 Betriebsdatenbank Vor der Operation müssen Sie die entsprechende Datenbank aufrufen. Sie können den Befehl use verwenden, z. B.: use testdb, um die Datenbank mit dem Namen testdb aufzurufen. Nachdem Sie die Datenbank aufgerufen haben, können Sie die Objekte in der Datenbank bearbeiten. Die entsprechenden Operationsbefehle verwenden SQL-Anweisungen, DDL, DML und DAL. 3.4.1 Datenbankinhalt anzeigen 1. Zeigen Sie die Feldinformationen einer Tabelle in der Datenbank an: desc Tabellenname; 2. Zeigen Sie die Erstellungsanweisung der Datenbanktabelle an: „show create table table name“ (Tabellenname erstellen); natürlich kann dieselbe Methode auch zum Anzeigen der SQL-Anweisungen zum Erstellen anderer Inhalte verwendet werden, z. B. zum Anzeigen der Erstellungsanweisung der Datenbank, „show create database database name“ (Datenbank erstellen). 3.4.2 Spaltentyp und -namen in der Tabelle ändern (1) Ändern Sie nur den Spaltentyp Tabelle ändern Datenbankname.Tabellenname Spalte ändern Spaltenname Datentyp, zum Beispiel: Die Spalte „Geschlecht“ der Tabelle „t_animal“ in den Booleschen Typ ändern: Tabelle ändern t_animal Geschlecht ändern Boolean nicht null Tabelle ändern t_animal Spalte ändern Geschlecht ani_sex Boolean nicht null Dieser Artikel bietet eine vorläufige Zusammenfassung der Konfiguration und Verwendung von MySql. Es gibt noch viel Inhalt zu MySql, der sich während der Verwendung langsam ansammelt. Dieser Artikel wird von Zeit zu Zeit neuen Inhalt hinzufügen, der hauptsächlich entsprechend der Situation im Entwicklungsprozess aktualisiert wird. Der Autor hat alle Befehle im Artikel getestet. Wenn Fehler vorhanden sind, weisen Sie ihn bitte darauf hin, damit wir voneinander lernen können. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung von JavaScript Promise und Async/Await
>>: So kompilieren und installieren Sie OpenCV unter Ubuntu
Anfänger können HTML lernen, indem sie einige HTM...
Inhaltsverzeichnis Hierarchie des Tomcat-Klassenl...
Im Test wurde festgestellt, dass wenn die Seitende...
Dieser Artikel verwendet die Lizenzvereinbarung „...
Ich erwarte nicht, ein erfahrener Datenbankadmini...
Wenn Sie den Docker-Container nach dem Betreten d...
1 Frage Der Server des Unternehmens verwendet Apa...
Informationen zu MySQL-Vorgängen abfragen Status ...
Gemeinsamkeiten: Das DIV-Tag und das SPAN-Tag beh...
Obwohl das W3C einige Standards für HTML festgeleg...
Dieser Artikel beschreibt die Linux-Dateiverwaltu...
Inhaltsverzeichnis 1. Vorbereitung 1. Bereiten Si...
Hintergrund Das Agile-Modell wird häufig verwende...
1. Einführung in mysqldump mysqldump ist ein logi...
Die häufig verwendeten Oracle10g-Partitionen sind...