So ändern Sie das MySQL-Datenbankdateiverzeichnis in Ubuntu

So ändern Sie das MySQL-Datenbankdateiverzeichnis in Ubuntu

Vorwort

Der Ubuntu-Server des Unternehmens platziert die Verzeichnisse verschiedener Systeme auf unterschiedlichen logischen Partitionen. Beispielsweise befindet sich das Standardverzeichnis /var/lib/mysql zum Speichern von MySQL-Datenbankdateien in einer separaten Partition, und das Systemverzeichnis /var/ befindet sich in einer separaten Partition. Die Größe dieser Partition ist jedoch festgelegt und reicht nicht aus, um die gesamte Datenbankdatei zu speichern. Die Größe eines anderen Systemverzeichnisses /data erreicht jedoch die Ebene T, was den Anforderungen weitgehend entspricht. Daher muss das Datenbankdateiverzeichnis geändert werden.

Im Folgenden wird das Vorgehen beschrieben, das ich anhand einiger Artikel im Internet ausprobiert habe:

1. Stoppen Sie den Datenbankdienst:

Verwenden Sie /etc/init.d/mysql stop oder stop mysql

2. Erstellen Sie am Zielspeicherort (/data) ein Verzeichnis für die Datenbankdatei (z. B. /mysqldb) und kopieren Sie das Verzeichnis der ursprünglichen Datenbankdatei in dieses Verzeichnis (wenn Sie den Standardspeicherort nicht mehr verwenden, können Sie die ursprüngliche Datenbankdatei direkt in das neue Verzeichnis verschieben):

CD /Daten

mkdir mysqldb

cp -r /var/lib/mysql /data/mysqldb/

Nach einer Wartezeit befindet sich eine Kopie des ursprünglichen Standard-MySQL-Datenbankdateiverzeichnisses "/mysql" unter /data/mysqldb/

3. Ändern Sie die Datei my.cnf

# vim /etc/mysql/my.cnf

Ändern Sie datadir = /var/lib/mysql datadir = /data/mysqldb/mysql

Da außerdem die aktuelle my.cnf socket = /var/run/mysqld/mysqld.sock hat (und nicht sock = /var/lib/mysql/mysql.sock, wie im Internet erwähnt), d. h. der Speicherort des Sockets ist nicht dort, wo sich die Datenbankdatei befindet, müssen Sie nicht tun, was auf anderen Webseiten gesagt wird, und den folgenden Befehl verwenden, um einen mysql.sock-Link zu erstellen:

ln -s /data/mysqldb/mysql/mysql.sock /var/lib/mysql/mysql.sock (muss eine Kopie von /home/data/mysql kopieren)

4. Ändern Sie die Datenbankberechtigungen:

# chown -R mysql:mysql /data/mysqldb/mysql/ ← Ändern Sie den Eigentümer des Datenbankdateiverzeichnisses in mysql

# chmod 700 /data/mysqldb/mysql/whois/ ← Ändere das Whois-Attribut des Datenbankverzeichnisses auf 700

# chmod 660 /data/mysqldb/mysql/whois/* ← Ändere das Attribut der Datentabelle in der Datenbank auf 660

5. Ändern Sie die Datei usr.sbin.mysqld

# vim /etc/apparmor.d/usr.sbin.mysqld

Bündeln

/var/lib/mysql r,

/var/lib/mysql/** rwk,

Wechseln zu

/data/mysqldb/mysql/ r,

/data/mysqldb/mysql/** rwk,

Hinweis: Ohne diesen Schritt kann der Datenbankdienst nicht neu gestartet werden. Er scheint neu gestartet zu werden, aber er hängt und reagiert nicht.

6. Starten Sie den MySQL-Server

/etc/init.d/apparmor Neustart

/etc/init.d/mysql neu starten (oder restart mysql verwenden)

Erledigt!

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • So ändern Sie das Datenbankdatenspeicherverzeichnis in MySQL
  • So implementieren Sie das MySQL-Umschalten des Datenspeicherverzeichnisses
  • Schritte zum Ändern des MySQL-Datenbankverzeichnisses in Linux
  • Detaillierte Erläuterung der Migrationsmethode für MySQL5.5-Datenbankdatenverzeichnisse
  • Centos MySQL Datenbankverzeichnis ändern
  • Wie ändere ich das Speicherverzeichnis einer MySQL-Datenbank?
  • So ändern Sie das MySQL-Datenverzeichnis unter Win2008 r2
  • So verschieben Sie das MySQL-Datenverzeichnis
  • Tutorial zum Erstellen eines temporären Verzeichnisses für MySQL im Speicher

<<:  So installieren Sie MySQL und MariaDB in Docker

>>:  Vue + Spring Boot realisiert die Bestätigungscodefunktion

Artikel empfehlen

favico.ico --- Schritte zum Einrichten des Website-ICO-Symbols

1. Laden Sie die erfolgreich generierte Symboldate...

Methode zur Implementierung von Website-Hintergrundmusik

Für einzelne Webmaster war es schon immer das Ziel...

Diagramm des Tomcat CentOS-Installationsprozesses

Tomcat CentOS-Installation Dieses Installationstu...

JavaScript ist unzuverlässig undefiniert

undefined Wenn wir in JavaScript feststellen möch...

Best Practices zum Teilen von React-Code

Wenn ein Projekt eine gewisse Komplexität erreich...

Beispiele für die Verwendung der oder-Anweisung in MySQL

1. Die Verwendung der oder Syntax in MySQL und di...

So erhalten Sie den Inhalt einer TXT-Datei über FileReader in JS

Inhaltsverzeichnis JS erhält den Inhalt der TXT-D...

Vor- und Nachteile von Vite und Vue CLI

Es gibt im Vue-Ökosystem ein neues Build-Tool nam...