Importación de datos de una base de datos de MariaDB externa a una instancia de base de datos de Amazon RDS para MariaDB
Puede importar datos desde una base de datos de MariaDB existente a una instancia de base de datos de RDS para MariaDB. Esto se lleva a cabo copiando la base de datos con mysqldumpmysqldump o mariadb-dump suele utilizarse para crear copias de seguridad y transferir datos de un servidor de MariaDB a otro. Se incluye con el software de cliente de MariaDB.
A partir de MariaDB 11.0.1, debe usar mariadb-dump en lugar de mysqldump.
Un comando mysqldump típico para mover datos de una base de datos externa a una instancia de base de datos de Amazon RDS tiene el aspecto del ejemplo siguiente. Sustituya valores con su propia información. Para MariaDB 11.0.1 y versiones posteriores, sustituya mysqldump por mariadb-dump.
mysqldump -ulocal_user\ --databasesdatabase_name\ --single-transaction \ --compress \ --order-by-primary \ --routines=0 \ --triggers=0 \ --events=0 \ -plocal_password| mariadb -uRDS_user\ --port=port_number\ --host=host_name\ -pRDS_password
importante
Asegúrese de no dejar un espacio entre la opción -p y la contraseña especificada.
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en este ejemplo.
Asegúrese de conocer las siguientes recomendaciones y consideraciones:
-
Excluya los siguientes esquemas del archivo de volcado:
-
sys -
performance_schema -
information_schema
La utilidad
mysqldumpymariadb-dumpexcluye estos esquemas de forma predeterminada. -
-
Si necesita migrar usuarios y privilegios, considere la posibilidad de usar una herramienta que genere el lenguaje de control de datos (DCL) para volver a crearlos, como la utilidad pt-show-grants
. -
Para realizar la importación, asegúrese de que el usuario que lo haga tenga acceso a la instancia de base de datos. Para obtener más información, consulte Control de acceso con grupos de seguridad.
Los parámetros son los siguientes:
-
-u: use este parámetro para especificar un nombre de usuario. La primera vez que utilice este parámetro, especifique el nombre de una cuenta de usuario en la base de datos de MariaDB local que identifique con el parámetrolocal_user--databases. -
--databases: use para especificar el nombre de la base de datos en la instancia de MariaDB local que desea importar a Amazon RDS.database_name -
--single-transaction: use este parámetro para asegurarse de que todos los datos cargados desde la base de datos local sean coherentes en un momento determinado. Si hay otros procesos que modifican los datos mientrasmysqldumpomariadb-dumplos lee, el uso de este parámetro ayuda a mantener la integridad de los datos. -
--compress: use este parámetro para reducir el consumo de ancho de banda mediante la compresión de los datos de la base de datos local antes de su envío a Amazon RDS. -
--order-by-primary: use este parámetro para reducir el tiempo de carga mediante la ordenación de los datos de cada tabla según su clave primaria. -
--routines: úselo si existen rutinas como procedimientos almacenados o funciones en la base de datos que está copiando. Establezca el parámetro en0, lo que excluye las rutinas durante el proceso de importación. Después, vuelva a crear manualmente las rutinas en la base de datos de Amazon RDS. -
--triggers: úselo si existen desencadenadores en la base de datos que va a copiar. Establezca el parámetro en0, lo que excluye los desencadenadores durante el proceso de importación. Después, vuelva a crear manualmente los desencadenadores en la base de datos de Amazon RDS. -
--events: úselo si existen eventos en la base de datos que está copiando. Establezca el parámetro en0, lo que excluye los eventos durante el proceso de importación. Después, vuelva a crear manualmente los eventos en la base de datos de Amazon RDS. -
-p: use este parámetro para especificar una contraseña. La primera vez que use este parámetro, especifique la contraseña de la cuenta de usuario identificada con el primer parámetrolocal_password-u. -
-u: use este parámetro para especificar un nombre de usuario. La segunda vez que utilice este parámetro, especifique el nombre de una cuenta de usuario en la base de datos predeterminada de la instancia de base de datos de MariaDB identificada con el parámetroRDS_user--host. -
--port: use para especificar el puerto de la instancia de base de datos de MariaDB. El valor predeterminado es 3306, salvo que se haya cambiado al crear la instancia de base de datos.port_number -
--host– se utiliza para especificar el nombre del sistema de nombres de dominio (DNS) del punto de conexión de la instancia de base de datos de Amazon RDS, por ejemplo,host_namemyinstance.123456789012.us-east-1.rds.amazonaws.com. Puede encontrar el valor del punto de conexión en los detalles de la instancia de base de datos en la consola de Amazon RDS. -
-p: use este parámetro para especificar una contraseña. La segunda vez que use este parámetro, debe especificar la contraseña de la cuenta de usuario identificada por el segundo parámetroRDS_password-u.
Asegúrese de crear de forma manual procedimientos almacenados, desencadenadores, funciones o eventos en su base de datos de Amazon RDS. Si hay alguno de estos objetos en la base de datos que va a copiar, exclúyalo cuando ejecute mysqldump o mariadb-dump. Para hacerlo, incluya los siguientes parámetros con el comando mysqldump o mariadb-dump:
-
--routines=0 -
--triggers=0 -
--events=0
Ejemplo
En el siguiente ejemplo se copia la base de datos de ejemplo world del host local en una instancia de base de datos de RDS para MariaDB. Sustituya valores con su propia información.
Para Linux, macOS o Unix:
sudo mariadb-dump -ulocal_user\ --databasesworld\ --single-transaction \ --compress \ --order-by-primary \ --routines=0 \ --triggers=0 \ --events=0 \ -plocal_password| mariadb -urds_user\ --port=3306\ --host=my_instance.123456789012.us-east-1.rds.amazonaws.com\ -pRDS_password
Para Windows:
Ejecute el siguiente comando en un símbolo del sistema que se haya abierto con un clic con el botón derecho en Símbolo del sistema del menú de programas de Windows y con la selección de Ejecutar como administrador. Sustituya valores con su propia información.
mariadb-dump -ulocal_user^ --databasesworld^ --single-transaction ^ --compress ^ --order-by-primary ^ --routines=0 ^ --triggers=0 ^ --events=0 ^ -plocal_password| mariadb -uRDS_user^ --port=3306^ --host=my_instance.123456789012.us-east-1.rds.amazonaws.com^ -pRDS_password
nota
Como práctica recomendada de seguridad, especifique credenciales distintas de las que se muestran en el ejemplo.