Започвайки от Oracle 10g, можете да използвате Data Pump клиенти на командния ред
expdb
и impdb
за експортиране/импортиране на данни и/или схема от една DB към друга. В интерес на истината тези две помощни програми от командния ред са само обвивки, които "използват процедурите, предоставени в пакета DBMS_DATAPUMP PL/SQL, за да изпълняват команди за експортиране и импортиране, като използват параметрите, въведени в командния ред." (цитирано от документацията на Oracle)
Като се имат предвид вашите нужди, ще трябва да създадете директория, след което да генерирате пълен дъмп на вашата база данни с помощта на 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
Тъй като дъмпът е написан с помощта на някакъв двоичен формат, ще трябва да използвате съответната помощна програма за импортиране, за да (повторно) импортирате вашата DB. Основно заместване на expdb
от impdb
в горната команда:
sh$ impdp [email protected] full=Y directory=DUMP_DIR dumpfile=db.dmp logfile=db.log
За прост дъмп на таблица използвайте тази версия вместо това:
sh$ expdp [email protected] tables=DEPT,EMP directory=DUMP_DIR dumpfile=db.dmp logfile=db.log
Както забелязахте, можете да го използвате с вашия стандартен потребителски акаунт, при условие че имате достъп до дадената директория (GRANT READ, WRITE ON DIRECTORY dump_dir TO sylvain;
).
За подробни обяснения на употреба вижте