Da die in der MySQL-Datenbank gespeicherten Daten allmählich größer werden, ist der ursprüngliche Speicherplatz zum Speichern von Daten aufgefüllt, was dazu führt, dass MySQL nicht mehr verbunden ist. Daher müssen wir den Ort ändern, an dem die gespeicherten Daten gespeichert werden. Der folgende Editor teilt Ihnen die Lösung zum Ändern des Datenspeicherorts der Datenbank in MySQL 5.7 mit. Schauen wir uns die Daten an Der in der MySQL-Datenbank gespeicherte Speicherplatz wird allmählich größer. Der ursprüngliche Speicherplatz zum Speichern von Daten ist voll, sodass MySQL keine Verbindung herstellen kann. Daher ist es notwendig, den Ort zu ändern, an dem die Daten gespeichert werden. Hier sind einige Schritte im Prozess. Notieren Sie es und überprüfen Sie es später.
1. Ändern Sie das Verzeichnis, in dem MySQL-Daten gespeichert sind.Eine Möglichkeit besteht darin, das Datenverzeichnis in der Datei /etc/my.cnf zu ändern . Standardmäßig:
Da mein /data/-Verzeichnis relativ groß ist, habe ich es geändert in:datadir=/var/lib/mysql
datadir=/data/mysql/
Ändern in : /etc/init.d/mysqld
datadir=”$result”
datadir=”/data/mysql”
service mysql stop
mkdir /data/mysql
mv /usr/local/mysql/data/* /data/mysql
Fügen Sie hier einige Kenntnisse über die innoDB-Engine und die MyISAM-Engine hinzu Datendateien sind unterschiedlich. Für die MyISAM-Engine werden die Datendateien im Verzeichnis „/var/lib/mysql“ mit drei Dateien gespeichert: „*.frm“, „*.MYD“ und „ *.MYI“ im entsprechenden Datenbankordner unter . Verschieben Sie diese Dateien einfach direkt in das neue Datenspeicherverzeichnis.
Für die innoDB-Engine werden die Daten (im Allgemeinen) in der Datei "
" gespeichert und die Strukturdatei ist in table_name.frm vorhanden.$innodb_data_home_dir” 的ibdata1
chown mysql:mysql -R /data/mysql/
Socket an zwei Stellen ändern, /etc/my .cnf
Erstellen Sie eine Verbindungsdatei zu /var/lib/mysql/mysql.socksocket=/data/mysql/mysql.sock
ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
Führen Sie
aus, um Lese- und Schreibvorgänge in der Datenbank zu starten, und haben Sie dieses Problem gefunden:service mysql restart
Lesen und Schreiben:
Tabelle erstellen:ERROR 1146 (42S02): Table ** doesn't exist
ERROR 1005 (HY000): Can't create table ‘runoob_tbl' (errno: 13)
Lösung: Löschen Sie im Verzeichnis /data/mysql die Datei ib_logfile*, damit die innoDB-Engine-Tabelle angezeigt wird normal sein.
Erneut ausführen
Bei Tabellen mit großem Datenvolumen kann dieser Vorgang langsamer sein. Nach Abschluss der Ausführung ist die MyISAM-Engine-Tabelle normalmysql> REPAIR TABLE ***;
Datenbankoperationen in MySQL
WissenszusammenfassungTutorialbeziehen MySQL-Fehlerberichterstattung und -Lösung
MySQL-Root-Passwort-Betriebsmethode[Verwandte Empfehlungen]1.MySQL-Kostenloses Video-Tutorial
2. Detaillierte Erklärung zum Importieren von MySQL-Big Data in Navicat und zum Melden von Fehlern
3. Detaillierte Erläuterung von Beispielen zum Entsperren und Sperren von Tabellen in MYSQL
4. Wie Verbessern Sie die Geschwindigkeit der Datenbankabfrage für Millionen von Elementen
5. 5 häufige Fehler beim Datenbankdesign
Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für MySQL 5.7 zum Ändern des Speicherorts für Datenbankdaten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!