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)
- 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技术专栏。