Зачем мне нужны два из них? Когда я должен использовать тот или иной?
@DAC
Вкратце: SID = уникальное имя вашей БД, ServiceName = псевдоним, используемый при подключении
Не совсем верно. SID = уникальное имя ИНСТАНЦИИ (например, процесса oracle, запущенного на машине). Oracle считает "Базу данных" файлами.
Service Name = псевдоним ИНСТАНСА (или многих инстансов). Основная цель этого - если вы используете кластер, клиент может сказать "соедините меня с SALES.acme.com", DBA может на лету изменить количество экземпляров, доступных для запросов SALES.acme.com, или даже переместить SALES.acme.com в совершенно другую базу данных без необходимости изменения каких-либо настроек клиентом.
Пожалуйста, см: http://www.sap-img.com/oracle-database/finding-oracle-sid-of-a-database.htm
В чем разница между Oracle SIDs и Oracle SERVICE NAMES. Один инструмент конфигурации ищет ИМЯ СЕРВИСА и затем другой ищет SID! Что происходит?!
Oracle SID - это уникальное имя, которое уникально идентифицирует ваш экземпляр/базу данных, а Service имя - это псевдоним TNS, который вы даете. при удаленном подключении к вашей базе данных, и это имя службы записано в файле Tnsnames.ora на ваших клиентах и оно может быть таким же, как SID и вы также можете дать ему любое другое имя, которое вы хотите.
SERVICE_NAME - это новая возможность, появившаяся в > oracle 8i. 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 = уникальное имя экземпляра вашей БД, ServiceName = псевдоним, используемый при подключении
Я знаю, что это древняя однако при общении с привередливыми инструменты, использует, пользователей и симптомы ре: Сид & служба именования можно добавить немного сгибаться, чтобы ваш файл 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)
)
)
Я просто думал, что я'д оставлю это здесь, как это's мягко, имеющих отношение к вопросу и может быть полезно, когда пытаются плести вокруг некоторых менее ясно особенностей сетей оракул.
что такое Sid и имя сервиса
пожалуйста, посмотрите в Oracle's документация по https://docs.oracle.com/cd/B19306_01/network.102/b14212/concepts.htm
В случае, если выше ссылка не доступна в будущем, на момент момент написания этого ответа, ссылка будет направлять вас на, на "Базы данных и базы данных экземпляра идентификации" на тему связь понятий главе с "база данных продажи услуг администратора'руководство и". Данное руководство опубликовано компанией Oracle в рамках и запах мяты;базы данных Oracle онлайн documentation, выпуск 10г 2 (10.2)&;
когда я должен использовать один или другой? Зачем мне их две?
Ниже рассмотрим отображение в среде ККВ,
Сид &ампер;усилитель; nbsp; &ампер;усилитель; nbsp;&ампер;усилитель; nbsp;&ампер;усилитель; nbsp;ИМЯ_СЛУЖБЫ <БР/> bob1&ампер;усилитель; nbsp; &ампер;усилитель; nbsp; Боб<БР/> bob2&ампер;усилитель; nbsp; &ампер;усилитель; nbsp; Боб<БР/> вов3&ампер;усилитель; nbsp; &ампер;усилитель; nbsp; Боб<БР/> bob4&ампер;усилитель; nbsp; &ампер;усилитель; nbsp; Боб<БР/>
если балансировки нагрузки настроена, то слушатель 'баланс' нагрузку во всех четырех Морс. Даже если она настроена балансировка нагрузки, вы можете подключиться к bob1 все время, если вы хотите с помощью Sid вместо ИМЯ_СЛУЖБЫ.
Пожалуйста, обратитесь, https://community.oracle.com/thread/4049517
Согласно глоссарию Oracle:
SID - это уникальное имя экземпляра базы данных Oracle. ---> Чтобы переключаться между базами данных Oracle, пользователи должны указать нужный SID <---. На сайте SID включается в части CONNECT DATA дескрипторов подключения. в файле TNSNAMES.ORA, а также в определении сетевого слушателя в файле LISTENER.ORA. Также известен как Системный идентификатор. Имя службы Oracle может быть любым описательным именем, например "MyOracleServiceORCL". В Windows, Вы можете запустить имя вашей службы как службу в разделе Windows Services.
В качестве лучшего подхода следует использовать SID в TNSNAMES.ORA.