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