精华内容
下载资源
问答
  • 主要介绍了Oracle数据库TNS常见错误的解决方法,需要的朋友可以参考下
  • oracle数据库tns配置方法详解 TNS简要介绍与应用 Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器。 TNS是...

    TNS简要介绍与应用

    Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器。

    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,当然在少数情况下,不用配置TNS也可以连接Oracle数据库,比如通过JDBC。如果通过TNS连接Oracle,那么客户端必须安装Oracle client程序。

    Oracle当中,如果想访问某个服务器,必须要设置TNS,它不像SQL SERVER那样在客户端自动列举出在局域网内所有的在线服务器,只需在客户端选择需要的服务器,然后使用帐号与密码登录即可。而Oracle不能自动列举出网内的服务器,需要通过读取TNS配置文件才能列出经过配置的服务器名。

    配置文件名一般为:tnsnames.ora,默认路径:%ORACLE_HOME%\network\admin\tnsnames.ora

    上图中的CGDB和STDCG就是对应的TNS,HOST是指向数据库服务器的IP,当然局域网内用计算机名称也是可以的。通过客户端Net Manager创建一个连接到数据库服务器的连接服务时,实际上就是在tnsnames.ora文件中增加了一个TNS的内容。

    TNS的详细配置文件 

    TNS的配置文件包括服务器端和客户端两部分。

    服务器端有listener.ora、sqlnet.ora和tnsnames.ora,如果通过OCM(Oracle Connection Manage)和域名服务管理客户端连接,服务器端可能还包括cman.ora等文件;

    客户端有tnsnames.ora,sqlnet.ora。

    Oracle所有的TNS配置文件的默认路径:%ORACLE_HOME%\network\admin

    listener.ora:监听器配置文件,成功启动后是驻留在服务器端的一个服务。监听器是用来侦听客户端的连接请求以及建立客户端和服务器端连接通道的一个服务程序。默认情况下Oracle在1521端口上侦听客户端连接请求。

    sqlnet.ora:用来管理和约束或限制tns连接的配置,通过在该文件中设置一些参数,可以管理TNS连接。根据参数作用的不同,需要分别在服务器和客户端配置.。

    tnsnames.ora:配置客户端到服务器端的连接服务,包括客户端要连接到的服务器和数据库的配置信息。

    TNS配置 

    可以通过Oracle Net Configuretion Assitant配置TNS,也可以手动配置。

    首先在Oracle服务器端安装完成之后,

    应该先着手配置LISTENER,LISTENER是进行Oracle通讯的首要组件,

    紧接着在客户端安装Oracle client,同时配置tnsnames.ora文件。

    首先监听器包括两个部分:

    Oracle要监听的地址、端口、通讯协议;

    Oracle要监听的数据库实例,

    非RAC环境下,LISTENER只能监听本服务器的地址和实例,RAC环境下,LISTENER还可以监听远程服务器。每个数据库最少要配置一个监听器。(注:RAC环境,指的是Oracle服务器集群配置的环境)

    LISTENER部分配置了Oracle要监听的地址和端口信息;该文件中还会包括SID_LIST_LISTENER部分,这部分配置了Oracle需要监听的实例。(注:在上述截图中并没有SID_LIST_LISTENER这一部分,这是因为Oracle自9i版本引入了动态监听服务注册,在数据库启动时,会自动注册当前数据库实例到监听列表,所以无需配置SID_LIST_LISTENER部分了)

    HOST参数可以是Oracle服务器主机名称,也可以是相应的IP地址。

    在一个多IP的服务器上可以配置listener同时监听多个地址,比如下面的配置:

    LISTENER= (DESCRIPTION= (ADDRESS_LIST=

    (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.11)(PORT=1521))

    (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.2.11) (PORT=1521))) ),或者可以配置多个监听器,分别监听不同的IP地址。

    一般说的TNS配置其实就是对tnsnames.ora文件的配置,tnsnames.ora有客户端的配置,也有服务器端的配置。

    客户端和服务器端配置的区别是因为服务器端的配置跟LISTENER的配置相关。下面是一个简单的配置示例:

    tnsnames.ora也包括两部分,

    ADDRESS_LIST 部分包含了Oracle数据库服务器的监听地址信息,也就是要告诉TNS数据库可通过这个地址和CLIENT进行通讯;

    CONNECT_DATA 定义了CLIENT要连接的数据库,以及数据库的连接方式,(专用或共享)。

     

    在一个多IP环境中,TNS也可以配置多个远程IP地址:

    CGDB = (DESCRIPTION = (ADDRESS_LIST =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.55)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.56)(PORT = 1521)))

    (CONNECT_DATA = (SERVICE_NAME = CGDB) (SERVER = DEDICATED) ) )

    sqlnet.ora是个很重要的配置,它可以控制和管理Oracle连接的属性,根据参数作用的不同决定在客户端配置还是在server端配置。sqlnet.ora的配置是全局性的,也就说sqlnet.ora的配置是对所有的连接起作用,如果想对某个特殊的连接或服务进行约束或限制,可以 在TNS配置相应参数。

    posted on 2017-03-04 11:56 明净 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/mingjing/p/6500923.html

    展开全文
  • 查看数据库日志,修改数据库tnsname

    千次阅读 2013-08-17 18:51:09
    查看数据库日志 看文件大小:du -sh */du - sh m* ...修改数据库tnsname: 修改tnsname.ora 验证是否成功:sqlplus oracle_name/password@数据库名字 若返回连接成功或者密码错误都证明连接成功

    查看数据库日志
    看文件大小:du -sh */du - sh m*
    最大的最占空间的里面就有日志文件,一层一层的找。


    关闭数据库:就是关闭crs

    查看数据库相关进程:ps -ef|grep smon

    修改数据库tnsname:
    修改tnsname.ora
    验证是否成功:sqlplus oracle_name/password@数据库名字
    若返回连接成功或者密码错误都证明连接成功

    展开全文
  • oracle数据库TNS

    2015-04-28 15:59:00
    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,下面看一如何配置它吧: TNS简要介绍与应用 :Oracle中TNS的完整定义:...

    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,下面看一如何配置它吧:


    TNS简要介绍与应用 :
    Oracle中TNS的完整定义:transparence Network Substrate透明网络底层,监听服务是它重要的一部分,不是全部,不要把TNS当作只是监听器。
    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,当然在少数情况下,不用配置TNS也可以连接Oracle数据库,比如通过JDBC。如果通过TNS连接Oracle,那么客户端必须安装Oracle client程序。

    Oracle当中,如果想访问某个服务器,必须要设置TNS,它不像SQL SERVER那样在客户端自动列举出在局域网内所有的在线服务器,只需在客户端选择需要的服务器,然后使用帐号与密码登录即可。而Oracle不能自动列举出网内的服务器,需要通过读取TNS配置文件才能列出经过配置的服务器名。
    配置文件名一般为:tnsnames.ora,默认路径:%ORACLE_HOME%\network\admin\tnsnames.ora

    上图中的CGDB和STDCG就是对应的TNS,HOST是指向数据库服务器的IP,当然局域网内用计算机名称也是可以的。通过客户端Net Manager创建一个连接到数据库服务器的连接服务时,实际上就是在tnsnames.ora文件中增加了一个TNS的内容。
    TNS的详细配置文件
    TNS的配置文件包括服务器端和客户端两部分。服务器端有listener.ora、sqlnet.ora和tnsnames.ora,如果通过OCM(Oracle Connection Manage)和域名服务管理客户端连接,服务器端可能还包括cman.ora等文件;客户端有tnsnames.ora,sqlnet.ora。Oracle所有的TNS配置文件的默认路径:%ORACLE_HOME%\network\admin
    listener.ora:监听器配置文件,成功启动后是驻留在服务器端的一个服务。监听器是用来侦听客户端的连接请求以及建立客户端和服务器端连接通道的一个服务程序。默认情况下Oracle在1521端口上侦听客户端连接请求。
    sqlnet.ora:用来管理和约束或限制tns连接的配置,通过在该文件中设置一些参数,可以管理TNS连接。根据参数作用的不同,需要分别在服务器和客户端配置.。
    tnsnames.ora:配置客户端到服务器端的连接服务,包括客户端要连接到的服务器和数据库的配置信息。
    TNS配置
    可以通过Oracle Net Configuretion Assitant配置TNS,也可以手动配置。首先在Oracle服务器端安装完成之后,应该先着手配置LISTENER,LISTENER是进行Oracle通讯的首要组件,紧接着在客户端安装Oracle client,同时配置tnsnames.ora文件。
    首先监听器包括两个部分:Oracle要监听的地址、端口、通讯协议;Oracle要监听的数据库实例,非RAC环境下,LISTENER只能监听本服务器的地址和实例,RAC环境下,LISTENER还可以监听远程服务器。每个数据库最少要配置一个监听器。(注:RAC环境,指的是Oracle服务器集群配置的环境)

    LISTENER部分配置了Oracle要监听的地址和端口信息;该文件中还会包括SID_LIST_LISTENER部分,这部分配置了Oracle需要监听的实例。(注:在上述截图中并没有SID_LIST_LISTENER这一部分,这是因为Oracle自9i版本引入了动态监听服务注册,在数据库启动时,会自动注册当前数据库实例到监听列表,所以无需配置SID_LIST_LISTENER部分了)
    HOST参数可以是Oracle服务器主机名称,也可以是相应的IP地址。在一个多IP的服务器上可以配置listener同时监听多个地址,比如下面的配置:LISTENER= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.11)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.2.11) (PORT=1521))) ),或者可以配置多个监听器,分别监听不同的IP地址。
    一般说的TNS配置其实就是对tnsnames.ora文件的配置,tnsnames.ora有客户端的配置,也有服务器端的配置。客户端和服务器端配置的区别是因为服务器端的配置跟LISTENER的配置相关。下面是一个简单的配置示例:

    tnsnames.ora也包括两部分,ADDRESS_LIST 部分包含了Oracle数据库服务器的监听地址信息,也就是要告诉TNS数据库可通过这个地址和CLIENT进行通讯;CONNECT_DATA 定义了CLIENT要连接的数据库,以及数据库的连接方式,(专用或共享)。
    在一个多IP环境中,TNS也可以配置多个远程IP地址:CGDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.55)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.56)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = CGDB) (SERVER = DEDICATED) ) )
    sqlnet.ora是个很重要的配置,它可以控制和管理Oracle连接的属性,根据参数作用的不同决定在客户端配置还是在server端配置。sqlnet.ora的配置是全局性的,也就说sqlnet.ora的配置是对所有的连接起作用,如果想对某个特殊的连接或服务进行约束或限制,可以 在TNS配置相应参数。

    转载于:https://www.cnblogs.com/Yannik/p/4463244.html

    展开全文
  • Oracle数据库TNS常见错误解决方法 收藏 1、ORA-12541:TNS:没有监听器  原因:没有启动监听器或者监听器损坏。若是前者,使用命令net start OracleOraHome10gTNSListener(名字可能有出入)即可;如果是后者,则使用...

    Oracle数据库TNS常见错误解决方法 收藏
    1、ORA-12541:TNS:没有监听器
      原因:没有启动监听器或者监听器损坏。若是前者,使用命令net start OracleOraHome10gTNSListener(名字可能有出入)即可;如果是后者,则使用“Net Configuration Assistant”工具向导之“监听程序配置”增加一个监听器即可(基本不用写任何信息,一路OK。在添加之前可能需要把所有的监听器先删!)
      2、ORA-12500:TNS:监听程序无法启动专用服务器进程或ORA-12560:TNS:协议适配器错误
      原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。如果仍没有解决,请继续向下看。
      3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:
      1)ORADIM -DELETE -SID oradb 删除数据库服务项
      2)ORADIM -NEW -SID oradb 新增数据库服务项
      注:这个过程中如果出错,就重启计算机!
      4、ORA-12154:TNS:能解析服务名
      原因:ORACLE的网络服务名没有正确配置。请使用“Net8 Configuration Assistant”工具向导之“本地网络服务名配置”配置TNS即可。如果仍没有解决,请继续向下看。
      5、ORA-1034 :TNS:ORACLE不可用
      原因:ORACLE的数据库服务正确启动,但是数据库没有打开!
      使用命令:
      1)svrmgrl 启动服务管理器
      2)connect internal 以internal身份登陆
      3)startup 打开数据库
      6、ORA-12560:TNS:协议适配器错误(顽固性的)
      原因:未知。
      解决:必杀技--打开“Windows任务管理器”,杀死ORACLE.exe及ORADIM.exe进程,书写自己的ora_startup.bat,执行之!
     PS:
      1、ora_startup.bat:
      net start OracleOraHome81TNSListener
      net start ORACLESERVICEORADB
      svrmgrl 一般情况下不用,不过有时少不了它的,具体步骤见第5步。
      2、ora_shutdown.bat:
      net stop OracleOraHome81TNSListener
      net stop ORACLESERVICEORADB
      3、ORACLE相关服务名请参见“管理工具”之“服务”中以ORACLE开头的服务名
      1、TNS-12154 Error 或ORA-12154
      特征:SQL*NET没有找到连接串或别名
      原因1:(1)没有找到TNSNAMES.ORA文件,该文件的缺省路径为: 
    windows 95/98 client
      sql*Net 2.x - ORAWIN95NETWORKADMIN
      Net8 - ORAWIN95NET80admin
      Net8i - ORACLEORA81NETWORKADMIN
      windows NT client
      sql*Net 2.x - ORANTNETWORKADMIN
      Net8 - ORANTNET80ADMIN
      Net8i - ORACLEORA81NETWORKADMIN
      UNIX Client
      $ORACLE_HOME/NETWORK/ADMIN
      or /etc
      or /var/opt/oracle
      . 在客户端设置TNS_ADMIN
      在注册表 HKEY_LOCAL_MACHINESoftwareOracle 设置TNS_ADMIN. TNS_ADMIN 指向TNSNAMES.ORA文件的位置
      措施:按上述说明检查文件位置
      原因2:(2)TNSNAMES.ORA文件中内容格式不对
      措施:检查文件格式,标准格式如下:
    DEV1.WORLD =
    (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = tcp) (Host = 145.45.78.56) (Port = 1521) ) )
    (CONNECT_DATA = (SID = ORCL) ) )
      原因3: (3) TNSNAMES.ORA与SQLNET.ORA不一致
      措施: SQLNET.ORA格式如下:
    TRACE_LEVEL_CLIENT = OFF
    SQLNET.AUTHENTICATION_SERVICES = (NONE)
    NAMES.DIRECTORY_PATH = (TNSNAMES)
    AUTOMATIC_IPC = OFF
      因为没有NAMES.DEFAULT_DOMAIN=world,所以DEV1.WORLD连接串不能连接,可以在TNSNAMES.ORA中增加
    DEV1 =
    (DESCRIPTION = (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP) (Host = 145.45.78.56) (Port = 1521) ) )
    (CONNECT_DATA = (SID = ORCL) ) )
    此时可连接。
      2、NL-00462 Error 或ORA-00462
      特征:监听器无法启动
      原因:LISTENER.ORA文件内容错误,例如,括号不匹配、参数名错误等、多余的空格等。
      措施:重新编辑文件
     3、NL-00405 Error 或ORA-00405
      特征:LISTENER.ORA文件不可读或找不到
      原因:LISTENER.ORA文件内容错误,例如,括号不匹配、参数名错误等、多余的空格等。
      措施:确保文件位置在缺省目录下$ORACLE_HOME/network/admin,或设置环境变量TNS_ADMIN指向这个文件所在位置。
      4、TNS-01155 Error 或ORA-01155
      特征:LISTENER.ORA文件中SID_LIST_LISTENER变量赋值不对
      原因:LISTENER.ORA文件内容错误,SID_LIST_LISTENER变量赋值不对。
      措施:确保文件中赋值正确,$ORACLE_HOME/network/admin/samples目录下有样例文件,可供参考。
      5、TNS-12537 、TNS-12560、TNS-00507 Error
      特征:LISTENER.ORA文件中引用了一个无效的协议适配程序
      原因:LISTENER.ORA文件中PROCOTOL变量赋值不对。
      措施:确保文件中赋值正确,一般用tcp协议,$ORACLE_HOME/network/admin/samples目录下有样例文件,可供参考。用adapters tnslsnr检查协议程序
      6、TNS-12203 Error
      特征:不能与目标连接
      原因:监听器是否启动;别名是否配置
      措施:检查监听器是否启动,例如lsnrctl status;检查TNSNAMES.ORA的别名配置
      7、TNS-12533 Error
      特征:不能与目标连接
      原因:非法的address参数,
      措施:检查TNSNAMES.ORA的ADDRESS参数
      1)用tnsping net_service_name测试网络服务名是否配置正确!
      2)用sqlplus程序通过test网络服务名进行测试,如sqlplus system/manager@test。如果不能连接到数据库,则在tnsname.ora文件中的test网络服务名(net service)后面加上sqlnet.ora文件NAMES.DEFAULT_DOMAIN参数的值,

    展开全文
  • 1: 防火墙是否关闭. 2: 查看监听器是否启动 转载于:https://my.oschina.net/u/3213673/blog/1563739...
  • 数据库本地通过sqlplus登录sys用户正常说明数据库正常; 通过服务中的OracleOraDb11g_home1TNSListener可以正常启动,停止; 使用监听的命令LSNRCTL START/STOP/START 均无法进行下去,显示正在连接到 最后提示...
  • ORA-12154:TNS:could not resolve the connect identifier specified ,即无法解析指定的连接 标识符。这说明缺少了一个环境变量,TNS_ADMIN 解决方法:windows: 右击 我的电脑 -> 属性-> 高级-> 环境...
  • 错误现象:别人访问我oracle数据库时,提示“无监听程序”,ping IP能ping通,TNS配置正确。操作:按照网上的说法我将本机的tnsnames.ora、listener.ora中的localhost都改成了本机的IP或者本机的计算机全名,改完...
  • oracle数据库tns配置方法详解-转

    千次阅读 2014-08-11 23:58:24
    TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,下面看一如何配置它吧 TNS简要介绍与应用 Oracle中TNS的完整定义:...
  • pl/sql developer如何添加新的数据库tns

    千次阅读 2019-01-21 15:18:45
    在用oracle进行开发时,用pl/sql添加新的tns是必不可少的。步骤如下: 1.找到本机plsql使用的tnsnames.ora文件在哪个位置,可以通过help->support info来查看。 TNS File 后的即是文件位置 2.根据该路径...
  • 在oracle用户下执行tnsping 服务名(service_name)->这里指的是tnsname文件里的service_name 如果后面出现OK,则表示tns正常。如下图所示: 本文转自 Super康 51CTO博客,原文链接:...
  • 本文从客户端和服务器的角度阐述 连接Oracle数据库如何配置,但是我们开发者的计算机一般充当着两个角色:自己既是客户端也是服务端,就是自己连自己。生产环境中,服务器和客户端位于不同的计算机,是分开配置的。...
  • http://blog.csdn.net/hdhai9451/article/details/3957094
  • Oracle数据库TNS详解

    2019-10-04 23:23:54
    TNS是Oracle数据库正确使用的必备条件之一,它用来管理和配置Oracle连接工具,目前我有用的工具如:SQL Server和Toad,它像是一个中间的桥梁,让客户端和数据库可以进行通讯,也就是我们平时的读写等等。 简要介绍 ...
  • 当收到业务有些影响时,数据库侧期间如果BOMC并没有马上收到相关的告警,那么如果要判断哪个数据库有问题时就只能很多数据库都查一遍。显然这样的命中率会很低同时时间也是比较长。对于这个问题有可能是网络问题太慢...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,197
精华内容 2,078
关键字:

数据库tns