Ir al contenido
Otras versiones

Cargando…

Cambiar el directorio de datos de MySQL

Detenga el servicio:

Ventana de terminal
$ service mysql stop

Cree una nueva carpeta de destino:

Ventana de terminal
$ mkdir /new_path/mysql_data
$ cp -R -p /var/lib/mysql /new_path/mysql_data

Opcionalmente, modifique la ubicación de la carpeta de datos antigua de MySQL:

Ventana de terminal
$ mv /var/lib/mysql /var/lib/mysql_old

Edite la propiedad datadir del archivo de configuración /etc/mysql/my.cnf:

Ventana de terminal
$ vim /etc/mysql/my.cnf

Cambie la ruta antigua de la carpeta de datos por la nueva:

data-dir = /var/lib/mysql

por

datadir = /new_path/mysql_data

Habilite appamor. Edite el archivo /etc/apparmor.d/usr.sbin.mysqld:

Ventana de terminal
$ vim /etc/apparmor.d/usr.sbin.mysqld

Cambie la ruta antigua de la carpeta de datos por la nueva:

/usr/lib/mysql/plugin/ r,
/usr/lib/mysql/plugin/*.so* mr,

…

/var/lib/mysql/ r,
/var/lib/mysql/** rwk,

por

/new_path/mysql_data/plugin/ r,
/new_path/mysql_data/plugin/*.so* mr,

…

/new_path/mysql_data/ r,
/new_path/mysql_data/** rwk,

Inicie el servicio MySQL:

Ventana de terminal
$ service mysql start

Detenga el servicio:

Ventana de terminal
$ service mysqld stop

Cree una nueva carpeta de destino:

Ventana de terminal
$ mkdir /new_path/mysql_data
$ cp -R -p /var/lib/MySQL /new_path/mysql_data

Opcionalmente, modifique la ubicación de la carpeta de datos antigua de MySQL:

Ventana de terminal
$ mv /var/lib/mysql /var/lib/mysql_old

Edite la propiedad datadir del archivo de configuración /etc/mysql/my.cnf:

Ventana de terminal
$ vim /etc/mysql/my.cnf

Cambie la ruta antigua de la carpeta de datos por la nueva:

data-dir = /var/lib/mysql

por

datadir = /new_path/mysql_data

Habilite AppArmor.

Ventana de terminal
$ yum install policycoreutils-python
$ getenforce
$ semanage fcontext -a -t mysqld_db_t '/new_path/mysql_data(/.*)?'
$ restorecon -Rv /new_path/mysql_data

Inicie el servicio MySQL:

Ventana de terminal
$ service mysqld start

Detenga el servicio:

Ventana de terminal
C:\> net stop mysql56

Cree una nueva carpeta de destino:

Ventana de terminal
C:\> robocopy "C:\ProgramData\MySQL\MySQL Server 8\data" c:\new_path\mysql_data

Opcionalmente, modifique la ubicación de la carpeta de datos antigua de MySQL:

Ventana de terminal
C:\> ren "C:\ProgramData\MySQL\MySQL Server 8\data" "C:\ProgramData\MySQL\MySQL Server 8\data_old"

Edite la propiedad datadir del archivo de configuración C:\ProgramData\MySQL\MySQL Server 8\my.ini:

Cambie la ruta antigua de la carpeta de datos por la nueva:

datadir = C:\ProgramData\MySQL\MySQL Server 8\data

por

datadir = c:\new_path\mysql_data

Inicie el servicio MySQL:

Ventana de terminal
C:\> net start mysql56