1:监听文件listener.ora tnsnames.ora中关于host的配置建议都用ip来表示,2:如果监听不能启动或者启动后不能正常使用,(1)首先确认你的OS的hostname,执行hostname命令,尝试ping "hostname",看是否能通,(2)然后检查监听的listener.ora ,tnsnames.ora这两个配置文件中关于host的信息是否是用主机名表示的。(3)如果是,更改到新的主机名,然后把新的主机名加入系统的hosts文件,linux下为/etc/hosts;然后ping 新主机名,应该能通的。(4)如果全部是用ip表示的,那么直接将新的主机名加入系统的hosts文件即可。然后ping 新主机名,也应该能通的。3:如果第二步还是解决不了问题,(1)检查启动的Oracle的instance信息,select * fromv$instance;然后查看本级系统的主机名,两者应该是相等的。(2)如果查询出来的是老的主机名,尝试"ping老主机名"应该不通,通过listener也应该是连结不上;(3)如果是新的主机名,如果"ping新主机名"不通,请修改/etc/hosts文件增加新主机名,确认能ping通,然后重启oracle4:注意tns和listener文件的设置。具体操作步骤:1)修改hostname为www.sztech.com2)修改/etc/hosts,去掉原来的主机名的行,增加该行 192.168.60.253 www.sztech.com3)重启数据库,查询instance信息 select * from v$instance; 得到新的HOST_NAME为www.sztech.com4)修改listener.ora,把HOST改成新的主机名5)修改tnsname.ora,修改对应的HOST为新的主机名6)重启listener 然后connect oracle/oracle@standby应该可以成功的。