Wie werden / var / lib / mysql-Dateien neu initialisiert?

15

Aufgrund eines Unglücks habe ich das gesamte Verzeichnis / var / lib / mysql gelöscht. Da die Datenbank nichts Wichtiges enthielt, möchte ich sie nicht aus einer alten Sicherung wiederherstellen, sondern die Verzeichnisstruktur von Grund auf neu erstellen. Wie mache ich das, ohne MySQL neu zu installieren?

Konrad Gajewski
quelle

Antworten:

17

Sie sollten in der Lage sein, einfach von der Kommandozeile aus zu startenmysql_install_db

mysql_install_db initialisiert das MySQL-Datenverzeichnis und erstellt die darin enthaltenen Systemtabellen, falls diese nicht vorhanden sind. Außerdem werden der Systemtabellenbereich und die zugehörigen Datenstrukturen initialisiert, die zum Verwalten von InnoDB-Tabellen erforderlich sind. Ab MySQL 5.6.8 ist mysql_install_db ein Perl-Skript und kann auf jedem System verwendet werden, auf dem Perl installiert ist. Vor 5.6.8 ist es ein Shell-Skript und nur auf Unix-Plattformen verfügbar.

Bitte lesen Sie die MySQL-Dokumentation vollständig durchmysql_install_db , dann ...

VERSUCHE ES !!!

Wenn es beim ersten Versuch nicht funktioniert, tun Sie dies

mkdir /var/lib/mysql
mkdir /var/lib/mysql/mysql
chown -R mysql:mysql /var/lib/mysql 

dann mysql_install_dbwieder laufen

RolandoMySQLDBA
quelle
Es hat beim ersten Versuch funktioniert. Danke. Das Passwort ist ein weiteres Problem.
Konrad Gajewski,
Siehe meinen Beitrag dba.stackexchange.com/questions/44645/…
RolandoMySQLDBA
Möglicherweise müssen Sie auch, restorecon -r /var/lib/mysqlwenn SELinux aktiviert ist
Mahmoud Mostafa
9

Für MySQL 5.7> nur:

# Move or remove the original dir
mv /var/lib/mysql /tmp/mysql

# Create a new dir
mkdir /var/lib/mysql

# Change owner to mysql (user and group)
chown -R mysql:mysql /var/lib/mysql

# Create MySQL initial data
mysqld --initialize
Cristian Deluxe
quelle
1
Die einzige Antwort, die für mich funktioniert hat
Bahaa Odeh
mysql Ver 14.14 Distrib 5.7.22 für Linux (x86_64) mit EditLine-Wrapper
Bahaa Odeh