Heim  >  Artikel  >  Datenbank  >  Detailliertes Beispiel für MySQL 5.7 zum Ändern des Speicherorts für Datenbankdaten

Detailliertes Beispiel für MySQL 5.7 zum Ändern des Speicherorts für Datenbankdaten

Y2J
Y2JOriginal
2017-05-22 14:41:512699Durchsuche

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

Ändern Sie auch die Datei
datadir=/data/mysql/
, ändern Sie

Ändern in : /etc/init.d/mysqlddatadir=”$result”

datadir=”/data/mysql”
2. Stoppen Sie den MySQL-Dienst

service mysql stop
3. Erstellen Sie ein neues Datenspeicherverzeichnis

mkdir /data/mysql
4. Verschieben Sie die Daten in das neue Datenbankspeicherverzeichnis

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

5. Ändern Sie MySQL Datenbankverzeichnisberechtigungen und

Konfigurationsdatei

chown mysql:mysql -R /data/mysql/
6. Socket ändern

Socket an zwei Stellen ändern, /etc/my .cnf

Erstellen Sie eine Verbindungsdatei zu /var/lib/mysql/mysql.sock
socket=/data/mysql/mysql.sock

ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
7. Starten Sie den MySQL-Dienst neu

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 normal
mysql> REPAIR TABLE ***;
Mysql-bezogene Themen. Freunde in Not können sich auf

Datenbankoperationen in MySQL

Wissenszusammenfassung

Mysql-Erste Schritte

Tutorial

beziehen 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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn