2008-09-04 13 views

ответ

120

@DAC

Вкратце: SID = уникальное имя вашей БД , ServiceName = псевдоним используется при подключении

Не совсем верно .. SID = уникальное имя ИНСТАНЦИИ (например, процесс оракула работающий на машине). Oracle рассматривает «базу данных» как файлы.

Service Name = псевдоним для INSTANCE (или многих случаев). Основная цель этого заключается в том, что если вы используете кластер, клиент может сказать «подключить меня к SALES.acme.com», администратор базы данных может «на лету» изменить количество экземпляров, доступных для запросов SALES.acme.com, или даже переместить SALES.acme.com в совершенно другую базу данных без необходимости изменения каких-либо параметров клиентом.

+1

Итак, в вашем примере могут быть идентификаторы SID `Sales1`,` Sales2` и `Sales3`, все из которых доступны по названию сервиса` Sales`? – 2014-09-04 16:51:52

21

Пожалуйста, см: http://www.sap-img.com/oracle-database/finding-oracle-sid-of-a-database.htm

В чем разница между Oracle УЛМ и Oracle Service ИМЕНА. Один инструмент настройки ищет СЕРВИСНОЕ ИМЯ и , а затем ищет SID! Что происходит ?!

Oracle SID является уникальным именем, которое однозначно идентифицирует экземпляра/базы данных, где в качестве службы имени является псевдонимом TNS, что вы даете при удаленном подключении к базе данных и это имя службы записана в TNSNAMES. ora на ваших клиентах, и это может быть то же самое, что и SID , и вы также можете указать ему любое другое имя .

SERVICE_NAME - новая функция от oracle 8i, в которой база данных может зарегистрировать себя слушателем. Если база данных зарегистрирована у слушателя таким образом, то вы можете использовать параметр SERVICE_NAME в tnsnames.ora иначе - используйте SID в tnsnames.ora.

Также, если у вас есть OPS (RAC), у вас будет , для каждого экземпляра есть разные SERVICE_NAME.

SERVICE_NAMES указывает одно или несколько имен для службы базы данных , к которой подключается этот экземпляр. Вы можете указать несколько имен сервисов в , чтобы различать различные виды использования . Использование этой же базы данных. Для Например:

SERVICE_NAMES = sales.acme.com, widgetsales.acme.com

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

В среде Oracle Parallel Server вы должны установить этот параметр для каждого экземпляра.

Вкратце: SID = уникальное имя экземпляра DB, ServiceName = псевдоним, используемый при подключении

0

В соответствии с Oracle Глоссарий:

SID это уникальное имя для экземпляра базы данных Oracle. ---> Чтобы переключить между базами данных Oracle, пользователи должны указать желаемый идентификатор SID < ---. Сигнализатор SID включен в разделы CONNECT DATA дескрипторов соединения в файле TNSNAMES.ORA и в определении сетевого прослушивателя в файле LISTENER.ORA. Также известен как системный идентификатор. Имя службы Oracle может быть любым описательным, как «MyOracleServiceORCL». В Windows, Вы можете указать свое имя службы в качестве службы в службах Windows.

Вы должны использовать SID в TNSNAMES.ORA как лучший подход.

11

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

mySID, mySID.whereever.com = 
(DESCRIPTION = 
    (ADDRESS_LIST = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = myHostname)(PORT = 1521)) 
) 
    (CONNECT_DATA = 
    (SERVICE_NAME = mySID.whereever.com) 
    (SID = mySID) 
    (SERVER = DEDICATED) 
) 
) 

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

1

что такое SID и Имя службы

пожалуйста, смотрите в документации оракула на https://docs.oracle.com/cd/B19306_01/network.102/b14212/concepts.htm

Когда я использовать один или другой? Зачем мне два из них?

Рассмотрим ниже отображения в RAC окружающей среды,

SID         SERVICE_NAME
bob1     боб
bob2     боб
bob3     боб
bob4     боб

Если конфигурация нагрузки настроена, слушатель будет «балансировать» рабочую нагрузку на всех четырех идентификаторах безопасности. Даже если настроена балансировка нагрузки, вы можете подключаться к bob1 все время, если хотите, используя SID вместо SERVICE_NAME.

Пожалуйста, обратитесь, https://community.oracle.com/thread/4049517