啃爹的tnsping
配置好listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = prod)
(ORACLE_HOME = /u01/oracle/db_1)
(SID_NAME = prod)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01
配置好tnsnames.ora
PROD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER= DEDICATED )
(SERVICE_NAME = prod )
)
)
LISTENER_PROD =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))
ping自己試試看:tnsping prod
。。 。。 。
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))) (CONNECT_DATA = (SERVER= DEDICATED) (SERVICE_NAME = prod)))
OK (0 msec)
換種方式ping自己試試看:tnsping 192.168.10.20
。。 。。 。。
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.10.20)(PORT=1521)))
OK (0 msec)
看見沒有?居然少一堆資料,尤其是 (SERVICE_NAME=),沒名稱?
好吧,在tnsnanes.ora裡添加這個
192.168.10.20 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER= DEDICATED )
(SERVICE_NAME = prod )
)
)
再來,tnsping 192.168.10.20
。。 。。 。。
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = prod)(PORT = 1521))) (CONNECT_DATA = (SERVER= DEDICATED) (SERVICE_NAME = prod)))
OK (0 msec)
好吧,既然如此,那麼,在oracledataguard中,沒有加上standby的,能tnsping通,但依舊得不到server_name。
是以,配置oracledataguard時,得加上standby的
是以,配置nagios時,得加上ip位址的