====== MySQL / MariaDB Command Line ====== > https://mariadb.com/kb/en/sql-statements/ > https://dev.mysql.com/doc/refman/8.0/en/sql-statements.html ===== Verbindung zum Server aufbauen ===== # mysql -u [USER] -p ==== Systemparameter abfragen ==== Wie man Informationen über den Datenbankserver abfragt. === Version === mysql> SELECT @@version; ===== User verwalten / Berechtigungen vergeben ===== ==== Alle Benutzer anzeigen ==== mysql> SELECT User,Host FROM mysql.user; +------------------+-----------+ | User | Host | +------------------+-----------+ | root | 127.0.0.1 | | root | ::1 | | debian-sys-maint | localhost | | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +------------------+-----------+ 12 rows in set (0.00 sec) ==== Benutzer löschen ==== mysql> DROP USER 'USER'@'localhost'; Query OK, 0 rows affected (0.00 sec) ==== Benutzer erstellen ==== CREATE USER 'user'@localhost IDENTIFIED BY 'xxx'; ===== Datenbanken verwalten ===== ==== Datenbanken ansehen ==== mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec) ==== Datenbank anlegen ==== mysql> CREATE DATABASE IF NOT EXISTS testdb; ==== Datenbank löschen ==== mysql> DROP DATABASE testdb; ===== Berechtigungen ===== ==== Alle Rechte auf bestimmte Datenbank erteilen ==== GRANT ALL PRIVILEGES ON 'database'.* TO 'user'@localhost; FLUSH PRIVILEGES; ==== Berechtigunen prüfen ==== SHOW GRANTS FOR 'user'@localhost; ===== Migration / Backup restore ===== ==== Import auf der MySQL-CLI ==== mysql> use db_name; mysql> source file_name.sql; ==== Einzelne Datenbank von --all-databases importieren ==== Nachfolgend die "onboard" Methode von MySQL. mysql -u root -p --one-database destdbname < alldatabases.sql Die sicherere Methode, ohne vorhandene Datenbanken zu überschreiben, ist aus dem "full dump" die gewünschte Datenbank zu extrahieren. Dies kann der sed-Editor übernehmen: # sed -n '/^-- Current Database: `dbname`/,/^-- Current Database: `/p' alldatabases.sql > output.sql