Om du vill att din lyssnare ska hantera interna och externa anslutningar med båda adresserna måste du lista båda i listener.ora
, lägga till en ADDRESS_LIST
nivå med balanserade parenteser:
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))
)
)
)
Samma port kan användas för båda adresserna, eller så kan de vara olika om du föredrar det. Om de är olika kan en separat lyssnare vara mindre förvirrande men det kommer att fungera åt båda hållen.
Du måste sedan stoppa och starta lyssnaren för att fånga upp ändringarna. Du kan verifiera vad den lyssnar på med lsnrctl status
och/eller netstat.
Du kanske också vill kontrollera hur din databas registreras genom att titta på LOCAL_LISTENER
initialiseringsparameter. Om det inte är inställt eller använder ett värdnamn, kontrollera att det löser sig till en av de IP-adresser du har angett - antingen via DNS eller i /etc/hosts. Om det inte kan lösas ordentligt kommer det inte att kunna registreras hos lyssnaren, lsnrctl services
kommer inte att lista dess tjänstnamn, och du kommer inte att kunna ansluta över SQL*Net med ett tjänstnamn. (Eller ett SID, eftersom du inte har SID_LIST_LISTENER
poster).