MySQL Befehle in Linux: Verbindung, Datenbank, Backup
Hier die wichtigsten Befehle für das Verwalten einer MySQL-Datenbank im Terminal.
MySQL Client
Sollte der Befehl mysql in Debian nicht verfügbar sein, kann dieser mit folgendem Befehl installiert werden
sudo apt-get install mysql-client
Verbindung zur Datenbank aufbauen
mysql -h HOSTNAME -u BENUTZER -pPASSWORT
(das ist kein Tippfehler: nach -p ist kein Leerzeichen)
nach dem Verbindungsaufbau steht im Terminal:
mysql>
Datenbank anlegen
mysql> create database DATENBANKNAME;
alle Datenbanken leeren
mysql> SET FOREIGN_KEY_CHECKS = 0;
mysql> SELECT Concat('TRUNCATE TABLE ',table_schema,'.',TABLE_NAME, ';') FROM INFORMATION_SCHEMA.TABLES where table_schema in ('DBNAME');
mysql> SET FOREIGN_KEY_CHECKS = 1;
Datenbank löschen
mysql> drop database DATENBANKNAME;
Datenbanken anzeigen
mysql> show databases;
Datenbank auswählen
mysql> use DATENBANKNAME;
Tabellen anzeigen
mysql> show tables;
Tabellen Layout anzeigen
mysql> show columns from TABLE;
Mit TABLE ist eine Tabelle gemeint, die vorher mit "show tables;" angezeigt wurde.
Query
mysql> SELECT * FROM TABLE;
Mit TABLE ist eine Tabelle gemeint, die vorher mit "show tables;
" angezeigt wurde.
Datenbank Backup
mysqldump --user=BENUTZER --password=PASSWORT -h HOST DATENBANKNAME > '/pfad/datenbank.sql.gz'
Datenbank Restore von sql.gz
gunzip < '/pfad/datenbank.sql.gz' | mysql -u BENUTZER -pPASSWORT DBNAME
Linux root password reset 16.04LTS
sudo service mysql stop
sudo mkdir /var/run/mysqld
sudo chown mysql: /var/run/mysqld
sudo mysqld_safe --skip-grant-tables --skip-networking
mysql -u root mysql
UPDATE mysql.user SET authentication_string=PASSWORD('root'), plugin='mysql_native_password' WHERE User='root' AND Host='%';
EXIT;
Fehler: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size
Lösung: sort_buffer_size=512k in mysql.cnf
({{pro_count}})
Beitrag bewerten:{{percentage}} % positiv
({{con_count}})