DeepEdit!

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

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

Глобальное именование

В Oracle нет правила, запрещающего иметь на разных машинах базы данных с одинаковыми именами. Но как быть, если вы создали на нескольких машинах базы данных с именем ORDDB, а теперь хотите обращаться к ним одновременно? Как определить, с какой из них в действительности устанавливается соединение?
Помимо собственных имен все базы данных в системе должны иметь уникальные глобальные имена. Как правило, необходимой уникальностью обладают имена доменов узлов. Следовательно, для создания глобального имени базы данных нужно поместить имя сетевого домена перед ее индивидуальным именем. Предположим, что все базы данных, с которыми мы будем иметь дело в этом примере, принадлежат некоей компании XYZ. На рис. 2.5 показана иерархическая схема офисов и баз данных этой компании. Четыре производственные базы данных расположены в разных частях Соединенных Штатов. Базы данных в Вене, штат Вирджиния, и во Фресно, штат Калифорния, принимают и хранят заказы, а две базы данных в Денвере, штат Колорадо, предназначены для контроля за производством и поставками. Имена соответствующих сетевых доменов начинаются с "us", чтобы отметить факт нахождения всех этих доменов на территории Соединенных Штатов. Глобальным именем сетевого домена для базы данных из Вирджинии будет us.va.vienna.orders, а для базы данных из Калифорнии — us.ca.fresno.orders. В Денвере нет базы данных заказов, а домен базы данных поставок называется us.co.denver.shipping. Чтобы составить глобальное имя базы данных, достаточно добавить к ее локальному имени имя домена. Так, глобальное имя базы данных ORDDB из Вирджинии будет иметь вид us.va.vienna.orders.orddb.
Рис. 2.5. Иерархическая схема американского отделения компании XYZ
-
Чтобы включить механизм глобального именования, необходимо установить для параметра инициализации GLOBAL_NAMES значение TRUE. После этого Oracle будет поддерживать соответствие между именами связей баз данных и глобальными именами удаленных баз данных. Когда GLOBALNAMES имеет значение FALSE, глобальные имена использовать нельзя. Если вам потребуется более одной общей связи с одной и той же удаленной базой данных, то вы также не сможете использовать глобальное именование. Однако корпорация Oracle настоятельно рекомендует применять глобальное именование везде, где это возможно, поскольку оно требуется для функционирования многих полезных средств Oracle, в том числе усовершенствованного тиражирования (Oracle Advanced Replication).
Теперь, когда вы поняли, как создаются и используются глобальные имена, можно рассмотреть пример использования связи базы данных для сбора информации о заказах. Связи баз данных отлично подходят для того, чтобы скрывать истинное местонахождение данных. Они позволяют получать информацию из удаленных баз данных простым и прозрачным способом. С помощью этих связей пользователи могут вставлять, обновлять и удалять информацию одновременно в локальных и удаленных базах данных.
 









jAntivirus