Oracle TNSNAMES.ORA配置
Oracle的tnsnames.ora配置(PLSQLDeveloper)
Oracle的tnsnames.ora配置(PLSQLDeveloper)1. ⾸先打开tnsnames.ora的存放⽬录,⼀般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了。
2. 2使⽤editplus或者记事本或其他⼯具打开tnsnames.ora,进⾏编辑配置⼀下⽂件CONN_shenyi2 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.144.191)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))3. 3上边的SERVICE_NAME 和HOST、PORT 改为⾃⼰的即可4. 4打开plsql,登陆5. 5登陆完成即可使⽤强⼤的plsql developer/article/b0b63dbfcd34834a4930704a.html222222222222222222222222222222222222222今天是重要的⼀天。
将XML数据导⼊ORACLE遇到很多问题,学了好多,其中很长时间花在⽹络配置上,刚开始学,具体原因不知道,先把搜集到的好⽂章存下来,以后慢慢研究。
监听配置⽂件为了使得外部进程如 CAMS后台程序能够访问 Oracle 数据库必须配置 Oracle ⽹络服务器环境配置 Oracle ⽹络服务器环境是通过配置listener.ora sqlnet.ora 和 tnsnames.ora 共三个⽂件来进⾏的 listener.ora即监听配置⽂件在本⼩节说明另两个⽂件分别在随后的两个⼩节说明监听配置⽂件 listener.ora 的存放路径为 $ORACLE_HOME/network/admin以下是⼀个⽰例LISTENER = #监听器名称(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))))(DESCRIPTION =(PROTOCOL_STACK =(divSENTATION = GIOP)(SESSION = RAW))(ADDRESS =(PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 2481))))SID_LIST_LISTENER = #命名规则 SID_LIST_+上⾯定义的监听器名称(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc1)(ORACLE_HOME = /u01/app/oracle/product/8.1.7)(PROGRAM = extproc))(SID_DESC =(GLOBAL_DBNAME = cams)(ORACLE_HOME = /u01/app/oracle/product/8.1.7)(SID_NAME = cams))(SID_DESC =(GLOBAL_DBNAME = oid)(ORACLE_HOME = /u01/app/oracle/product/8.1.7)(SID_NAME = oid)))& 说明1 listener.ora ⽂件中定义⼀个监听器其缺省的名称为 LISTENER这个监听器缺省以tcp/ip为协议地址且端⼝号为1521运⾏在CAMS应⽤中监听⽂件定义的监听器就使⽤这个缺省名字并且使⽤缺省的协议 tcp/ip和缺省的端⼝号 1521 待配置好监听⽂件以及随后说明的 sqlnet.ora 和tnsnames.ora ⽂件之后就可以⽤以下命令将监听⽂件中定义的监听器启动起来$ lsnrctl start停⽌监听器的命令为$ lsnrctl stop监测监听器当前状态的命令为$ lsnrctl status当 lsnrctl status 命令有如下输出结果STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 8.1.7.4.0 - Production Start Date 17-JAN-2004 19:00:08Uptime 31 days 15 hr. 27 min. 59 sec就说明监听器正在运⾏否则说明监听器已经停⽌了 CAMS 系统的后台程序的正常运⾏不仅依赖于数据库实例的运⾏还依赖于这个数据库监听器的运⾏假如监听器没有启动即使数据库已经启动 CAMS 后台程序仍然不能正常⼯作2 如(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))所⽰的⼀个IPC 协议地址的监听是为了外部进程调⽤⽤的在数据库安装时⾃动设定不需要改动3 在监听⽂件后部还有⼀个 SID_LIST_LISTENER 段该段⽤于定义监听器的服务即为哪些数据库实例提供监听服务以 cams 实例为例其对应的服务信息为(SID_DESC =(GLOBAL_DBNAME = cams) #数据库名(ORACLE_HOME = /u01/app/oracle/product/8.1.7)(SID_NAME = cams) #数据库实例名)1.2.5 sqlnet.ora ⽂件sqlnet.ora ⽂件的存放路径为 $ORACLE_HOME/network/admin 以下是⼀个⽰例NAMES.DEFAULT_DOMAIN = localdomainNAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)& 说明NAMES.DEFAULT_DOMAIN 指定⽹络域名 NAMES.DIRECTORY_PATH指定当解析客户端连接标识符时命名⽅法 naming metthods 采⽤的优先顺序从左⾄右递减在 CAMS 应⽤中这两个参数采⽤上述所⽰的系统缺省值1.2.6 tnsnames.ora ⽂件tnsnames.ora ⽂件的存放路径为 $ORACLE_HOME/network/admin 以下是⼀个⽰例OID.LOCALDOMAIN =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = oid)))CAMS.LOCALDOMAIN =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = cams)))INST1_HTTP.LOCALDOMAIN =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)))(CONNECT_DATA =(SERVER = SHARED)(SERVICE_NAME = MODOSE)(divSENTATION = http://admin)))EXTPROC_CONNECTION_DATA.LOCALDOMAIN =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))(CONNECT_DATA =(SID = PLSExtProc1)(divSENTATION = RO)))& 说明tnsnames.ora ⽂件中定义⼀个或多个⽹络服务 net service cams 实例对应的⽹络服务为CAMS.LOCALDOMAIN =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = cams)))注意这⾥ ADDRESS项包含三个⼦参数PROTOCOL :默认协议TCPHOST :ip地址PORT:端⼝,默认1521CAMS.LOCALDOMAIN为数据名要确保在监听⽂件中也有对应的⼀个 ADDRESS 项也包含同样的三个⼦参数并且⼦参数的值对应都相等另外这⾥ SERVICE_NAME 的值必需确保与监听⽂件中某 SID_DESC项下的 SID_NAME参数的值相等3333333333333333333333333333oracle⽹络配置三个配置⽂件 listener.ora、sqlnet.ora、tnsnames.ora ,都是放在$ORACLE_HOME/network/admin⽬录下。
oracle数据库连接方法
oracle数据库连接方法
Oracle数据库的连接方法有多种,以下列举两种常见的方式:
方法一:
1. 找到tnsnames.ora文件,打开后可以看到类似红色框中的配置。
2. 复制一份配置,放到tnsnames.ora文件底部,然后对其进行修改。
可以根据自己的情况设置四个位置:自定义数据库名、根据远程数据库地址修改地址、根据远程数据库端口号修改端口号、根据远程数据服务名修改服务名。
3. 修改完成后保存,再次打开PLSQL,只要填写正确的用户名密码,并选择刚刚自定义的数据库名,点击确定就可以连接数据库了。
方法二:
1. 从开始菜单中找到Oracle的Net Manager工具,单击打开。
2. 在Net Manager中,找到服务命名,可以看到刚刚配置的数据库名(服务命名),里面的配置和刚刚在tnsnames.ora文件修改的是一样的。
3. 在Navicat中改完重启后,再次打开Navicat,按照上图操作进入Oracle
新建连接界面。
OracleJDBC连接服务名、SID和tnsnames.ora配置的多种方式
OracleJDBC连接服务名、SID和tnsnames.ora配置的多种⽅式⼀、通过plsql链接数据库,配置的时候分别使⽤SERVICE_NAME和SID,都可以链接成功
⼆、jdbc配置,以下三中⽅式都可以成功连接数据库
格式⼀: 使⽤ServiceName⽅式:
jdbc:oracle:thin:@//<host>:<port>/<service_name>
例 jdbc:oracle:thin:@//xxx.xxx.xxx.xxx:1526/CDEV
@后⾯有//, 这是与使⽤SID的主要区别。
(11g在@后不加//也OK)
这种格式是Oracle 推荐的格式.
因为对于集群来说,每个节点的SID是不⼀样的,⽽SERVICE NAME可以包含所有节点。
格式⼆: 使⽤SID⽅式:
jdbc:oracle:thin:@<host>:<port>:<SID>
例 jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1526:CDEV2
格式三:使⽤TNSName⽅式:
jdbc:oracle:thin:@<TNSName>
例 jdbc:oracle:thin:@CDEV
注意,ORACLE从10.2.0.1后⽀持TNSNames
⽐较:1和2中当@后边有双斜杠,端⼝号后边有单斜杠时,⽤服务名和实例名都可以链接成功,3中@后边没有双斜杠,端⼝号后边是冒号⽽不是斜杠的时候只能⽤实例名,当时笔者配置错误的时候是 jdbc:oracle:thin:@//<host>:1521:netgrid ,端⼝号后直接⽤了冒号。
Oracle数据库远程连接设置的四种方法
Oracle数据库远程连接设置的四种方法Oracle数据库的远程连接可以通过多种方式来实现,本文我们主要介绍四种远程连接的方法和注意事项,并通过示例来说明,接下来我们就开始介绍。
第一种情况:若oracle服务器装在本机上,那就不多说了,连接只是用户名和密码的问题了。
不过要注意环境变量%ORACLE_HOME%/network/admin/是否设置。
第二种情况:本机未安装oracle服务器,也未安装oracle客户端。
但是安装了pl sql development、toad sqldevelopment、sql navigator等管理数据库的工具。
在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。
这种情况下,本人以pl sql development远程连接ORACLE服务端数据库为例:1、在安装oracle服务器的机器上搜索下列文件:∙oci.dll∙ocijdbc10.dll∙ociw32.dll∙orannzsbb10.dll∙oraocci10.dll∙oraociei10.dll∙sqlnet.ora∙tnsnames.ora∙classes12.jar∙ojdbc14.jar把这些找到的文件复制放到一个文件夹,如 oraclient,将此文件夹复制到客户端机器上。
如放置路径为D:oraclient。
2、配置tnsnames.ora,修改其中的数据库连接串。
1.oracledata =2.3.(DESCRIPTION =4.5.(ADDRESS_LIST =6.7.(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))8.9.(CONNECT_DATA =10.11.(SERVICE_NAME = oracledata)12.13.)其中,oracledata是要连接的服务名;HOST = 192.168.0.58,是服务器IP地址;PORT = 1521是端口号。
Oracle数据库监听器(LISTENER)和本地服务名(Tnsname)配置
Oracle数据库监听器(LISTENER)和本地服务名(Tnsname)配置分类:Oracle 基础知识2009-11-24 10:12 8315人阅读评论(7) 收藏举报一、监听器(LISTENER)监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。
既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。
二、本地服务名(Tnsname)Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。
本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。
Oracle常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。
三、Oracle网络连接配置方法配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle 服务端或客户端的配置)。
在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如:$ netmgrWindows下启动Net Manager图形窗口如下图示:图(一)1、 Oracle监听器配置(LISTENER)如图(一)示,选中树形目录中监听程序项,再点击左上侧“+”按钮添加监听程序,点击监听程序目录,默认新加的监听器名称是LISTENER(该名称也可以由任意合法字符命名)。
选中该名称,选中窗口右侧栏下拉选项中的“监听位置”,点击添加地址按钮。
Oracle的常见错误及解决办法
Oracle的常见错误及解决办法ORA-12528:TNS:listener: all appropriate instances are blocking new connectionsORA-12528问题是因为监听中的服务使⽤了动态服务,实例虽然启动,但没有注册到监听。
实例是通过PMON进程注册到监听上的,⽽PMON进程需要在MOUNT状态下才会启动。
所以造成了上⾯的错误。
解决这个问题,有三种⽅法:1、把监听设置为静态;2、在tnsnames.ora中追加(UR=A);3、重新启动服务;⽅法1、通过修改listener.ora的参数,把listener.ora动态注册设置为静态注册,然后重新启动监听# listener.ora Network Configuration File: $ORACLE_HOME\network\admin\listener.ora# Generated by Oracle configuration tools.LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = [IP])(PORT = 1521))))SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = [DBNAME])(ORACLE_HOME = [$ORACLE_HOME])(SID_NAME = [SID])))静态注册的风险:如果在instance运⾏中,lisener重新启动,就找不到instance了。
静态注册需要先启动lisener,再启动instance。
且静态模式下,lisener status显⽰的是unknown⽅法2、启动到nomount状态,通过修改tnsnames.ora的参数# tnsnames.ora Network Configuration File: $ORACLE_HOME\network\admin\tnsnames.ora# Generated by Oracle configuration tools.SYK =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = [IP])(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = SYK)(UR=A)))然后连接上数据库SQL>alter database mount;SQL>alter database open;⽅法3、重启ORACLE或者重启ORACLE服务在oracle帐户下依序执⾏如下命令:sqlplus / as sysdba;//在其它帐户(如root)下执⾏可能会报错(ORA-01031)因为这些帐户没有在dba组中shutdown immediate;startup;oracle实例名: error while loading shared libraries: libskgxp10.so: cannot open shared object file: No such file or directory是环境变量LD_LIBRARY_PATH的问题。
Oracle 12c连接PDB时listener和tnsnames.ora配置
Oracle 12c连接PDB时,listener和tnsnames.ora配置1、配置监听首先要明确,所有的PDB都使用1个监听,配置多个实际上启动时也只有第1个有意义。
LISTENER =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) )接下来使用SID_LIST_LISTENER来进行静态注册服务。
SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = ora12c) #该服务是我配置的cdb信息(SID_NAME = ora12c))(SID_DESC =(GLOBAL_DBNAME = pdborcl)#该服务是我配置的pdb信息(SID_NAME = ora12c)))ADR_BASE_LISTENER = /opt/oracle2、tnsnames.ora配置观察发现,在tnsnames中配置pdb跟CDB,即原来11g的配置完全一样。
这里SERVICE_NAME = pdborcl使用得是PDB的名字,可以在v$pdbs中查看。
ORA12C =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) )(CONNECT_DATA =(SERVICE_NAME = ora12c)))pdborcl =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = ora12c_A)(PORT = 1521)) )(CONNECT_DATA =(SERVICE_NAME = pdborcl)))3、为了保险,检查下sqlnet.oraNAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)这一句是为了保证优先使用TNSNAMES解析。
oracle 服务无法启动的问题
服务器上包含多个库时,listener.ora和tnsnames.ora的配置收藏
1.配置内容:
1).listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(global_dbname = orcl)
)
(SID_DESC =
(SID_NAME = PRACTICE)
(ORACLE_HOME = D:\oracle\product\10.1.0\Db_1)
(global_dbname = PRACTICE)
)
(SID_DESC =
(SID_NAME = RCAT)
(ORACLE_HOME = D:\oracle\product\10.1.0\Db_1)
(global_dbname = RCAT)
)
)
LISTENER =SCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = doone.pan)(PORT = 1521))
descriptor
出现这错误,一般是listener.ora没配置对应库说明
)
)
)
2).tnsnames.ora
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = doone)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
监听器文件listener.ora的设置和tnsnames.ora设置
监听器文件listener.ora的设置和tnsnames.ora设置分类:oracle学习2011-09-19 23:33 1276人阅读评论(0) 收藏举报oracle数据库networkservice网络list监听器文件listener.ora的设置:监听器配置文件位置D:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN\listener.ora内容:LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = gaohaiyang)(PORT = 1521)))))需要注意是HOST的配置,一般情况下HOST=hostname,如果oracle所在主机连入网络(局域网或者因特网),还可以配置为主机IP地址,例如192.168.3.152但是在联网的时候不能设置为127.0.0.1或者localhost,否则连接时会出现如下错误:C:\Documents and Settings\Administrator>sqlplus pwgh_sz/pwgh_sz@orclSQL*Plus: Release 10.1.0.2.0 - Production on 星期一9月19 23:16:56 2011 Copyright (c) 1982, 2004, Oracle. All rights reserved.ERROR:ORA-12541: TNS:no listenerEnter user-name:如果oracle所在主机没有连入网络,则可以设置为127.0.0.1tnsnames.ora设置:tnsnames.ora文件的位置D:\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora内容:ORCL_SZ =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.100)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))需要注意到有网络服务名,在上面的例子中就是ORCL_SZ,使用sqlplus连接数据库时指定此名字,如:sqlplus pwgh_sz/pwgh_sz@ORCL_SZHost一般设置为oracle服务器的地址,如:192.168.0.100,但是如果要连接的数据库在本机上,则还可以设置为hostname。
Oracle数据库TNS详解
Oracle数据库TNS详解⽬录阐述介绍SQL Serve 和 Oracle⼀些区别配置⽂件和路径举例说明总结阐述TNS是Oracle数据库正确使⽤的必备条件之⼀,它⽤来管理和配置Oracle连接⼯具,⽬前我有⽤的⼯具如:SQL Server和Toad,它像是⼀个中间的桥梁,让客户端和数据库可以进⾏通讯,也就是我们平时的读写等等。
简要介绍透明⽹络底层(transparence Network Substrate),它最重要的⼀个作⽤是监听服务,很多情况下都要配置DNS,JDBC这⾥不考虑。
SQL Serve 和 Oracle⼀些异同点相同点:语法基本⼀致,使⽤也都类似,⼯具只是载体不同点:因为本篇主要讲述TNS,所以主要说关于TNS不同点。
SQL Serve会⾃动列出局域⽹中出现的服务器,只需要在⼯具上⾯选择指定服务器,然后输⼊账号和密码即可。
Oracle则不⼀样,不能⾃动列出局域⽹中的服务器,所以必须要配置TNS。
配置⽂件和路径配置⽂件:tnsnames.ora默认路径:%ORACLE_HOME%\network\admin\tnsnames.ora,%ORACLE_HOME%通常在环境变量中使⽤。
举例说明# tnsnames.ora Network Configuration File: C:\oracle\product\11.2.0\client_1\NETWORK\ADMIN\tnsnames.ora# Generated by Oracle configuration tools.GSSPRD=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.**.**.**)(PORT=1505))(CONNECT_DATA=(SERVICE_NAME= GSSED)))GSSPE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.**.**.**)(PORT=1505))(CONNECT_DATA=(SERVICE_NAME=GSSPE)))相信也没⼈会攻击我的IP,不过还是隐藏。
oracle中 tns配置流程
oracle中 tns配置流程英文回答:TNS (Transparent Network Substrate) configuration in Oracle involves setting up the network connectivity between the client and the Oracle database server. It allows the client to connect to the database by specifying a TNS alias instead of the actual network address of the server.The TNS configuration process typically involves the following steps:1. Install Oracle Client: Before configuring TNS, you need to ensure that the Oracle client software is installed on the client machine. This software provides the necessary tools and utilities to establish the connection.2. Locate the TNSNAMES.ORA file: The TNSNAMES.ORA file is a configuration file that contains the network service names and their corresponding network addresses. It istypically located in the ORACLE_HOME/network/admin directory.3. Edit the TNSNAMES.ORA file: Open the TNSNAMES.ORA file in a text editor and add a new entry or modify an existing entry to define the TNS alias for the database you want to connect to. The entry should include the following information:TNS alias: A unique name that identifies the database.Network address: The hostname or IP address of the database server.Port number: The port on which the database is listening.Service name: The name of the database service.4. Test the TNS configuration: After making the necessary changes to the TNSNAMES.ORA file, you can testthe TNS configuration by using the tnsping utility. Open a command prompt and run the following command: tnsping <TNS alias>. If the TNS configuration is correct, you should see a successful response indicating that the database is reachable.5. Connect to the database: Once the TNS configuration is validated, you can use the TNS alias to connect to the database from your application or command line. Simply specify the TNS alias as the connection identifier in the connection string.中文回答:在Oracle中,TNS(Transparent Network Substrate)配置涉及设置客户端与Oracle数据库服务器之间的网络连接。
tnsnames.ora 写法
tnsnames.ora 是Oracle数据库中的一个配置文件,它用于定义数据库服务的位置区域和名称,客户端连接数据库时会使用 tnsnames.ora 文件中定义的信息来定位数据库服务。
正确的编写和维护tnsnames.ora 文件对于数据库连接的正常运行至关重要,因此需要遵循一定的规范和写法。
1. 文件位置和命名tnsnames.ora 文件通常位于 $ORACLE_HOME/network/admin 目录下,其中 $ORACLE_HOME 为Oracle软件的安装目录。
文件名必须严格为 tnsnames.ora,大小写敏感。
2. 文件格式tnsnames.ora 文件采用文本格式进行编辑,可以使用任何文本编辑器进行修改。
每个数据库服务的定义应该按照以下格式进行编写:```<服务名> =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = <主机名>)(PORT = <端口号>))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = <服务名>)))```在上述示例中,<服务名> 为该数据库服务的名称,<主机名> 为数据库服务器的主机位置区域,<端口号> 为数据库监听的端口号,<服务名> 为数据库的服务名或者SID。
3. 服务名在 tnsnames.ora 文件中定义的服务名应该具有一定的可识别性和描述性,以方便数据库管理员和开发人员识别和使用。
通常建议使用数据库实例的名称或者与业务相关的名称作为服务名。
4. 主机名和端口号在定义数据库服务时,必须准确填写数据库服务器的主机名和监听端口号。
这些信息由数据库管理员在部署数据库时进行配置,需要与实际的数据库服务器配置保持一致。
5. 服务名与实例名在 tnsnames.ora 文件中,需要明确区分服务名和数据库实例名。
oracle数据库tns配置方法详解
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\adminlistener.ora:监听器配置⽂件,成功启动后是驻留在服务器端的⼀个服务。
Oracle的sqlnet.ora文件配置
Oracle的sqlnet.ora⽂件配置 DBA对这个⽂件⼀定不会陌⽣,⼤家了解最多的也⼀定是sqlnet.ora⽤来决定oracle怎么解析⼀个连接中出现的字符串,例如:sqlplus sys/oracle@orcl那么这个orcl怎么解析?如果你的sqlnet.ora这样配置的: SQLNET.AUTHENTICATION_SERVICES= (NTS) NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)那么,客户端就会⾸先在tnsnames.ora⽂件中找orcl的记录.如果没有相应的记录则尝试把orcl当作⼀个主机名,通过⽹络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这⾥orcl并不是⼀个主机名 如果我是这个样⼦ NAMES.DIRECTORY_PATH= (TNSNAMES) 那么客户端就只会从tnsnames.ora查找orcl的记录今天,我们来详细的了解⼀下sqlnet.ora中参数的配置以及各⾃的意义。
按官⽅⽂档的说法,sqlnet.ora有这么多作⽤:Specify the client domain to append to unqualified namesPrioritize naming methodsEnable logging and tracing featuresRoute connections through specific processerConfigure parameters for external namingConfigure Oracle Advanced SecurityUse protocol-specific parameters to restrict access to the database重要参数及解释:1.BEQUEATH_DETACH控制unix系统中signal handling 的开关,默认是no,即signal handling 打开。
oracle切换数据库连接的实例
一、导言Oracle数据库是一种流行的关系型数据库管理系统,广泛用于企业级应用程序中。
在实际应用中,连接到数据库的实例可以随时发生变化,因此需要了解如何切换数据库连接的实例。
二、什么是数据库连接的实例数据库连接的实例是指在客户端与数据库服务器之间建立的一个连接。
在Oracle数据库中,每个实例都有一个唯一的标识符,称为实例名。
在连接数据库时,需要指定要连接的特定实例。
三、切换数据库连接的实例的方法1.使用Oracle Net Manager工具Oracle Net Manager是一个可视化工具,用于管理Oracle数据库的网络配置。
通过Oracle Net Manager,可以轻松地切换数据库连接的实例。
具体步骤如下:a.打开Oracle Net Manager工具,找到要修改的连接项目;b.在连接项目的属性中,找到“服务名(SID)”字段;c.在该字段中输入要切换的数据库实例名;d.保存更改,并在客户端重新连接数据库即可。
2.使用tnsnames.ora文件在Oracle数据库中,可以通过修改tnsnames.ora文件来切换数据库连接的实例。
具体步骤如下:a.打开tnsnames.ora文件,找到要修改的连接项目;b.在连接项目的配置中,找到“SERVICE_NAME”字段;c.在该字段中输入要切换的数据库实例名;d.保存文件,并在客户端重新连接数据库即可。
3.使用SQL*Plus命令行工具通过SQL*Plus命令行工具,可以直接在命令行中切换数据库连接的实例。
具体步骤如下:a.在命令行中输入“sqlplus 用户名/密码数据库实例名”,连接到指定的数据库实例;b.输入密码后,即可成功切换数据库连接的实例。
四、切换数据库连接的实例的注意事项1.确保连接信息的准确性在切换数据库连接的实例时,需要确保连接信息的准确性,包括实例名、用户名和密码等。
输入错误的连接信息将导致连接失败。
2.避免影响生产环境在切换数据库连接的实例时,需要谨慎操作,避免影响到生产环境的正常运行。
ORACLE配置,修改tnsnames.ora文件实例
ORACLE配置,修改tnsnames.ora⽂件实例ORACLE配置tnsnames.ora⽂件实例客户机为了和服务器连接,必须先和服务器上的监听进程联络。
ORACLE通过tnsnames.ora⽂件中的连接描述符来说明连接信息。
⼀般tnsnames.ora 是建⽴在客户机上的。
如果是客户机/服务器结构,整个⽹络上只有⼀台机器安装了ORACLE数据库服务器,那么只需在每个要访问ORACLE服务器的客户机上定义该⽂件,在服务器上⽆需定义。
但是,如果⽹络上有多台机器均安装了ORACLE数据库服务器,并且服务器之间有数据共享的要求,那么在每台服务器上都必须定义该⽂件。
tnsnames.ora⽂件缺省放在/ORACLE_HOME/product/8.1.7/network/admin⽬录下。
下⾯是tnsnames.ora的⽂件样式:ORA817 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = sun62)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = )))EXTPROC_CONNECTION_DATA =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))(CONNECT_DATA =(SID = PLSExtProc)(PRESENTATION = RO)))字段含义如下:ADDRESS_LIST 表⽰该客户机要经由多种协议与⼀台或多台服务器连接。
在该样式⽂件中就表⽰该客户机要⽤TCP/IP协议来和服务器相连。
PROTOCOL 指明要连接使⽤的协议。
SERVICE_NAME “SERVICE_NAME”就是“Global Database Name”,ORACLE8i数据库使⽤“Global Database Name”来唯⼀标识⾃⼰,通常的格式为“name.domain”,此处的值为“”。
tnsnames.ora配置小结
tnsnames.ora配置小结oracle网络配置三个配置文件listener.ora、sqlnet.ora、tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下。
1. sqlnet.ora—–作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串。
例如我们客户端输入sqlplus sys/oracle@orcl假如我的sqlnet.ora是下面这个样子SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)那么,客户端就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这里orcl并不是一个主机名如果我是这个样子NAMES.DIRECTORY_PATH= (TNSNAMES)那么客户端就只会从tnsnames.ora查找orcl的记录,括号中还有其他选项,如LDAP等并不常用。
2. Tnsnames.ora——这个文件类似于unix 的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES是,才会尝试使用这个文件。
PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。
HOST:数据库侦听所在的机器的机器名或IP地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器。
在UNIX或WINDOWS下,可以通过在数据库侦听所在的机器的命令提示符下使用hostname命令得到机器名,或通过ipconfig(for WINDOWS) or ifconfig(for UNIX)命令得到IP地址。
Oracle安装TNS_ADMIN环境变量设置参考
Oracle安装TNS_ADMIN环境变量设置参考很多oracle产品都有⾃⼰的TNS⽂件,如果你的系统⾥装了多个Oracle的产品的话,那么客户端连instance的时候,到底是使⽤那个tnsnames.ora呢?这个时候就需要看TNS_ADMIN这个参数了。
Question: What is the tns_admin parameter and how do I use tns_admin t o define a common location for my TNS files? Answer: The tns_admin parameter determines the location of the tns administration files (e.g. tnsnames.ora and listener.ora, etc.)The tns_admin parameter is super useful on servers with many databases on different release levels (hence different $ORACLE_HOME directories) because all databases tns_admin values can be set to a single location, allowing a single set of SQL*Net files for all databases on the server.Without the tns_admin variable, each instance would have it's own set of TNS files in the $ORACLE_HOME/network/admin directory.查看⽅法:命令⾏ C:\Documents and Settings\ptian>set TNS_ADMINTNS_ADMIN=D:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN 这就表⽰客户端会从D:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN下读取TNS的设置修改⽅法:有两个地⽅可以修改,⼀个是注册表,⼀个是系统环境变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在安装目录下,如:E:OracleOra81networkADMIN下用写字板或记事本打开TNSNAME.ORA文件,文件内容大概如下:
=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zcb_8115)(PORT = 1521))
)
(CONNECT_DA TA =
(SERVICE_NAME = test)
)
)
蓝色部分为安装时录入的信息。
如果该文件没有配置成功,该文件可通过以下步骤进行配置:
1)、在程序菜单中打开NET8 CONFIGURA TION ASSISTANT
2)、选择Net8 Configuration Assistant,打开,进入"Net8 Configuration Assistant:欢迎"窗口2)、选择"本地网络服务名设置",点击"下一步",弹出以下窗体;
3)、在"Net8 Configuration Assistant:网络服务名配置"窗口中选择"添加",点击"下一步",弹出以下窗体;
4)在"Net8 Configuration Assistant:网络服务名配置,数据库版本"窗口中选择"ORACLE 8I数据库或服务",点击"下一步",弹出以下窗体;
5)在"Net8 Configuration Assistant:网络服务名配置,服务名"窗口输入服务名,此服务名跟安装时录入的服务名(SID)相同,录入后,点击"下一步",弹出以下窗体;
6)、在"Net8 Configuration Assistant:网络服务名配置,请选择协议"窗口选择"TCP"此时只能选择"TCP",点击"下一步", 弹出以下窗体;
7)在"Net8 Configuration Assistant:网络服务名配置,TCP/IP协议"窗口输入主机名(如果连接本地数据库,则录入本地计算机名,如果连接远程数据库,则录入远程计算机名),选择默认的"请使用标准端口号1521"(建议最好不要修改),点击"下一步",弹出以下窗体;
8)、在"Net8 Configuration Assistant:网络服务名配置,测试"窗口选择"是,进行测试",点击"下一步",弹出以下窗体;
9)、当"Net8 Configuration Assistant:网络服务名配置,正在连接"窗口对话框中出现提示"正在连接….测试成功"信息,表示测试通过。
此时点击"下一步",进入"Net8 Configuration Assistant: 网络服务名配置,网络服务名"窗口;
10)、在"Net8 Configuration Assistant:网络服务名配置,网络服务名"窗口输入网络服务名,服务名为ORACLE连接串,可任意录入,如:test,点击"下一步",弹出以下窗体;
11)、在"Net8 Configuration Assistant:网络服务名配置,是否需要另一个网络服务名"窗口中选择"否",点击"下一步",进入"网络服务名配置完成" 窗口;
12)、在"网络服务名配置完成"窗口中点击"下一步",弹出以下窗体;
13)、在"欢迎"窗口点击"完成",退出配置过程
TNSNAMES.ORA配置完成后,再配置BDE(BDE如何配置略),可通过BDE、PLSQL、SQL EXPLORER和TNSPING命令来测试ORACLE是否连接正确。
下面用TNSPING来测试是否连接。
在命令提示符下录入:TNSPING 更多信息请查看IT技术专栏。