Kleine Befehlszeilen-Referenz für MySQL.

Server-Infos auslesen

Beschreibung Befehl Bemerkung
Server-Version auslesen select @@version;
MySQL-Konfiguration auslesen show variables;
MySQL-Konfiguration auslesen (Gefiltert) show variables like ‘%max%’;
Server-Status auslesen status; MySQL-Version, Charset, Uptime etc.

Benutzerverwaltung

Dafür muss die MySQL-DB verwendet werden:

use mysql;

Beschreibung Befehl Bemerkung
Zeige alle Benutzer mit Host select user,host FROM mysql.user;
Zeige momentan verwendeten Benutzer select user();
Setze Root-Passwort zurück alter user ‘root’@’localhost’ identified by ‘MeinPasswort’;flush privileges;
Lege einen Benutzer an create user ‘USER’@’localhost’ IDENTIFIED BY ‘PASSWORT’;
Zeige Berechtigungen eines Benutzers show grants for ‘root’@’localhost’;
Benutzer auf alle Tabellen einer DB berechtigen grant all privileges ON MeineDB.* to ‘USER’@’localhost’;
Berechtigungen eines Benutzers zurückziehen revoke privileges ON asset.* FROM ‘USER’@’localhost’;
Benutzer löschen drop user ‘USER’@’localhost’;

Datenbanken

Beschreibung Befehl Bemerkung
Datenbanken anzeigen show databases;
In Datenbank wechseln use DATENBANK;
Datenbank löschen drop database DATENBANK;

Tabellen abfragen

Beschreibung Befehl Bemerkung
Tabellen anzeigen show tables;
Zeige die Struktur einer TABELLE describe TABELLE; Spaltennamen, Datentypen etc.
Zeige alle Spalten und Inhalte einer TABELLE select * from TABELLE;
Zeige die ersten 10 Treffer select * from TABELLE limit 10;
Zähle die Anzahl der Datensätze select count(Spalte) from TABELLE;
Zähle die Anzahl der Datensätze (keine Duplikate) select count(distinct(Spalte)) from TABELLE;
Zeige alle Inhalte, aber ohne Duplikate select distinct * from TABELLE;
Zeige alle Werte NICHT gleich select * from Spalte where not Wert = ‘123’;

Tabellen-Struktur anlegen und bearbeiten

Beschreibung Befehl Bemerkung
Datenbank anlegen create database DATENBANK;
Tabellen anlegen create table TABELLENNAME ( SPALTE1 varchar(255), SPALTE2 varchar(255), SPALTE3 int );
Spalte hinzufügen alter table TABELLE add column Spalte24 VARCHAR(10) after Spalte23;
Spalte entfernen alter table TABELLE drop column Spalte24;

Tabellen-Inhalte bearbeiten

Beschreibung Befehl Bemerkung
Inhalt einfügen insert into TABELLE (SPALTE1, SPALTE2, SPALTE3) VALUES (“inhalt123”, “inhalt456”, “inhalt789”);
Inhalt aktualisieren update TABELLE set Wert = ‘blabla’ where Spalteninhalt = ‘Spalte1’;
Zeile löschen delete from TABELLE where hostname = ‘HOSTNAME’

Checks und Reparaturen

Beschreibung Befehl Bemerkung
Tabelle aus Konsistenz prüfen check table mysql.global_priv;
Tabelle reparieren repairtable mysql.global_priv; Kann auch mehrmals ausgeführt werden

Datenbank-Statements per Datei absetzen

Eine Textdatei anlegen, z.B. sql_command.txt:

use DATENBANK;
delete from TABELLE where SPALTE = ‘WERT1’;
delete from TABELLE where SPALTE = ‘WERT2’;

Datenbank-Statement ausführen:

mysql < /tmp/sql_command.txt