Heim  >  Artikel  >  php教程  >  Umfassende Liste häufig verwendeter MySQL-Befehle

Umfassende Liste häufig verwendeter MySQL-Befehle

高洛峰
高洛峰Original
2016-12-14 11:07:491572Durchsuche

Die folgenden MySQL-Befehle werden häufig verwendet und sind sehr nützlich. Unten sehen Sie, dass # bedeutet, dass der Befehl unter der Unix-Befehlszeile ausgeführt wird. Wenn Sie mysql> sehen, bedeutet dies, dass Sie derzeit beim MySQL-Server angemeldet sind und der MySQL-Befehl auf dem MySQL-Client ausgeführt wird.
Melden Sie sich bei MySQL an, wenn Sie eine Verbindung zu einer Remote-Datenbank herstellen möchten, müssen Sie den Hostnamen mit -h angeben.

# [mysql dir]/bin/mysql -h hostname -u root -p

Erstellen Sie eine Datenbank.

mysql> create database [databasename];

Alle Datenbanken auflisten.

mysql> show databases;

Wechseln Sie zu einer Datenbank.

mysql> use [db name];

Zeigt alle Tabellen in einer Datenbank an.

mysql> show tables;

Sehen Sie sich das Feldformat der Datentabelle an.

mysql> describe [table name];

Eine Datenbank löschen.

mysql> drop database [database name];

Eine Datentabelle löschen.

mysql> drop table [table name];

Zeigt alle Daten in einer Datentabelle an.

mysql> SELECT * FROM [table name];

Gibt die Spalteninformationen der angegebenen Datentabelle zurück.

mysql> show columns from [table name];

Verwenden Sie den Wert „was auch immer“, um die Anzeige ausgewählter Zeilen zu filtern.

mysql> SELECT * FROM [table name] WHERE [field name] = "whatever";

Alle Datensätze anzeigen, die den Namen „Bob“ und die Telefonnummer „3444444“ enthalten.

mysql> SELECT * FROM [table name] WHERE name = "Bob" AND phone_number = '3444444';

Zeigen Sie alle Datensätze an, die nicht den Namen „Bob“ und die Telefonnummer „3444444“ enthalten, und sortieren Sie sie nach dem Feld „Telefonnummer“.

mysql> SELECT * FROM [table name] WHERE name != "Bob" AND phone_number = '3444444' order by phone_number;

Alle Datensätze anzeigen, deren Name mit den Buchstaben „bob“ beginnt und deren Telefonnummer „3444444“ ist.

mysql> SELECT * FROM [table name] WHERE name like "Bob%" AND phone_number = '3444444';

Zeigen Sie den 1. bis 5. Datensatz an, dessen Name mit den Buchstaben „bob“ beginnt und dessen Telefonnummer „3444444“ ist.

mysql> SELECT * FROM [table name] WHERE name like "Bob%" AND phone_number = '3444444' limit 1,5;

Suchen Sie Datensätze mithilfe regulärer Ausdrücke. Verwenden Sie „Regex Binary“, um die Groß-/Kleinschreibung zu erzwingen. Dieser Befehl findet alle Datensätze, die mit a beginnen.

mysql> SELECT * FROM [table name] WHERE rec RLIKE "^a";

Gibt eindeutige Datensätze zurück.

mysql> SELECT DISTINCT [column name] FROM [table name];

Ausgewählte Datensätze in aufsteigender oder absteigender Reihenfolge anzeigen.

mysql> SELECT [col1],[col2] FROM [table name] ORDER BY [col2] DESC;

Gibt die Anzahl der Zeilen zurück.

mysql> SELECT COUNT(*) FROM [table name];

Statistik ist die Summe der angegebenen Spaltenwerte.

mysql> SELECT SUM(*) FROM [table name];

Tabelle beitreten.

mysql> select lookup.illustrationid, lookup.personid,person.birthday from lookup left join person on lookup.personid=person.personid=statement to join birthday in person table with primary illustration id;

Erstellen Sie einen neuen Benutzer. Melden Sie sich als Root an. Wechseln Sie zur MySQL-Datenbank, erstellen Sie einen Benutzer und aktualisieren Sie die Berechtigungen.

# mysql -u root -p
mysql> use mysql;
mysql> INSERT INTO user (Host,User,Password) VALUES('%','username',PASSWORD('password'));
mysql> flush privileges;

Benutzerpasswort über die Unix-Befehlszeile ändern.

# [mysql dir]/bin/mysqladmin -u username -h hostname.blah.org -p password 'new-password'

Ändern Sie das Benutzerpasswort über die MySQL-Befehlszeile. Melden Sie sich als Root an, legen Sie ein Passwort fest und aktualisieren Sie die Berechtigungen.

# /etc/init.d/mysql stop
# mysqld_safe --skip-grant-tables &
# mysql -u root
mysql> use mysql;
mysql> update user set password=PASSWORD("newrootpassword") where User='root';
mysql> flush privileges;
mysql> quit
# /etc/init.d/mysql stop
# /etc/init.d/mysql start

Wenn das Root-Passwort leer ist, legen Sie das Root-Passwort fest.

# mysqladmin -u root password newpassword

Root-Passwort aktualisieren.

# mysqladmin -u root -p oldpassword newpassword

Erlauben Sie dem Benutzer „bob“, sich von localhost aus mit dem Passwort „passwd“ mit dem Server zu verbinden. Melden Sie sich als Root an und wechseln Sie die MySQL-Datenbank. Berechtigungen festlegen, Berechtigungen aktualisieren.

# mysql -u root -p
mysql> use mysql;
mysql> grant usage on *.* to bob@localhost identified by 'passwd';
mysql> flush privileges;

Berechtigungen für die Datenbankdatenbank festlegen. Melden Sie sich als Root an, wechseln Sie zur MySQL-Datenbank, erteilen Sie Berechtigungen und aktualisieren Sie Berechtigungen.

# mysql -u root -p
mysql> use mysql;
mysql> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv) VALUES ('%','databasename','username','Y','Y','Y','Y','Y','N');
mysql> flush privileges;

oder

mysql> grant all privileges on databasename.* to username@localhost;
mysql> flush privileges;

Daten in einer vorhandenen Tabelle aktualisieren.

mysql> UPDATE [table name] SET Select_priv = 'Y',Insert_priv = 'Y',Update_priv = 'Y' where [field name] = 'user';

Löschen Sie die Zeilen in der Tabelle, wobei [Feldname] = „was auch immer“ ist.

mysql> DELETE from [table name] where [field name] = 'whatever';

Aktualisieren Sie Berechtigungen/Privilegien für die Datenbank.

mysql> flush privileges;

Löschen Sie die Spalte.

mysql> alter table [table name] drop column [column name];

Spalte zur Datenbank hinzufügen.

mysql> alter table [table name] add column [new column name] varchar (20);

Spaltennamen ändern.

mysql> alter table [table name] change [old column name] [new column name] varchar (50);

Eindeutige Spalte hinzufügen.

mysql> alter table [table name] add unique ([column name]);

Stellen Sie den Spaltenwert größer ein.

mysql> alter table [table name] modify [column name] VARCHAR(3);

Eindeutige Spalten löschen.

mysql> alter table [table name] drop index [colmn name];

Importieren Sie eine CSV-Datei in die Tabelle.

mysql> LOAD DATA INFILE '/tmp/filename.csv' replace INTO TABLE [table name] FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (field1,field2,field3);

Exportieren Sie alle Datenbanken in SQL-Dateien.

# [mysql dir]/bin/mysqldump -u root -ppassword --opt >/tmp/alldatabases.sql

Exportieren Sie eine Datenbank.

# [mysql dir]/bin/mysqldump -u username -ppassword --databases databasename >/tmp/databasename.sql

Exportieren Sie eine Tabelle aus einer Datenbank.

# [mysql dir]/bin/mysqldump -c -u username -ppassword databasename tablename > /tmp/databasename.tablename.sql

Datenbank (Datentabelle) aus SQL-Datei wiederherstellen.

# [mysql dir]/bin/mysql -u username -ppassword databasename < /tmp/databasename.sql

Erstellen Sie eine Datentabelle, Beispiel 1.

mysql> CREATE TABLE [table name] (firstname VARCHAR(20), middleinitial VARCHAR(3), lastname VARCHAR(35),suffix VARCHAR(3),officeid VARCHAR(10),userid VARCHAR(15),username VARCHAR(8),email VARCHAR(35),phone VARCHAR(25), groups VARCHAR(15),datestamp DATE,timestamp time,pgpemail VARCHAR(255));

Erstellen Sie eine Datentabelle, Beispiel 2.

mysql> create table [table name] (personid int(50) not null auto_increment primary key,firstname varchar(35),middlename varchar(50),lastnamevarchar(50) default &#39;bato&#39;);


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn