Пошаговое копирование базы данных Oracle SQL Developer

У меня большие проблемы с копированием базы данных Oracle на тот же сервер, но с другим именем, для использования в качестве базы данных разработки.

Я привык к SQL Server, я новичок в Oracle (11g).

Я хотел использовать «Копию базы данных» из SQL Developer, но все время получаю ошибки. Сначала речь шла об отсутствии табличных пространств. Затем, когда я вручную создал их в своей новой пустой БД, ошибки были связаны с отсутствующими пользователями. Я хотел создать пользователей вручную, но тогда мне сначала нужно было создать недостающие роли. Когда все это было сделано, это не удалось из-за отсутствия индексов ...

Как скопировать все, что мне нужно, с помощью функции "Копия базы данных"?

Любые советы высоко ценится!


person SonOfGrey    schedule 07.11.2012    source источник
comment
Почему бы тебе не использовать клон?   -  person Jacob    schedule 07.11.2012
comment
... или даже expdp и impdp?   -  person ppeterka    schedule 07.11.2012
comment
Я бы хотел использовать все, что легко. Где мне найти эти функции clone, expdp или imdp? Спасибо!   -  person SonOfGrey    schedule 07.11.2012


Ответы (3)


Копия SQL Developer будет копировать только объекты между схемами. Вы хотите просто сделать копию схемы? Или полностью новую базу данных, включая все схемы?

Судя по вашему вопросу, я предполагаю второе. В таком случае вам может помочь "дублирование базы данных" RMAN.

См. http://www.oracle-base.com/articles/11g/duplicate-database-using-rman-11gr2.php на отличном сайте Тима Холла.

person Colin 't Hart    schedule 07.11.2012
comment
Действительно ... Мне нужна совершенно новая БД, идентичная исходной БД. Я проверю вашу ссылку ... на первый взгляд кажется, что перейти по ней легче, чем по некоторым другим, которые я видел. Я дам вам знать, если это сработало (завтра). Спасибо! - person SonOfGrey; 07.11.2012
comment
Инструкции предназначены для клонирования БД на другой сервер. Я нашел инструкции по клонированию на тот же сервер с RMAN, но это намного сложнее, чем должно быть. Я действительно поражен ужасной процедурой, которую вам нужно пройти, чтобы просто скопировать БД. У нас почти 2013 год, вы знаете ... можно было бы ожидать мастера и нескольких щелчков мышью, как в случае с SQL Server. Думаю, мне придется найти кого-нибудь, кто сделает это за меня, потому что я трачу на это драгоценное время. Спасибо за попытку ... - person SonOfGrey; 08.11.2012
comment
Да, аминь на это. Oracle действительно является технологией 1980-х годов, когда дело доходит до компоновки файловой системы и проблем, через которые вы должны пройти, чтобы найти наиболее распространенные варианты использования. - person Colin 't Hart; 08.11.2012

Лучший способ для вас - создать нового пользователя:

Запустите оболочку MSDOS. Подключитесь к базе данных, используя учетную запись системного администратора sqlplus / как sysdba.

Затем напишите эти последовательности:

СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ user2 IDENTIFIED BY user2password;

ПРЕДОСТАВИТЬ ВСЕ ПРИВИЛЕГИИ пользователю 2 С ОПЦИЕЙ АДМИНИСТРАТОРА;

РАЗРЕШИТЬ ПОДКЛЮЧЕНИЕ К пользователю 2;

ПРЕДОСТАВИТЬ DBA пользователю2;

выйти из подсказки оракула

Снова в оболочке MSDOS экспортируйте текущего пользователя user1 следующим образом:

exp user1 / password

или exp user1 / password @ connectString

если у вас есть строка подключения, указанная в tnsnames.ora Ответьте на все вопросы по умолчанию, дайте имя вашему файлу экспорта и укажите, что вы хотите экспортировать только пользователя user1

Затем приступайте к импорту дампа в вашем новом user2 следующим образом:

imp user2 / password2 fromuser = user1 touser = user2

По умолчанию ответьте на все вопросы, дайте имя своему экспортному файлу (если вы не измените папку CmdShell по умолчанию, вам не нужно будет указывать всю папку)

person Battail    schedule 07.11.2012
comment
Это просто создает другую схему с тем же содержимым, а не новую базу данных. - person Colin 't Hart; 07.11.2012
comment
И зачем предоставлять все привилегии под солнцем И администратором баз данных владельцу второй схемы? - person Colin 't Hart; 07.11.2012

Интересная ссылка на это из документации Oracle:

http://docs.oracle.com/cd/E11882_01/backup.112/e10642/rcmdupdb.htm#BRADV010

person Alfonso Leon    schedule 30.01.2014