8.2.5.3. Actualización en el lugar utilizando la herramienta mysql_upgrade
Para migrar los archivos de la base de datos a Red Hat Enterprise Linux 8, los usuarios de MariaDB en Red Hat Enterprise Linux 7 necesitan realizar la actualización in situ utilizando la herramienta mysql_upgrade
. La herramienta mysql_upgrade
es proporcionada por el subpaquete mariadb-server-utils
, que se instala como una dependencia del paquete mariadb-server
.
Para realizar una actualización in situ, debe copiar los archivos de datos binarios al directorio de datos /var/lib/mysql/
en el sistema Red Hat Enterprise Linux 8 y utilizar la herramienta mysql_upgrade
.
Puede utilizar este método para migrar datos de:
- La versión de Red Hat Enterprise Linux 7 de MariaDB 5.5
Las versiones de Red Hat Software Collections de:
- MariaDB 5.5 (ya no es compatible)
- MariaDB 10.0 (ya no es compatible)
- MariaDB 10.1 (ya no es compatible)
- MariaDB 10.2
Tenga en cuenta que se recomienda actualizar a MariaDB 10.2 por una versión sucesivamente. Consulte los respectivos capítulos de migración en las Notas de la versión de Red Hat Software Collections.
Si está actualizando desde la versión de Red Hat Enterprise Linux 7 de MariaDB, los datos de origen se almacenan en el directorio /var/lib/mysql/
. En el caso de las versiones de Red Hat Software Collections de MariaDB, el directorio de datos fuente es /var/opt/rh/<collection_name>/lib/mysql/
(con la excepción de mariadb55
, que utiliza el directorio de datos /opt/rh/mariadb55/root/var/lib/mysql/
).
Antes de realizar la actualización, haga una copia de seguridad de todos sus datos almacenados en las bases de datos de MariaDB.
Para realizar la actualización in situ, cambie al usuario root
y utilice el siguiente procedimiento:
Asegúrese de que el paquete
mariadb-server
está instalado en el sistema Red Hat Enterprise Linux 8:# yum install mariadb-server
Asegúrese de que el demonio mariadb no se está ejecutando en ninguno de los sistemas de origen y destino en el momento de copiar los datos:
# systemctl stop mariadb.service
-
Copie los datos de la ubicación de origen al directorio
/var/lib/mysql/
en el sistema de destino de Red Hat Enterprise Linux 8. Establezca los permisos adecuados y el contexto SELinux para los archivos copiados en el sistema de destino:
# restorecon -vr /var/lib/mysql
Inicie el servidor MariaDB en el sistema de destino:
# systemctl start mariadb.service
Ejecute el comando
mysql_upgrade
para comprobar y reparar las tablas internas:# systemctl mysql_upgrade
-
Una vez completada la actualización, asegúrese de que todos los archivos de configuración dentro del directorio
/etc/my.cnf.d/
incluyan sólo opciones válidas para MariaDB 10.3.
Existen ciertos riesgos y problemas conocidos relacionados con la actualización in situ. Por ejemplo, es posible que algunas consultas no funcionen o que se ejecuten en un orden diferente al de antes de la actualización. Para más información sobre estos riesgos y problemas, y para información general sobre la actualización in situ, consulte las Notas de la versión de MariaDB 10.3.