1. Stellen Sie eine Verbindung zu MySQL her
Format: MySQL -h Hostadresse -u Benutzername -p Benutzerkennwort
1. Stellen Sie eine Verbindung zu MYSQL auf diesem Computer her.
Öffnen Sie zunächst ein DOS-Fenster, geben Sie dann das Verzeichnis mysqlbin ein und geben Sie dann den Befehl mysql -u root -p ein. Nachdem Sie die Eingabetaste gedrückt haben, werden Sie aufgefordert, Ihr Passwort einzugeben Leerzeichen davor, aber vor dem Passwort dürfen keine Leerzeichen stehen, andernfalls können Sie Ihr Passwort erneut eingeben.
Wenn MYSQL gerade erst installiert wurde, hat der Superuser Root kein Passwort, also drücken Sie einfach die Eingabetaste, um MYSQL einzugeben.
2. Mit MYSQL verbinden der Remote-Host. Angenommen, die IP des Remote-Hosts lautet 110.110.110.110, der Benutzername lautet root und das Kennwort lautet abcd123. Geben Sie dann den folgenden Befehl ein:
mysql -h110.110.110.110 -u root -p 123; (Hinweis: Es ist nicht erforderlich, ein Leerzeichen zwischen u und root einzufügen, und das Gleiche gilt für andere)
3. Beenden Sie den MYSQL-Befehl: Exit (Enter)
2. Passwort ändern
Format: mysqladmin -u Benutzername -p altes Passwort Passwort neues Passwort
1. Fügen Sie dem Root ein Passwort ab12 hinzu.
Geben Sie zuerst das Verzeichnis mysqlbin unter DOS ein und geben Sie dann den folgenden Befehl ein:
mysqladmin -u root -password ab12
Hinweis: Da root am Anfang kein Passwort hat, kann das Element -p altes Passwort dies tun weggelassen werden.
2. Ändern Sie das Root-Passwort in djg345.
mysqladmin -u root -p ab12 passwort djg345
3. Einen neuen Benutzer hinzufügen
Hinweis: Im Gegensatz zu den oben genannten handelt es sich bei den folgenden Befehlen um Befehle in der MYSQL-Umgebung, daher folgen sie ein Semikolon als Befehlsabschlusszeichen
Format: Gewähren Sie select on data.* dem durch „Passwort“ identifizierten Benutzernamen@Login-Host
1. Fügen Sie einen Benutzer test1 mit dem Passwort abc hinzu, damit er sich anmelden kann auf jedem Host und verfügen über Abfrage-, Einfüge-, Änderungs- und Löschberechtigungen für alle Datenbanken. Stellen Sie zunächst als Root-Benutzer eine Verbindung zu MYSQL her und geben Sie dann den folgenden Befehl ein:
grant select,insert,update,delete on *.* to [email=test1@“%]test1@“%[/email]“ Identified durch „abc ";
Aber das Hinzufügen weiterer Benutzer ist sehr gefährlich. Wenn jemand das Passwort von test1 kennt, kann er sich auf jedem Computer im Internet bei Ihrer MySQL-Datenbank anmelden und auf Ihre Daten zugreifen. Das können Sie tun Was auch immer Sie wollen, siehe Lösung 2.
2. Fügen Sie einen Benutzer test2 mit dem Passwort abc hinzu, sodass er sich nur bei localhost anmelden und die Datenbank mydb (localhost) abfragen, einfügen, ändern und löschen kann bezieht sich auf den lokalen Host, also auf den Host, auf dem sich die MySQL-Datenbank befindet. Auf diese Weise kann der Benutzer, selbst wenn er das Passwort von test2 kennt, nicht direkt über das Internet auf die Datenbank zugreifen, sondern nur über das Web Seite auf dem MYSQL-Host
. gewähren Sie select,insert,update,delete auf mydb.* an [email=test2@localhost]test2@localhost[/email], gekennzeichnet durch „abc“;
Wenn Sie Wenn Sie nicht möchten, dass test2 ein Passwort hat, können Sie einen anderen Befehl zum Löschen des Passworts eingeben.
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email ] gekennzeichnet durch „“;
Beispiel 1: Einen Namen für die Datenbank von xhkdb erstellen
mysql>
③SET PASSWORD FOR 'database name'@'localhost' = OLD_PASSWORD('password');
Führen Sie 3 Befehle nacheinander aus, um die Datenbankerstellung abzuschließen. Hinweis: Chinesisches „Passwort“ und „Datenbank“ müssen vom Benutzer selbst festgelegt werden.
4.2 Datenbanken anzeigen
Befehl: Datenbanken anzeigen (Hinweis: am Ende steht ein s)
mysql> Verstümmelte Zeichen länger anzeigen, um die Standardkodierung der Datenbank zu ändern. Im Folgenden wird die GBK-Codierungsseite als Beispiel verwendet:
1. Ändern Sie die MYSQL-Konfigurationsdatei: Ändern Sie default-character-set=gbk in my.ini
2. Ändern Sie, wenn der Code ausgeführt wird:
①Java-Code: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
②PHP-Code: header("Content-Type:text/html;charset=gb2312");
Diese Funktion wird verwendet, um den Standardzeichensatz für die aktuelle Verbindung festzulegen. Die Zeichenfolge csname gibt einen gültigen Zeichensatznamen an. Die verkettete Sortierung wird zur Standardsortierung für den Zeichensatz. Diese Funktion funktioniert ähnlich wie die SET NAMES-Anweisung, legt jedoch auch den Wert von mysql- > fest und wirkt sich dadurch auf den von mysql_real_escape_string() festgelegten Zeichensatz aus.
4.3 Datenbank löschen
Befehl: Datenbank löschen
Zum Beispiel: Datenbank mit dem Namen xhkdb löschen
mysql> Datenbank löschen xhkdb;
Abfrage OK, 0 Zeilen betroffen ( 0,00 Sek.)
Beispiel 2: Löschen Sie eine Datenbank, deren Existenz nicht sicher ist
mysql> drop_database;
FEHLER 1008 (HY000): Datenbank „drop_database“ kann nicht gelöscht werden 't exist
//Es ist ein Fehler aufgetreten, die Datenbank „drop_database“ kann nicht gelöscht werden, die Datenbank existiert nicht.
mysql> Datenbank löschen, falls vorhanden, drop_database;
Abfrage OK, 0 Zeilen betroffen, 1 Warnung (0,00 Sek.)//Eine Warnung generieren, die darauf hinweist, dass diese Datenbank nicht vorhanden ist
mysql> Datenbank drop_database erstellen;
Abfrage OK, 1 Zeile betroffen (0,00 Sek.)
mysql> Datenbank löschen, wenn vorhanden drop_database;//Wenn vorhanden, wird bestimmt, ob die Datenbank vorhanden ist. Wenn sie nicht vorhanden ist, wird kein Fehler generiert.
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)
4.4 Mit der Datenbank verbinden
mysql> use xhkdb;
Bildschirmaufforderung: Datenbank geändert
use-Anweisung kann MySQL benachrichtigen, die Datenbank db_name als Standarddatenbank (aktuell) für nachfolgende Anweisungen zu verwenden. Die Datenbank bleibt bis zum Ende des Segments oder bis eine andere USE-Anweisung ausgegeben wird:
mysql>
SELECT COUNT(*) FROM mytable
mysql> USE db2;
SELECT COUNT(*) FROM mytable; # wählt aus db2.mytable aus
Verwenden Sie die USE-Anweisung, um eine bestimmte aktuelle Datenbank zu markieren, ohne Ihren Zugriff zu blockieren Datenbanken. Das folgende Beispiel kann auf die Autorentabelle aus der Datenbank db1 und die Bearbeitungstabelle aus der Datenbank db2 zugreifen:
mysql>
mysql> ; WHERE author .editor_id = db2.editor.editor_id;
USE-Anweisung ist für die Kompatibilität mit Sybase eingerichtet.
Einige Internetnutzer fragten, wie sie nach dem Herstellen der Verbindung beenden können. Tatsächlich müssen Sie die Datenbank nicht beenden, indem Sie „Datenbanken anzeigen“ verwenden, um alle Datenbanken abzufragen. Wenn Sie zu anderen Datenbanken springen möchten, verwenden Sie einfach
andere Datenbanknamen verwenden
.
4.5 Aktuell ausgewählte Datenbank
Befehl: mysql> select Database();
Der SELECT-Befehl in MySQL ähnelt dem Drucken oder Schreiben in anderen Programmiersprachen. Sie können ihn verwenden, um die Ergebnisse einer Zeichenfolge, einer Zahl oder einer Mathematik anzuzeigen Ausdruck usw. Wie nutzt man die Sonderfunktionen des SELECT-Befehls in MySQL?
1. Die Version von MYSQL anzeigen
mysql> +
|. version()
+-------+
| 🎜 >+--------+
1 Zeile im Satz (0,02 Sek.)
2
mysql> select now();
+------+
|. -------------------------------- --- --------+
1 Zeile im Satz (0,04 Sek.)
3. Jahr, Monat und Tag anzeigen
SELECT DAYOFMONTH(CURRENT_DATE);
+ ----- ------+
|. DAYOFMONTH(CURRENT_DATE) |. ----- ---------+
|. 15 |. --+
1 Zeile im Satz (0,01 Sek.)
SELECT MONTH(CURRENT_DATE
+-------------------); ------+
|. MONAT(AKTUELLES_DATUM) | >+------ --------------+
1 Zeile im Satz (0,00 Sek.)
SELECT YEAR(CURRENT_DATE); +-------- ------------+
| -----+
|.
+----------+
1 Reihe im Satz (0,00 Sek.)
4. Anzeigezeichenfolge
mysql> ----+
|. Willkommen auf meinem Blog!
+------+
|. |.
+-------- --------------+
1 Reihe im Satz (0,00 Sek.)
5 Verwenden Sie im Rechner
select ((4 * 4) / 10 ) + 25;-------+
| ((4 * 4) / 10 ) + 25 | ---------------- -----+
1 Zeile im Satz (0,00 Sek.)
6. Zeichenfolgen verketten
select CONCAT(f_name , " ", l_name)
AS-Name
aus Mitarbeiterdaten
wobei Titel = 'Marketing Executive';---------------+
|.
+-----+
|. -----------+
3 Zeilen im Satz (0,00 Sek.)
Hinweis: Die Funktion CONCAT() wird hier zum Verketten von Zeichenfolgen verwendet. Darüber hinaus haben wir auch das zuvor gelernte AS verwendet, um der Ergebnisspalte „CONCAT(f_name, „“, l_name)“ ein Pseudonym zu geben.
5.1 Datentabelle erstellen
Befehl: Tabelle erstellen
Erstellen Sie beispielsweise eine Tabelle mit dem Namen MyClass,
mysql> create table MyClass(
> id int (4 ) nicht null Primärschlüssel auto_increment,
> name char(20) not null,
> not null default '0',
> ;
5.3 Datentabelle löschen
Befehl: Tabelle löschen
Beispiel: Löschen Sie die Tabelle mit dem Namen MyClass
Hinweis: Bei einer partitionierten Tabelle löscht DROP TABLE die Tabellendefinition dauerhaft, löscht jede Partition und löscht alle in diesen Partitionen gespeicherten Daten. DROP TABLE löscht auch die Partitionsdefinitionsdatei (.par), die mit der gelöschten Tabelle verknüpft ist.
RESTRICT und CASCADE können die Partitionierung erleichtern. Derzeit funktionieren RESTRICT und CASCADE nicht.
5.4 Daten in Tabelle einfügen
Befehl: Einfügen in
Zum Beispiel: Fügen Sie zwei Datensätze in die Tabelle MyClass ein. Diese beiden Datensätze stellen dar: Die Punktzahl der Person namens Tom mit der Nummer 1 beträgt 96,45, die Punktzahl der Person namens Joan mit der Nummer 2 beträgt 82,99 und die Punktzahl der Person namens Wang mit der Nummer 3 Die Punktzahl betrug 96,5.
mysql> insert into MyClass effects(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
Hinweis: insert into every Es kann jeweils nur ein Datensatz in die Tabelle eingefügt werden.
5.5 Daten in der Tabelle abfragen
1), alle Zeilen abfragen
Befehl: Wählen Sie
Zum Beispiel: Alle Daten in der Tabelle MyClass anzeigen
mysql> select * from MyClass;
2), fragen Sie die ersten Datenzeilen ab
Zum Beispiel: Tabelle anzeigen MyClass Die ersten beiden Datenzeilen
mysql> select * from MyClass order by id limit 0,2; select wird im Allgemeinen in Verbindung mit der Abfrage präziserer und komplexerer Daten verwendet.
5.6 Daten in der Tabelle löschen
Befehl: Aus Tabellenname löschen, wobei Ausdruck
Beispiel: Löschen Sie den Datensatz mit der Nummer 1 in der Tabelle MyClass
mysql> from MyClass where id=1;
Das Folgende ist ein Vergleich der Tabelle vor und nach dem Löschen von Daten.
Im Folgenden wird PHP-Code als Beispiel verwendet, um alle Datensätze mit LastName='Griffin' in der Tabelle „Personen“ zu löschen:
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("my_db", $con); mysql_query("DELETE FROM Persons WHERE LastName='Griffin'"); mysql_close($con); ?>
5.7 Ändern Sie die Daten in der Tabelle
Syntax: Feld für Tabellennamensatz aktualisieren = neuer Wert,… wobei Bedingung
mysql> update MyClass set name='Mary' where id=1;
Beispiel 1: MySQL-UPDATE-Anweisung für eine einzelne Tabelle:
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1= expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]
Beispiel 2: UPDATE-Anweisung für mehrere Tabellen:
UPDATE [LOW_PRIORITY ] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
UPDATE-Syntax kann jede Spalte in der ursprünglichen Tabellenzeile mit einem neuen Wert aktualisieren. Die SET-Klausel gibt an, welche Spalten geändert und welche Werte angegeben werden sollen. Die WHERE-Klausel gibt an, welche Zeilen aktualisiert werden sollen. Wenn keine WHERE-Klausel vorhanden ist, werden alle Zeilen aktualisiert. Wenn die ORDER BY-Klausel angegeben ist, werden Zeilen in der angegebenen Reihenfolge aktualisiert. Die LIMIT-Klausel wird verwendet, um die Anzahl der Zeilen zu begrenzen, die aktualisiert werden können.
5.8 Felder hinzufügen
Befehl: Tabelle ändern, Tabellenname hinzufügen, Feldtyp hinzufügen, andere;
Zum Beispiel: Ein Feld passttest wird zur Tabelle MyClass, dem Typ, hinzugefügt ist int (4), der Standardwert ist 0 mysql> alter table MyClass add passtest int(4) default '0'
add index
alter table table name add index index name (Feldname 1[, Feldname 2...]);
Beispiel: mysql> alter table Employee add index emp_name (name);
Füge den Index des Primärschlüssels hinzu
mysql> Tabelle ändern, Tabellenname, Primärschlüssel hinzufügen (Feldname);
Beispiel: MySQL> Indexname (Feldname);
Beispiel: MySQL> Alter Table Employee Add Unique emp_name2(cardnumber);
Löschen Sie einen Index
Alter Table Table Name Drop Index Name;
Beispiel: mysql> ;Alter Table Employee Drop Index emp_name;
Fügen Sie ein Feld hinzu:
ALTER TABLE Table_name ADD Field_Name Field_Type;
Ändern Sie den ursprünglichen Feldnamen und -typ:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
Feld löschen:
MySQL ALTER TABLE table_name DROP field_name;
5.9 Tabellennamen ändern
Befehl: Tabelle original umbenennen Tabellenname in neuen Tabellennamen;
mysql> benennen Sie die Tabelle MyClass in YouClass um;
Wenn Sie RENAME ausführen, können Sie keine haben gesperrte Tische oder aktive Angelegenheiten. Sie müssen außerdem über die Berechtigungen ALTER und DROP für die ursprüngliche Tabelle sowie über die Berechtigungen CREATE und INSERT für die neue Tabelle verfügen.
Wenn MySQL während einer Umbenennung mehrerer Tabellen auf Fehler stößt, führt es eine Rückwärtsumbenennung für alle umbenannten Tabellen durch und stellt alles in seinen ursprünglichen Zustand zurück.
RENAME TABLE wurde in MySQL 3.23.23 hinzugefügt.
6. Datenbank sichern
Der Befehl wird im Verzeichnis [url=file://\mysql\bin]\mysql\bin[/url] von DOS ausgeführt
1. Exportieren Sie die gesamte Datenbank
Die Exportdatei wird standardmäßig im mysqlbin-Verzeichnis
mysqldump -u Benutzername-p Datenbankname> gespeichert > mysqldump -u Benutzername -p Datenbankname Tabellenname > Name der exportierten Datei
mysqldump -u Benutzername -p Datenbankname Tabellenname > 3. Exportieren Sie eine Datenbankstruktur
mysqldump -u Benutzername -p -d –add-drop-table Datenbankname > outfile_name.sql
-d Keine Daten –add-drop-table Vor jeder Erstellungsanweisung eine Drop-Tabelle hinzufügen
4
mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt data_name > outfile_name.sql
Sichern Sie beispielsweise die aaa-Bibliothek in der Datei back_aaa :
[root@test1 root]# cd /home/data/mysql
[root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa
7.1 Eine Datenbank Erstellungsbeispiel 1 zum Erstellen einer Tabelle
Datenbank löschen, wenn Schule vorhanden ist; //Wenn SCHOOL vorhanden ist, löschen Sie sie
Datenbank erstellen SCHULE
Bibliothek verwenden SCHULE
(
id int(3) auto_increment not null Primary Key, name char(10) not null,
address varchar(50) default ' Shenzhen' ,
Jahrsdatum
); //Ende der Tabellenerstellung
//Das Folgende sind die eingefügten Felder
Einfügen in Lehrerwerte(“,'allen','Dalian No . 1 Middle School','1976 -10-10′);
in Lehrerwerte einfügen(“,'jack','Dalian No. 2 Middle School','1975-12-23′);
Wenn Sie das Obige an der MySQL-Eingabeaufforderung eingeben Der Befehl ist ebenfalls möglich, aber zum Debuggen nicht praktisch.
1. Sie können den obigen Befehl so wie er ist in eine Textdatei schreiben, vorausgesetzt, es ist school.sql, kopieren Sie ihn dann nach c:\ und geben Sie das Verzeichnis im DOS-Status ein [url=file://\mysql \bin] \mysql\bin[/url] und geben Sie dann den folgenden Befehl ein:
mysql -uroot -p passwort Wenn erfolgreich, lassen Sie eine Leerzeile und es wird nichts angezeigt angezeigt; wenn ein Fehler vorliegt, wird ein Hinweis angezeigt. (Der obige Befehl wurde debuggt, Sie müssen nur den //-Kommentar entfernen, um ihn zu verwenden).
2. Oder verwenden Sie mysql> source c:\school.sql; nach Eingabe der Befehlszeile, um die Datei school.sql;
7.2 Ein Beispiel für den Aufbau einer Datenbank und einer Tabelle 2
Datenbank löschen, wenn Schule existiert; //Wenn SCHOOL existiert, löschen Sie sie
Datenbank Schule erstellen; // Bibliothek SCHOOL erstellen
Schule verwenden; //Bibliothek SCHOOL öffnen
(
id int(3) auto_increment not null Primary Key, name char (10 ) not null,
address varchar(50) default ''Shenzhen'',
year date
); //Ende der Tabellenerstellung
//Die folgenden werden eingefügt Felder
in Lehrerwerte einfügen('''',''glchengang'',''Shenzhen No. 1 Middle School'',''1976-10-10'');
in Lehrerwerte einfügen( '''',''jack '',''Shenzhen No. 1 Middle School'',''1975-12-23'');
Hinweis: In der Tabelle im Aufbau
1 . Setzen Sie die ID auf ein numerisches Feld mit einer Länge von 3: int(3); und lassen Sie jeden Datensatz automatisch einen hinzufügen: auto_increment; nicht leer;
2. Stellen Sie NAME auf ein Zeichenfeld der Länge 10 ein.
3. Legen Sie ADRESSE auf ein Zeichenfeld der Länge 50 fest. Der Standardwert ist Shenzhen.
4. Stellen Sie JAHR als Datumsfeld ein.