Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment puis-je recréer au mieux une base de données Oracle ?

À partir d'Oracle 10g, vous pouvez utiliser la Data Pump clients en ligne de commande expdb et impdb pour exporter/importer des données et/ou un schéma d'une BD à une autre. En fait, ces deux utilitaires de ligne de commande ne sont que des wrappers qui "utilisent les procédures fournies dans le package DBMS_DATAPUMP PL/SQL pour exécuter les commandes d'exportation et d'importation, en utilisant les paramètres entrés sur la ligne de commande." (cité de la documentation d'Oracle)

Compte tenu de vos besoins, vous devrez créer un répertoire puis générer un dump complet de votre base de données à l'aide de expdb :

SQL> CREATE OR REPLACE DIRECTORY dump_dir AS '/path/to/dump/folder/';
sh$ expdp [email protected] full=Y directory=DUMP_DIR dumpfile=db.dmp logfile=db.log

Comme le dump est écrit en utilisant un format binaire, vous devrez utiliser l'utilitaire d'importation correspondant pour (ré)importer votre base de données. Remplacer essentiellement expdb par impdb dans la commande ci-dessus :

sh$ impdp [email protected] full=Y directory=DUMP_DIR dumpfile=db.dmp logfile=db.log

Pour un simple vidage de table, utilisez plutôt cette version :

sh$ expdp [email protected] tables=DEPT,EMP directory=DUMP_DIR dumpfile=db.dmp logfile=db.log

Comme vous l'avez remarqué, vous pouvez l'utiliser avec votre compte utilisateur standard, à condition d'avoir accès au répertoire donné (GRANT READ, WRITE ON DIRECTORY dump_dir TO sylvain; ).

Pour des explications détaillées sur l'utilisation, voir