ORA-12542: TNS:address already in use
Cause: Specified listener address is already being used.
Action: Start your listener with a unique address.
答:
ORA-12542是一种“TNS:地址已经被使用”的错误。TNS(Transparent Network Substrate)是用于定义和配置网络服务的一种技术,它可以实现标准网络连接。
ORA-12542: TNS:address already in use 消息反映了当前已有另一个客户端正在使用给定的协议地址。这个错误可以由一些不同的原因造成,包括,多个客户端尝试使用相同的TNS服务名或全局数据库名称、存在多台计算机,两个计算机都连接服务器的同一个端口、存在多个服务,客户端对它们有相同的名称等。
一个常见的原因是在一台计算机上同时运行多个票证(tnsnames.ora)文件,装载了同一个服务别名。每个tnsnames.ora文件都定义了相同的服务名。这也可能造成这个错误,同样,可能有多个服务,使用多个钱包提供客户端连接。
1、检查TNSNAMES.ORA文件,确保每个票据只定义一个服务名称,而且没有重复定义。
2、是否有多个服务使用同一个端口号,必要时修改端口号。
3、检查服务器上是否有多个客户端通过全局数据库名称连接服务器,如果有,请选择其他服务器,或修改全局数据库名称。
4、重置TNS服务器,以确保没有存在任何多余的连接。
5、确保没有其它客户端正在使用相同的TNS服务名或全局数据库名称。