GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo cambiar de forma segura la ubicación del directorio de datos MySQL/MariaDB en servidores cPanel/WHM?

Es posible que deba cambiar el directorio de datos de MySQL debido a espacio de partición insuficiente en /var o /root y cambiar el directorio de datos a /home para su servidor, incluido cPanel. También puede haber alguna otra razón para cambiar el directorio de datos.

Por defecto, el directorio de datos de MySQL/MariaDB es /var/lib/mysql . Almacena todas las bases de datos en /var/lib/mysql . Consulte los siguientes pasos para cambiar el directorio de datos de MySQL a /home. Asumimos que eres 

  1. En primer lugar, crearemos una copia de seguridad de todas las bases de datos MySQL para que, en caso de que algo salga mal, no suframos ninguna pérdida de datos.

    # tar -cvf mysql.tar /var/lib/mysql
  2. Una vez que haya terminado con la copia de seguridad, detenga el servicio MariaDB con el siguiente comando.
 ------------- On SystemD ------------- 
# systemctl stop mariadb
# systemctl is-active mariadb

------------- On SysVInit ------------- 
# service mysqld stop
# service mysqld status
  1. Instale el comando de pantalla 

    yum install screen
    screen // It will create screen
  2. Ahora, sincronizaremos todas las bases de datos MySQL con /home/mysql. El siguiente comando creará un directorio mysql en /home y comenzará el proceso de sincronización.

    rsync -avz /var/lib/mysql to /home
  3. Mientras la sincronización está en curso, también puede trabajar en otras tareas. Una vez que se crean varias pantallas, puede reanudar/cambiar entre pantallas de la siguiente manera.

    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. Para cambiar el directorio de datos MySQL/MariaDB, edite el archivo /etc/my.cnf con su editor favorito.

    vi /etc/my.cnf
  5. Cambiar el directorio de datos de /var/lib/mysql al /inicio. Si no encuentra una línea existente de datadir, puede agregar una nueva línea como se muestra a continuación.

    datadir=/home/mysql 
  6. Deberá volver a vincular el archivo de socket a /tmp.

    # rm -rf /tmp/mysql.sock
    # ln -sf /home/mysql/mysql.sock /tmp/mysql.sock
  7. Para ejecutar el servicio MariaDB desde /home, debe modificar el archivo mariadb.service en la ubicación /usr/lib/systemd/system/mariadb.service.

    ProtectHome=true to ProtectHome=false
    
  8. Finalmente, inicie su servicio MariaDB.

    systemctl start mariadb
  9. Su servicio MariaDB puede fallar con la siguiente advertencia. Para resolver este error, puede reiniciar el servidor e iniciar el servicio MariaDB nuevamente y volverá a funcionar.

    MariaDB cannot start after update: [Warning]  Need to run systemctl daemon-reload
    
  10. Para verificar la funcionalidad, necesitaremos crear una base de datos desde cPanel y debe crearse dentro de /home/mysql. Consulte cPanel> crear una base de datos MySQL para crear una base de datos MySQL. Si su base de datos se crea dentro de /home/mysql, significa que tienes éxito en tu tarea.

  11. Si todo funciona bien, puede eliminar el directorio de datos anterior de /var/lib/mysql.

    rm -rf  /var/lib/mysql

Linux
  1. Cómo cambiar el idioma de cPanel

  2. Cómo cambiar el estilo de cPanel

  3. ¿Cómo mover el directorio de datos Mysql?

  4. Cómo cambiar el idioma en cPanel

  5. Cómo cambiar el directorio raíz del dominio principal en cPanel

¿Cómo cambiar el nombre de usuario de cPanel en WHM?

¿Cómo cambiar la dirección de correo electrónico de cPanel/notificaciones de correo electrónico raíz de WHM?

¿Cómo cambiar la contraseña de la cuenta de cPanel usando WHM?

¿Cómo cambiar el nombre de host de un servidor cPanel/WHM?

Cómo cambiar/restablecer la contraseña raíz de MySQL o MariaDB

¿Cómo encuentro la ubicación MySQL my.cnf?