Migration de votre base de données PostgreSQL par exportation et importation

S’APPLIQUE À : Azure Database pour PostgreSQL – Serveur unique Azure Database pour PostgreSQL – Serveur flexible

Vous pouvez utiliser pg_dump pour extraire une base de données PostgreSQL dans un fichier de script et psql pour importer les données dans la base de données cible à partir de ce fichier. Si vous souhaitez effectuer une migration de toutes les bases de données, vous pouvez utiliser pg_dumpall pour vider toutes les bases de données dans un fichier de script.

Prérequis

Pour parcourir ce guide pratique, vous avez besoin des éléments suivants :

Suivez ces étapes pour exporter et importer votre base de données PostgreSQL.

Création d’un fichier de script à l’aide de pg_dump qui contient les données à charger

Pour exporter votre base de données PostgreSQL existante en local ou dans une machine virtuelle vers un fichier de script sql, exécutez la commande suivante dans votre environnement existant :

pg_dump --host=<host> --username=<name> --dbname=<database name> --file=<database>.sql

Par exemple, si vous avez un serveur local contenant une base de données appelée testdb :

pg_dump --host=localhost --username=masterlogin --dbname=testdb --file=testdb.sql

Importation des données dans la base de données cible Azure Database pour PostgreSQL

Vous pouvez utiliser la ligne de commande psql et le paramètre --dbname (-d) pour importer les données dans le serveur Azure Database pour PostrgeSQL et charger les données à partir du fichier sql.

psql --file=<database>.sql --host=<server name> --port=5432 --username=<user> --dbname=<target database name>

Cet exemple utilise l’utilitaire psql et un fichier de script nommé testdb.sql de l’étape précédente pour importer les données dans la base de données mypgsqldb sur le serveur cible mydemoserver.postgres.database.azure.com.

Pour un serveur unique, utilisez cette commande

psql --file=testdb.sql --host=mydemoserver.database.windows.net --port=5432 --username=mylogin@mydemoserver --dbname=mypgsqldb

Pour un serveur flexible, utilisez cette commande

psql --file=testdb.sql --host=mydemoserver.database.windows.net --port=5432 --username=mylogin --dbname=mypgsqldb

Étapes suivantes