export > 2G

vyv
Дата: 13.06.2006 05:25:52
Выполняю экспорт азы Oracle 7( SCO), командой
exp userid=sys buffer=81920 file=exp_full compress=N log=exp_full full=y consistent=y statistics=none
У SCO максимальный размер файла 2G, соответсвенно экспорт останавливается с ошибкой с записью в файл когда размер файла достигает 2G.
Подскажите как можно выполнить экспорт?
Вячеслав Любомудров
Дата: 13.06.2006 05:28:13
Maxman
Дата: 13.06.2006 05:37:21
Если система не позволяет создать достаточно большой файл экспорта (например

при ограничении системы на создание файлов размером более 2Гб), можно

воспользоваться режимом экспорта в пайп/импорта из пайпа. Для этого

необходимо:

- создать пайп (mknod ./exp_pipe p)

- задать нарезку данных, передаваемых в пайп (split -b 2000m

./exp_pipe expdat_&)

- выполнить экспорт, указывая в качестве экспортного файла пайп

exp_pipe (exp sys/sys file=exp_pipe log=export.log full=y ...)



В результате произведенных действий будет получено несколько файлов,содержащих

дамп БД (expdat_aa, expdat_ab, expdat_aс и т.д.)


Если использовался метод экспорта через пайп, необходимо:

- создать пайп (mknod ./imp_pipe p)

- отправить нарезанный дамп БД в пайп (cat expdat_[a-z] >./imp_pipe)

- выполнить импорт, указывая в качестве файла импорта пайп imp_pipe

(impsys/sys file=imp_pipe log=import.log full=y ...)
ggg123
Дата: 13.06.2006 08:24:08
А выполнить импорт в Оракле под Windows удастся сделать?
BMan
Дата: 13.06.2006 09:31:08
Привет!
Да, есть рецепт и под Windows. Авторство не моё, а (c) Вадим Лежнин, ФОРС, 2002 г.
Мне нужно было сделать фулл экспорта из Oracle 8.0 на AIX (IBM'овский Unix), а места на дисках AIX'а не было.
Всё отлично работает :-)

===============================================
1) Установите, или соберите sshd под AIX
http://www.bull.de/pub
запустите sshd

2) Установите bash для NT
http://www.cygwin.com
telnet aix
проверте коннекцию из под NT
С:> ssh oracle@aix ls
password: ********
...
3) Создайте pipe и запустите на него exp на aix
login: oracle
passwd: ***********
$ mkfifo expdata.dmp
$ NLS_LANG=american_america.cl8mswin1251
$ export NLS_LANG
$ exp userid=sys/password file=expdata.dmp buffer=10000000 log=exp full=y

4)

далее из под NT
ssh oracle@aix "cat expdata.dmp" | split -b 1024000000
все

===========
востановление:
1) login: oracle
password: *********
$ NLS_LANG=american_america.cl8mswin1251;export NLS_LANG
$ imp userid=sys/password file=expdata.dmp log=imp commit=y full=y
buffer=10000000

2) из под NT
C:> cat *|ssh oracle@aix "cat >expdat.dmp"

Best regards, Vadim Lejnin

Oracle and Unix Administrator of company FORS
Technical Support Department
Moscow, 2002
============================================
Feech
Дата: 13.06.2006 11:31:11
А параметра filesize=NNNN у седьмого оракла нет?
BMan
Дата: 13.06.2006 17:03:23
В том-то вся соль, что данных параметр утилиты exp появился только в Oracle 8i