Mysql
Backup erstellen
mysqldump -u root -p --all-databases > fulldump.sql
mysql -u root -p < fulldump.sql
Einzelne DB extrahieren
sed -n '/^-- Current Database: `test`/,/^-- Current Database: `/p' fulldump.sql > test.sql
mysql -u root -p --one-database db_to_restore < fulldump.sql
Nur die struktur der datenbank anlegen
mysqldump -u <USER> -p -h <IP> --no-data --all-databases > allDBs_noData.sql
db löschen
DROP DATABASE tutorial_database;
update wert
update [table] SET name = 'Hans Müller' WHERE name = 'Hans Meier'
Neue Datenbank anlegen
create database mydb;
Benutzer anlegen
CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';
Benutzer zugriff zu Datenbank gewähren
GRANT ALL ON menagerie.* TO 'your_mysql_name'@'your_client_host';
Benutzerrechte aktualisieren
FLUSH PRIVILEGES;
Neues Passwort setzen
SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('password');
Anzeigen lassen welcher Benutzer was für rechte auf einer Datenbank hat
SELECT * FROM mysql.db WHERE Db = '<database name in LC>'\G;
Benutzer löschen
DROP USER 'jeffrey'@'localhost';
Unix Timestamp als normales datum anzeigen
FROM_UNIXTIME(...)
Normales Datum in Unix Timestamp umwandeln
UNIX_TIMESTAMP('2020-07-01 00:00:00')
Mysql-Transaktions-Dateien entfernen (mysqld-bin.XXXXX)
RESET MASTER;
Anschließend sollten die Log-Dateien unter /var/lib/mysql/ verschwunden sein.
Logging deaktivieren = # log-bin in der my.cnf
Root passwort zurücksetzen/neu vergeben
- mysql stppen
sudo mysqld_safe --skip-grant-tables --skip-networking &- dann anmelden mit
mysql -u root - jetzt
FLUSH PRIVILEGES; - jetzt kann ein neues passwort gesetzt werden
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; - sicher ist sicher noch ein
FLUSH PRIVILEGES; - nun kann der Prozess beendet werden und mysql wieder gestartet werden