Как копировать данные, зашифрованные dbms_obfuscation_toolkit.DESEncrypt - PullRequest
1 голос
/ 15 октября 2010

У меня есть таблица базы данных Oracle (10.2.0.4) со столбцом, зашифрованным набором инструментов dbms_obfuscation_toolkit.DESEncrypt.

Некоторые из наших данных были испорчены тем, что они были повторно зашифрованы другим ключом.

Я хочу провести тестирование этих данных, чтобы попытаться восстановить их. Поэтому я хочу скопировать данные из нашей действующей системы и в тестовую систему.

Я пытался просто экспортировать данные из SQL Developer (в различных текстовых форматах), но «двоичная» природа зашифрованных данных, похоже, нарушает формат файла.

Я пробовал exp, но сообщалось об ошибках (хотя я не уверен, что это связано с зашифрованными данными или нет).

Как я могу скопировать только данные одной таблицы из одной базы данных в другую?

Спасибо.


Ошибки, которые я получил при экспорте таблицы, приведены ниже. Я делал это с локального компьютера, подключенного к удаленной базе данных:

c:\>exp <user>/<password>@<sid> FILE=export.dmp TABLES=(TABLE1)

Export: Release 11.1.0.6.0 - Production on Thu Oct 14 20:46:51 2010

Copyright (c) 1982, 2007, Oracle.  All rights reserved.


Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit
Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Export done in WE8ISO8859P1 character set and AL16UTF16 NCHAR character set
server uses WE8ISO8859P15 character set (possible charset conversion)

About to export specified tables via Conventional Path ...
. . exporting table                   TABLE1
EXP-00008: ORACLE error 904 encountered
ORA-00904: "MAXSIZE": invalid identifier

Ответы [ 2 ]

1 голос
/ 18 октября 2010

Оказалось, что моя тестовая база данных Windows имела немного другую кодировку набора символов по сравнению с нашей действующей (unix) системой - WE8ISO8859P1 -v- WE8ISO8859P15.Я выполнил преобразование набора символов в своей тестовой базе данных, используя инструкции здесь , а затем смог импортировать данные.

1 голос
/ 15 октября 2010

Я бы попробовал с ссылкой на базу данных. Если вы не можете создать ссылку на базу данных, вы можете попробовать команду COPY SQL * Plus, хотя я не уверен, что она будет работать с зашифрованными столбцами (похоже, эта команда устарел в новейших выпусках ).

Если это не удастся, лучшим инструментом для экспорта / импорта данных из Oracle в Oracle, вероятно, будет Data Pump (входит в БД).

...