GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann ich den Speicherort des MySQL/MariaDB-Datenverzeichnisses auf cPanel/WHM-Servern sicher ändern?

Möglicherweise müssen Sie das MySQL-Datenverzeichnis aufgrund von unzureichendem Partitionsspeicher auf /var oder /root ändern und das Datenverzeichnis in /home für Ihren Server einschließlich cPanel ändern. Es kann auch andere Gründe geben, das Datenverzeichnis zu ändern.

Standardmäßig ist das MySQL/MariaDB-Datenverzeichnis /var/lib/mysql . Es speichert alle Datenbanken unter /var/lib/mysql . Bitte beachten Sie die folgenden Schritte, um das MySQL-Datenverzeichnis in /home zu ändern. Wir gehen davon aus, dass Sie 

sind
  1. Zunächst erstellen wir eine Sicherungskopie aller MySQL-Datenbanken, damit wir keinen Datenverlust erleiden, falls etwas schief geht.

    # tar -cvf mysql.tar /var/lib/mysql
  2. Sobald Sie mit der Sicherung fertig sind, stoppen Sie den MariaDB-Dienst mit dem folgenden Befehl.
 ------------- On SystemD ------------- 
# systemctl stop mariadb
# systemctl is-active mariadb

------------- On SysVInit ------------- 
# service mysqld stop
# service mysqld status
  1. Installieren Sie den Bildschirmbefehl 

    yum install screen
    screen // It will create screen
  2. Jetzt synchronisieren wir alle MySQL-Datenbanken mit /home/mysql. Der folgende Befehl erstellt ein mysql-Verzeichnis in /home und startet den Synchronisierungsprozess.

    rsync -avz /var/lib/mysql to /home
  3. Während die Synchronisierung läuft, können Sie auch an anderen Aufgaben arbeiten. Sobald mehrere Bildschirme erstellt wurden, können Sie wie folgt zwischen Bildschirmen wechseln/fortfahren.

    screen -r  //  it will resume previous screen
    ctrl A and ctrl D // for return to main screen
    ctrl A and shift ? // for screen command menu
  4. Um das MySQL/MariaDB-Datenverzeichnis zu ändern, bearbeiten Sie die Datei /etc/my.cnf mit Ihrem bevorzugten Editor.

    vi /etc/my.cnf
  5. Ändern Sie das Datenverzeichnis von /var/lib/mysql zu /home. Wenn Sie keine vorhandene Zeile von datadir finden, können Sie wie unten eine neue Zeile hinzufügen.

    datadir=/home/mysql 
  6. Sie müssen die Socket-Datei erneut mit /tmp. verknüpfen

    # rm -rf /tmp/mysql.sock
    # ln -sf /home/mysql/mysql.sock /tmp/mysql.sock
  7. Um den MariaDB-Dienst von /home, auszuführen Sie müssen die Datei mariadb.service am Speicherort /usr/lib/systemd/system/mariadb.service. ändern

    ProtectHome=true to ProtectHome=false
    
  8. Starten Sie schließlich Ihren MariaDB-Dienst.

    systemctl start mariadb
  9. Ihr MariaDB-Dienst schlägt möglicherweise mit der folgenden Warnung fehl. Um diesen Fehler zu beheben, können Sie den Server neu starten und den MariaDB-Dienst erneut starten, und er funktioniert wieder.

    MariaDB cannot start after update: [Warning]  Need to run systemctl daemon-reload
    
  10. Um die Funktionalität zu überprüfen, müssen wir eine Datenbank von cPanel erstellen und sie sollte in /home/mysql erstellt werden. Weitere Informationen finden Sie unter cPanel> MySQL-Datenbank erstellen zum Erstellen einer MySQL-Datenbank. Wenn Ihre Datenbank in /home/mysql erstellt wird, es bedeutet, dass Sie in Ihrer Aufgabe erfolgreich sind.

  11. Wenn alles gut funktioniert, können Sie das alte Datenverzeichnis aus /var/lib/mysql. entfernen

    rm -rf  /var/lib/mysql

Linux
  1. So ändern Sie die cPanel-Sprache

  2. So ändern Sie den cPanel-Stil

  3. So ändern Sie das Stammverzeichnis für die Hauptdomain in cPanel

  4. Wie ändere ich das MySQL-Timeout-Limit in Linux?

  5. Wie ändere ich das Stammverzeichnis eines Apache-Servers?

Wie ändere ich den cPanel-Benutzernamen in WHM?

Wie ändere ich die E-Mail-Adresse von cPanel-/Root-E-Mail-Benachrichtigungen von WHM?

Wie ändere ich das Passwort des cPanel-Kontos mit WHM?

Wie ändere ich den Hostnamen eines cPanel/WHM-Servers?

So ändern / setzen Sie das MySQL- oder MariaDB-Root-Passwort zurück

Wie finde ich den my.cnf-Speicherort von MySQL?