Bonjour,
je n'ai pas de connaissance particulière en gestion Oracle.
Dans le cadre d'une migration Oracle 10g vers 12c release 2, j'ai récupéré des scripts d'export et d'import d'un serveur de production (base PROD) vers un serveur de tests (base TEST).
L'utilisation de la commande "imp", dépréciée, génère une erreur du type "un fichier « ImportTEST_sys.sql » a été généré sur erreur « DDL échoué en raison d’une erreur »", et même si l'import va jusqu'au bout, cette erreur est embêtante dans le log d'import.
Je voudrais dès lors utiliser les commandes expdp et impdp.
Mais j'ai besoin d'aide pour valider le passage des anciennes commandes vers les nouvelles.
Export:
1. ancien
Et parfile vaut:Code:
1
2 SET ORACLE_SID=PROD Cmd /c exp SYSADM/******** parfile=D:\Export\ExportPROD.txt
Code:
1
2
3
4
5
6
7 file=D:\Export\PROD.dmp buffer=10000000 log=D:\Export\Journaux\ExportPROD.log direct=N consistent=yes statistics=estimate owner=sysadm
2. nouveau (à valider, DIRECTORY existe)
Code:expdp SYSADM/********@PROD flashback_time=systimestamp DIRECTORY=Export dumpfile=PROD.dmp logfile=ExportPROD.log schemas=SYSADM reuse_dumpfiles=true
Import:
1. ancien (les tables de l'utilisateur SYSADM sont systématiquement détruites avant import via commande sql
set ORACLE_SID=TEST
Et parfile vaut :Code:
1
2
3
4 REM Destruction des tables de SYSADM sqlplus SYSADM/******** @RAZ_TABLES.sql imp SYSADM/******** parfile=D:\Import\ImportTEST.txt
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 buffer=10000000 file=D:\Import\PROD.dmp (recopie du dump de production sur serveur de tests) fromuser=sysadm touser=sysadm rows=Y indexes=Y constraints=Y log=D:\Import\ImportTEST.log show=N grants=y ignore=y commit=y FEEDBACK=1000
2. nouveau (à valider, DIRECTORY existe)
Code:impdp SYSADM/********@TEST SCHEMAS=SYSADM DIRECTORY=ImportTEST LOGFILE=ImportTEST.log DUMPFILE=PROD.DMP TABLE_EXISTS_ACTION=REPLACE/TRUNCATE CONTENT=ALL INCLUDE=Table
Pouvez-vous m'aider?
Merci.
Fixy