Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 один tnslistener для двух серверов  [new]
the_moon
Member

Откуда: Германия
Сообщений: 332
Привет,

подскажите как лучше всего сделать и в какую сторону копать.

Есть два сервера с базами для разработчиков. Скриптами поднимаются базы на обоих серваках, хочется сделать так, что бы был один TNS listener, и что бы базы при создании регистрировали себя на этом листенере.


Пока что у меня везде расписанны конкретно серваки в tnsnames и в аппликейшн серверах. Захочу передвигать базу с одного сервере на другой, приходится идти по всем серверам и менять конфиги.

Спасибо
4 дек 08, 14:18    [6525138]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
Про сети
Guest
Проблемы нужно ставить правильно, тогда будут нормальные решения.

tnsnames.ora на местах - редкостное заблуждение.

Во первых - можно всем насильно прописать через TNS_ADMIN ссылку на сервер.
Во вторых - можно попользовать OID/LDAP (хранить конфиг там).

В третьих - рассказать разработчикам про опцию EasyConnect. А сделать виртуальный dns alias.
И простро править ip (SID то не меняется, обычно).

А вот листенер на третьей машине для первых двух - это как-то сильно странно,
что-то из области Oracle Names и прочих глупостей.
4 дек 08, 14:32    [6525280]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
_Alex_SMIRNOV_
Member

Откуда: Киев
Сообщений: 1519
Обслужить listener'ом сервер на другом хосте
4 дек 08, 14:33    [6525288]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
the_moon
Member

Откуда: Германия
Сообщений: 332
_Alex_SMIRNOV_,

Вот, наверное то что нужно, спасибо. Сейчас попробую.
4 дек 08, 14:43    [6525388]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
Про полурешения
Guest
_Alex_SMIRNOV_
Обслужить listener'ом сервер на другом хосте


А разве static SID list не пролетает в этом случае? Таки низачот
4 дек 08, 15:00    [6525519]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
the_moon
Member

Откуда: Германия
Сообщений: 332
Про полурешения,

Поискал про статик лист и нашел в доке такие строки

Oracle recommends using dynamic service registration instead of a static SID list in the listener configuration.
4 дек 08, 15:24    [6525728]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
Не верьте!
Guest
the_moon
Про полурешения,

Поискал про статик лист и нашел в доке такие строки

Oracle recommends using dynamic service registration instead of a static SID list in the listener configuration.


Вопрос первый.
Один листенер, два десятка баз. Листенер упал (повис хост), сколько времени на...
Подвопрос 1.1 на что?
Подвопрос 1.2 какие средства мультиплексирования и Fault Tolerance предлагаются в данном случае?

Вопрос второй и пока последний -
удаленно поднять базу, не заходя в терминал локальным процессом
(особенно актуально виндузятникам, про рестарт сервиса - не рассказывать).
Процесса на той стороне нет.
4 дек 08, 15:28    [6525761]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
the_moon
Member

Откуда: Германия
Сообщений: 332
Не верьте!,

1) два сервера, на одном ремоут листенер. DNS запись oradb указывает на него. Падает этот сервак, переключаем DNS запись на второй. Там же локальный листенер работает еще.

Второй подпункт я не понял. Это высшая математика для меня :)

2) Сервера же на прямую все еще доступны. Локальные листнеры никто не отменял.
4 дек 08, 15:58    [6526015]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
Проверьте
Guest
the_moon
Не верьте!,

1) два сервера, на одном ремоут листенер. DNS запись oradb указывает на него. Падает этот сервак, переключаем DNS запись на второй. Там же локальный листенер работает еще.

Читай выше. Что мешает работать сразу через LDAP или DNS/Easy Connect?
Какой смысл городить Remote Listener и заниматься перерегистрацией инстансов при падении его?

ИМХО железобетонное вписывание локальных сидов в локальный листенер - позволяет добиться
максимальной взаимонезависимости (т.е. коннект будет всегда, в любой последовательности старта/рестарта).

the_moon

Второй подпункт я не понял. Это высшая математика для меня :)
2) Сервера же на прямую все еще доступны. Локальные листнеры никто не отменял.

Безусловно.
4 дек 08, 16:02    [6526071]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
the_moon
Member

Откуда: Германия
Сообщений: 332
Ну, во прервых уже так сложилось и не хотелось бы делать тотальную перетряску всей инфраструктуры, а во вторых я не уверен, что это будет работать для всех видов клиентов одинаково просто.

Пока, что мне этот путиь видится самым простым, но я еще пошукаю и на счет других возможностей.
4 дек 08, 16:10    [6526135]     Ответить | Цитировать Сообщить модератору
 Re: один tnslistener для двух серверов  [new]
Не проверяйте
Guest
the_moon,

В случае Easy connect ничего не нужно будет.

Ну у тебя был раньше SID MYSUPERSID.

И что? Ты просто сделаешь DNS алиас mysupersid.local, убиваешь tnsnames.ora, но это будет приведено к виду

mysupersid.local:1521/MYSUPERSID, или (в терминах TNSNAMES.ORA)

MYSUPERSID=
(DESCRIPTION= 
(ADDRESS=(PROTOCOL=tcp)(HOST=MYSUPERSID)(PORT=1521))
  (CONNECT_DATA= 
     (SERVICE_NAME=mysupersid.local)))

И все. Что тут сложного?

Ах да, ну конечно - будет минус. TNS Alias придется вбивать руками, это да, это мегапотеря,
никаких теперь выпадающих списков ;))) Какая жалость, право.
4 дек 08, 16:23    [6526240]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить