Si necesita trasladar datos fuera de ApsaraDB RDS for PostgreSQL (por ejemplo, para dar de baja una instancia, archivar información o sincronizar con un entorno de desarrollo), descargue una instantánea de copia de seguridad como archivo CSV o SQL y restáurela en una instancia de PostgreSQL autogestionada mediante el script de Python proporcionado.
Elegir un método de restauración
Antes de empezar, confirme que este método se ajusta a su situación:
|
Método |
Recomendado para |
Guía |
|
Archivo CSV o SQL (esta guía) |
Restauración completa de instantáneas desde una instancia de disco en la nube |
Esta página |
|
Copia de seguridad lógica con pg_restore |
Restauraciones parciales, como una sola tabla |
|
|
Data Transmission Service (DTS) |
Mínimo esfuerzo manual y sincronización continua |
Para consultar una descripción general de todas las opciones de restauración, consulte Overview of data restoration methods.
Requisitos previos
Antes de empezar, asegúrese de que:
Su instancia de RDS utiliza discos en la nube; este método solo aplica a instancias de disco en la nube.
-
Python 3 está instalado en la computadora destino:
python3 --version La instancia de PostgreSQL autogestionada destino no contiene ninguna base de datos con el mismo nombre que la que va a importar. De lo contrario, la importación fallará; elimine o cambie el nombre de la base de datos en conflicto antes de continuar.
Los pasos siguientes utilizan un entorno CentOS 7.8 de 64 bits como ejemplo. Si su sistema operativo es diferente, utilice los comandos equivalentes para su sistema.
Restaurar datos desde un archivo de copia de seguridad
Inicie sesión en la consola de ApsaraDB RDS y descargue el archivo de copia de seguridad de su instancia como archivo CSV o SQL. Para obtener instrucciones, consulte Download backup files.
-
Descomprima el paquete descargado:
tar -zxvf <package-name>.tar.gz -C <target-directory>Por ejemplo, para descomprimir
backup.tar.gzen/home/ecs-test-user:tar -zxvf backup.tar.gz -C /home/ecs-test-user -
(Opcional) Confirme que los archivos se extrajeron en el directorio destino:
ls -al /home/ecs-test-user Descargue el script de Python para PostgreSQL (
restore_from_downloads.py) en la misma computadora.-
Otorgue permisos de ejecución al script:
chmod +x ./restore_from_downloads.py -
Ejecute el script para restaurar los datos en la instancia de PostgreSQL autogestionada:
Parámetro
Descripción
Ejemplo
<data-directory>Directorio que contiene los archivos CSV o SQL extraídos
/home/ecs-test-user<host>Dirección del host de la instancia de PostgreSQL autogestionada
127.0.0.1<port>Número de puerto
5432<username>Nombre de usuario de la cuenta de la base de datos. Si el nombre de usuario contiene caracteres especiales como
#o espacios, escríbalo entre comillas dobles (").postgres<password>Contraseña de la cuenta de la base de datos. Si la contraseña contiene caracteres especiales como
#o espacios, escríbala entre comillas dobles (")."#Tes********"python3 restore_from_downloads.py <data-directory> <host> <port> <username> <password>Ejemplo:
python3 restore_from_downloads.py /home/ecs-test-user 127.0.0.1 5432 postgres "#Tes********"