DeepEdit!

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

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Определение типа создаваемой связи

Чтобы определить, какой тип связей использовать в распределенной
базе данных, нужно выяснить, какие требования предъявляются приложениями. Каждый тип связей имеет свои достоинства:
Частная связь обеспечивает большую безопасность, чем общая или глобальная, поскольку к удаленной базе данных могут обращаться только владельцы этой связи или подпрограммы, входящие в ту же схему.
Если к удаленной базе данных Oracle будет обращаться большое число пользователей, то можно создать одну общую связь. Тем самым вы обеспечите прозрачный доступ к удаленной базе данных сразу всем пользователям.
При использовании службы имен Oracle доступ многих пользователей к нескольким базам данных удобно организовывать с помощью глобальных связей баз данных. Такой централизованный подход упрощает управление связями.
Синтаксис команды создания связи базы данных
Синтаксис, применяемый для создания общей связи базы данных, таков:
create public database link <имя_связи>
connect to <пользователь> identified by <пароль> using строка соединения
В качестве примера создадим общую связь базы данных с использованием глобальных имен, о которых говорилось выше. Чтобы соединить . базу данных в Вене, штат Вирджиния, со схемой ORD в калифорнийской базе данных, можно использовать следующую команду:
create public database link US.СА.FRESNO.ORDERS connect to ORD identified by HAPPY_2B
using '@0RDDB';
Теперь создадим частную связь базы данных, не используя глобальные соглашения об именах. Допустим, что вам нужно соединить схему NELSON в базе данных MYDB1 с одноименной схемой в базе данных Войдя под именем NELSON, вы должны использовать следующий синтаксис:
create database link MYLINK
connect to NELSON identified by 0S0SILLY1 using '@MYDB2';
Поскольку в этом случае пользователи обеих баз данных совпадают, можно также указать параметр current_user, описанный в таблице 2.7. В этой таблице перечислены все параметры, которые можно использовать в команде create database link, и даны их объяснения. Чуть ниже рассмотрим параметр current_user более подробно.
Перед тем как просматривать таблицу 2.7, взгляните на синтаксис оператора создания связи базы данных, приведенный в документации Oracle:
create [public | shared] database link <связь_базы_данных> i[connect to [сиггепг_изег|<пользователь> identified by <пароль>]] [authenticated by <схема> identified by <пароль>]
using •<строка_соединения>';
При создании связей баз нужно учитывать ряд ограничений:
•        Нельзя создавать связь базы данных в схеме другого пользователя.
SUE не может создать связь базы данных в схеме, принадлежащей CATHY.
•        Поскольку в именах связей баз данных допустимы точки, связь нельзя квалифицировать именем схемы.  Например, имя
будет воспринято Oracle как полное имя связи, а не имя ORDDB в схеме NELSON.
•        Параметр инициализации        определяет и ограничивает количество разных связей баз данных, которые могут появляться в одном операторе.
 









jAntivirus