Ако искате вашият слушател да обработва вътрешни и външни връзки, използвайки и двата адреса, трябва да посочите и двата в listener.ora
, добавяйки ADDRESS_LIST
ниво с балансирани скоби:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST=
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.110)(PORT = 1521))
)
)
)
Един и същи порт може да се използва и за двата адреса или те могат да бъдат различни, ако предпочитате. Ако са различни, отделен слушател може да е по-малко объркващ, но ще работи и в двата случая.
След това трябва да спрете и да стартирате слушателя, за да вземете промените. Можете да проверите какво слуша с lsnrctl status
и/или netstat.
Може също да искате да проверите как се регистрира вашата база данни, като погледнете LOCAL_LISTENER
параметър за инициализация. Ако това не е зададено или използва име на хост, проверете дали се разрешава на един от IP адресите, които сте посочили - или чрез DNS, или в /etc/hosts. Ако не може да разреши правилно, тогава няма да може да се регистрира в слушателя, lsnrctl services
няма да изброява имената на услугите си и няма да можете да се свързвате през SQL*Net, използвайки име на услуга. (Или SID, тъй като нямате SID_LIST_LISTENER
записи).