bonjour,
j'utilise oracle 8i, je veux importer un fichier dmp, dans ma base sur un schéma qui existe déja, et je veux que l'import ecrase le shema existant par celui importer.
Merci
bonjour,
j'utilise oracle 8i, je veux importer un fichier dmp, dans ma base sur un schéma qui existe déja, et je veux que l'import ecrase le shema existant par celui importer.
Merci
Bonjour,
tu supprimes d'abord le schema
tu re-crees le schema
tu importes
c'est le plus propre
sinon il y a ignore=Y mais.... il va y avoir plein d'erreur
donc ce n'est pas propre
merci pour votre réponse.
le problème c'est que j'ai developpé un logiciel sous oracle 8i, et je l'ai installé sur deux machines (la machine de l'utilisateur dans la société et la machine du responsable dans sa maison pas de réseau entre eux) avec le même schéma.
le responsable veut voir les modifications faites par l'utilisateur au cours de la journée (achat, vente, caisse) de sa maison.
c'est lui qui doit faire l'export du pc1, ensuite il supprime le shcéma du pc2 et il import le fichier DMP.
c'est pinible pour lui et il n'est pas connaisseur dans le domaine.
Merci de m'aider pour résoudre ce problème.
Bonjour,
tu peux faire des scripts .BAT pour ca ...
1 pour export
2. pour drop user cascade;
create user
import
on n'a rien sans rien !!
ext ce que tu peut me guider un peu pour la structure du fichier BAT,
je peux regrouper toutes les commandes ensemble.
la syntaxe comment serai elle?
NB :: 8I n'est plus supporté !!!
Voir les possibilité d'aller sur 10G ou 11G
avec expdp tout ca serait plus simple
Tu dois creer le repertoire
c:\export\scripts\sql
tu lances le fichier export
pour ca tu as besoin de 1 fichier : reverse.sql
il genere un fichier RECREATE_USER.sql
Pour l'import : a lancer sur le 2 PC
Creer le meme repertoire sur le PC
copier les fichiers sql et dmp
lancer le fichier import.bat
il va supprimer le user
creer le user
et importer
export
import
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 set ORACLE_SID=XXXXXXXXXXXXXXX set REP=c:\exports\scripts set REP_SCRIPT=%REP%\Sql set FIC_LOG=%REP%\log_export.txt set CONNECT_USER="system/PASSWD@%ORACLE_SID%" exp %CONNECT_USER% file=c:\temp\scott.dmp direct=y buffer=10000000 owner=scott sqlplus -s %CONNECT_USER% @%REP_SCRIPT%\reverse.sql >> %FIC_LOG% 2>&1 echo exit >> %REP_SCRIPT%\RECREATE_USER.sql
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 set ORACLE_SID=XXXXXXXXX set REP=c:\exports\scripts set REP_SCRIPT=%REP%\Sql set FIC_LOG =%REP%\import_scott.log set CONNECT_USER="system/passwd@%ORACLE_SID%" setlocal ENABLEDELAYEDEXPANSION set SCRIPTNAME=%~n0 sqlplus -s %CONNECT_USER% @%REP_SCRIPT%\drop_user.sql >> %FIC_LOG% 2>&1 sqlplus -s %CONNECT_USER% @%REP_SCRIPT%\RECREATE_USER.sql >> %FIC_LOG% 2>&1 imp %CONNECT_USER% fromuser=scott touser=scott file=c:\temp\scott.dmp COMMIT=N buffer=10000000 log=%REP%\IMPORT_log.log
fichiers sql
fichier drop_user.sql
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2drop user scott cascade; exit
fichier reverse.sql
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 set line 200 pages 0 trimspool on head off feed off spool C:\exports\scripts\sql\RECREATE_USER.sql select 'create user '||username||' identified by '||password||' default tablespace '||default_tablespace||' temporary tablespace '||temporary_tablespace||' ;' from dba_users where username='SCOTT'; SELECT 'GRANT '||GRANTED_ROLE||' TO '||GRANTEE||';' FROM DBA_ROLE_PRIVS WHERE GRANTEE='SCOTT'; SELECT 'GRANT '||PRIVILEGE||' TO '||GRANTEE||';' FROM DBA_SYS_PRIVS WHERE GRANTEE='SCOTT'; spool off exit
Partager