Nachdem die mysql-Datenbank bei mir wegen eines Konfigurationsfehlers total zerschossen war, musste ich diese neu aufsetzen. Nach einiger Web-Recherche fand ich schließlich die folgende Vorgehensweise:
1. Backup erzeugen
Für diesen Schritt kann es natürlich zu spät sein, wenn die Datenbank erstmal zerschossen ist. Daher: regelmäßig ein Backup anlegen, z.B. mit mysqldump
2. mysql anhalten
Die mysql-Datenbank mit
/etc/init.d/mysql stop
anhalten. Jetzt kann das Dateisystem manipuliert werden.
3. Datenverzeichnis neu anlegen
Jetzt kann das Datenverzeichnis zunächst mit
rm -r /path/to/mysql/data
gelöscht und anschließend mit dem Skrtipt
mysql_install_db
ein neues Datenverzeichnis anlegen. Jetzt kann der Mysql-Server wieder gestartet werden.
4. MYSQL wieder starten
Gestartet wird der MYSQL-Server wieder über das System-Startskript in /etc/init.d:
/etc/init.de/mysql start
5. Benutzer und Datenbank anlegen
Nachdem der Datenbankserver wieder läuft, müssen nun die Grundkonfigurationen neu erzeugt werden. Dazu gehört zunächst das setzen eines Passworts für den root-Benutzer:
mysqladmin password '<new password>'
Anschließend wird ein neuer Datenbankbenutzer erzeugt. Dazu wird das Kommandozeilenwerkzeug von mysql gestartet und dort der neue Benutzer erzeugt und ihm Privilegien gegeben, der benötigt werden:
mysql -u root -p create user <username>@localhost identified by '<password>'; create database wordpress; grant all privileges on wordpress.* to <username>@localhost identified by '<password>'; flush privileges; exit;
Mit der ersten zeile wird der MYSQL-Client gestartet. Er fragt zunächst nach dem vorher festgelegtem admin-Passwort. In der zweiten Zeile wird ein neue Benutzer und in der dritten Zeile eine Datenbank angelegt. In der vierten Zeile werden dem Benutzer alle Zugriffrechte auf die Datenbank eingeräumt. Schließlich werden die Zugriffsrechte gespeichert und der Klient verlassen.
6. Backup einspielen
Zum Schluss muss noch das Backup wieder in die Datenbank geladen werden. Sofern mit mysqldump ein Backup im sql-Format erzeugt wurde, kann dieses mit
mysql -u <username> wordpress < <backupfile>.sql
geschehen.