先说说我是怎么样连接上的: 我先安装了Oracle9i客户端精简版,然后将原来oracle 11g r2的network文件夹下的tnsnames.ora文件覆盖掉精简客户端下的network文件夹中的...上面说到的三个文件都可以通过图形的配置工具来完成配置 $ORACLE_HOME/netca 向导形式的 $ORACLE_HOME/netmgr profile 配置的是sqlnet.ora也就是名称解析的方式...,然后再到tnsnames.ora文件中找demo.server.com网络服务名,这当然找不到了,因为该文件中只有demo网络服务名,所以报错。...另外原则上tnsnames.ora中的配置不区分大小写,但是我的确遇到区分大小写的情况,所以最好将使用的网络服务与tnsnames.ora中配置的完全一样。...该错误表示能在tnsnames.ora中找到网络服务名,但是在tnsnames.ora中指定的SERVICE_NAME与服务器端的 SERVICE_NAME不一致。
Net 来与服务器进程交互 服务器进程则与实例进行交互(由Oracle Net维护) 实例通过后台进程交互来完成数据库的读写操作 Oracle Net 连接方式 本地客户端连接的数据库(即客户端与数据库位于同一台服务器...中(GUI界面)的Profile 服务器端配置tnsnames 位置:ORACLE_HOME/network/admin/tnsnames.ora --对应于netmgr中(GUI界面)的Service...四、常用的配置文件 ldqp.ora -->用于配置LDAP目录名称解析 cman.ora -->用于配置Oracle 连接管理参数 tnsnames.ora -->用于配置本地客户端或远程客户端的本地名称解析...分支 -->对应于sqlnet.ora文件,可以设置客户端和服务器端同时应用的Oracle选项 Sevice Naming 分支 -->用于配置客户端的名称解析,对应于tnsnames.ora文件...如果客户端连接描述符中使用的是SID,则不再尝试匹配该值,而是对监听器中设置的SID_NAME进行匹配 该参数的值主要从初始化参数文件中的db_name和db_domian中组合得到。
2、listener.ora文件 监听器在服务器中对应的配置文件叫listener.ora,在…\dbhome\network\admin\目录下,格式如下。...SID_LIST_LISTENER表示名为LISTENER的监听器内注册的实例列表,里面包含所注册的实例信息,全局名称和sid名称;LISTENER表示监听器,里面包含该监听器所支持的协议及地址。...其中,status可以查看当前服务器中监听器的状态,start可以启动特定监听器,stop可以关闭特定监听器,不加参数指启动或关闭所有监听器。...3、监听器的IP配置为localhost 在oracle服务器端,检查tnsnames.ora和listener.ora文件(一般情况下oracle服务器不需要tnsnames.ora...症状多发生在使用plsql或其他客户端工具时,没有配置oracle主目录导致未找到tnsnames.ora文件或该文件本身有问题(文件中的实例名前不能有空格)。
解决问题:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 测试环境:RedHat7.4 + Oracle 11g 64位 相关说明: 数据库服务器: Oracle11g 64位软件的安装位置为...中的localhost改为192.168.8.13; 2.修改E:\app\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora中的localhost 改为...具体操作步骤如下: 一、修改数据库服务器中listener.ora文件内容 命令: # vi /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/...)(PORT = 1521))) 二、修改数据库服务器中tnsnames.ora文件内容 命令: # vi /u01/app/oracle/product/11.2.0/dbhome_1/network...) ) 三、在数据库服务器中启动监听并更新注册 最后重启一下监听与数据库并更新注册 $ lsnrctl stop #先关闭监听服务 $ lsnrctl start #开启监听服务
通过ORACLE_PDB_SID 如果是18c、19c以上,可以设置ORACLE_PDB_SID环境变量的值,然后再登录,就是这个PDB, 3....通过设置tnsnames.ora 配置一下tnsnames.ora,其中的service_name设置成PDB的名称, 再通过tns,登录到数据库,就是当前PDB的环境中, 4. ...通过EASY CONNECT 通过EASY CONNECT,指定"/"跟着PDB名称,就可登录PDB, 如果是PLSQL Developer,Database中输入EASY CONNECT的"@"跟着的字符串...,就可以登陆了, 如果是SQL Developer,“服务名”填写PDB名称,就可以登陆了, 5. ...通过JDBC程序的连接 如果是连接PDB,用"/"跟着PDB名称, jdbc:oracle:thin:@ip:port/pdb_name 如果连接CDB、12c以下的,不用"/",用":", jdbc:
另一种方式则是直接修改tnsnames.ora中的服务名,使之与监听器中的listener名字保持一致,具体参考下面的细节。...描述信息中给出了listener.ora中网络名是否与tnsnames.ora相一致,需要检查 2.查看监听 [oracle@odbp admin]$ more listener.ora # listener.ora...SID_LIST_LISTENER_ODBP = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = odbp.oradb.com) (ORACLE_HOME =...= PLSExtProc) (PRESENTATION = RO) ) ) 由上面的listener.ora与tnsnames.ora可知 listener.ora中的监听名与tnsnames.ora...中的服务名不一致 三、解决方法 1.修改tnsnames.ora中的服务名为LISTENER_ODBP,然后重新启动数据库即可 2.可以将spfile(无pfile情况下)转储为pfile文件,将local_listener
登录 SQLPlus 登录 SQLPlus 是最基础也是最关键的步骤。需要ORACLE_SID 和ORACLE_HOME环境变量,如果这些变量没有被设置或设置不正确,请为其设置正确的值。...4.通过 TNSNAMES.ORA 文件 首先,确保你的 tnsnames.ora 文件中已经定义了相关的 SID。该文件通常位于 $ORACLE_HOME/network/admin/ 目录下。...这允许你直接在连接字符串中指定主机、端口和 SID 或服务名,而不需要 tnsnames.ora 文件中的定义。...SPOOL filename.log CONNECT:使用不同的用户名、密码和/或服务名重新连接。 EDIT (或 ED):编辑 SQL 缓冲区中的命令。.../listener.ora 监听器日志文件:/opt/oracle/diag/tnslsnr/52e52272aea8/listener/alert/log.xml 监听的端点: 使用 IPC 协议与关键词
概述 因未设置系统环境变量ORACLE_SID导致ORA-12162错误 分析原因 首先登录数据库主机执行 oerr ora 12162 ? 我们首先查看看下 tnsnames.ora文件 ?...数据库服务器端使用TNSNAMES.ORA中记录的连接串连接没有问题 查看是否指定ORACLE_SID ,使用echo ORACLE_HOME和echo ORACLE_SID确认系统当前的ORACLE_HOME...将ORACLE_SID等环境变量写入到系统profile中,确保系统profile文件内容的有效性; ? ? 设置RACLE_SID,重新尝试登录,解决。 ?...详说ORACLE_HOME和ORACLE_SID 通常情况下,ORACLE_SID这个环境变量全称Oracle System Identifier,,用于在一台服务器上标识不同的实例,默认情况下,实例名就是...结论:在UNIX、Linux平台上, 相同的ORACLE_HOME下不可以同时运行ORACLE_SID相同的多个实例, 不同的ORACLE_HOME下可以同时运行ORACLE_SID相同的多个实例
/u01/app/oracle/oradata/orcl/cad 基本步骤与上面相同,只是实例名有不同之处 1 主库rac集群,设置为归档,和force logging模式 2 主库添加 standby...Redo log 文件 3 主备库修改listener.ora 和tnsnames.ora 文件 主库与之前基本相同 备库 [oracle@dg1 admin]$ cat listener.ora #...SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /u01/app/oracle.../product/11.2.0/db_1) (SID_NAME = orcl) ) (SID_DESC = (GLOBAL_DBNAME = cad) (ORACLE_HOME = /u01/...[oracle@dg1 admin]$ cat tnsnames.ora bol= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*.15
一、使用PLSQL连接ORACLE数据库时,报错信息如下: "ORG-12514:TNS:监听进程不能解析在连接描述符中给出的SERVICE_NAME" ?...二、解决办法: 修改tnsnames.ora配置 如:我本地的为: 路径=D:\Program Files\oracle\Oracle9iClient\ora92\network\admin\tnsnames.ora...= XIEHENG) # (SERVER = DEDICATED) # ) # ) ## 配置说明: # --XIEHENG_192.168.16.20指的是网络服务名,可用SID_HOST...来命名(按个人习惯) # --HOST指Oracle服务器的机器名或IP # --PORT指端口,默认为1521 # --XIEHENG指的是Oracle的SID # --SERVER = DEDICATED...来命名(按个人习惯) # --HOST指Oracle服务器的机器名或IP # --PORT指端口,默认为1521 # --XIEHENG指的是Oracle的SID # --SERVER = DEDICATED
这里我用一个本地库与一个远程库的实例,再次验证下。...@liu Desktop]$ echo $TWO_TASK [oracle@liu Desktop]$ 当未指定服务名连接数据库时,默认是bisal这个本地数据库,即由系统的ORACLE_SID...SQL> show user USER is "SYS" SQL> 总结: 1、未设置TWO_TASK环境变量时,不指定服务名连接的默认是ORACLE_SID的值。...2、当设置TWO_TASK环境变量时,不指定服务名连接的默认是TWO_TASK的值。 3、当使用@服务名方式连接时,会忽略ORACLE_SID或TWO_TASK的值。...8、个人理解,设置TWO_TASK,能够覆盖ORACLE_SID的作用,改变不带@服务名默认连接的数据库(本地or远程),要求所有的sqlplus连接都是通过SQLNet的方式,禁止操作系统验证。
公司要求局域网访问oralce 数据库自己之前也没有经验看了网上很多资料也试了很多 也都不行后面经过不断尝试 终于可以了 把自己的解决问题思路及其方法分享下 ORACLE与MYSQL局域网连接 1.Oracle...是服务器端用的,oracle监听程序,就是读的这个文件,里面有oracle服务器端的socket监听地址和端口( 如果要想局域网中的其他人,能够访问我本地的oracle,要把我本机的地址写进去,如10.11.19.19...文件 tnsnames.ora是记录客户端访问数据库的本地配置: 客户端是通过tnsnames.ora来识别连接服务器的 如果你没有添加tnsnames.ora,那么你就连接不上服务器的。。...PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。 2. HOST:数据库所在的机器的主机名或IP地址。...PORT:数据库监听器的端口,可以查看服务器端的listener.ora文件或在数据库服务器中通过lsnrctl status [listener name]命令来查看。一般为1521端口。 4.
建了一个库,想通过Oracle Net访问,需要配置监听器和tnsnames.ora,接下来碰到一系列的问题。。。 1....,使用动态注册服务。...(指当实例启动后,由后台进程PMON在监听器中注册数据库服务信息。动态注册机制下,原来监听器中的SID_LIST部分将不再需要。)...解决过程中,有的帖子说需要设置$TNS_ADMIN环境变量,尽管这是有两个Oracle版本同机,但后来测试不配置,也可以访问,说明这不是关键问题。...解决过程中,有的帖子说sqlnet.ora中的NAME.DEFAULT_DOMAIN参数,以为从跟踪日志tnsping.trc看default name server domain is [root],
配置 ORACLE_SID,使用 OS 验证连接 cdb1 [oracle@orcl19c:/home/oracle]$ export ORACLE_SID=cdb1 [oracle@orcl19c:.../home/oracle]$ echo $ORACLE_SID 1.2 连接多租户数据库 cdb1 设置了 ORACLE_SID 环境变量后,直接使用 sqlplus 本地操作系统认证登录 [oracle...@orcl19c:/home/oracle]$ sqlplus / as sysdba dbca 建库后, tnsnames.ora 中已经增加了 ORCL [oracle@orcl19c:/home/...)、端口号、服务名 [oracle@orcl19c ~]$ sqlplus sys/oracle@192.168.30.81:1521/pdb1 as sysdba 配置 tnsnames.ora 增加...pdb1 编写客户端网络配置文件 tnsnames.ora,增加 pdb1 的配置 [oracle@orcl19c ~]$ cd $ORACLE_HOME/network/admin [oracle@
原理: 一、Oracle客户端与服务器端的通讯机制 1、OracleNet协议 如下图所示,Oracle通过Oracle Net协议实现客户端与服务器端的连接以及数据传递。...Oracle Net是同时驻留在Oracle数据库服务器端和客户端上的一个软件层,它封装了TCP/IP协议,负责建立与维护客户端应用程序到数据库服务器的连接。...2、客户端与服务器端的连接过程 在分析客户端与服务器端的连接机制之前,先要定义两个概念,一个是Oracle监听器,一个是Oracle网络服务名。...连接建立后,客户端与服务器端就可以直接进行通讯,不再需要监听器参与。 要实现监听器对客户请求的监听,需要对监听器进行配置,包括监听端口、监听器所在数据库的全局数据库名称、数据库实例等信息。...本项应该与当前Oracle服务的init.ora文件中的SERVICE_NAMES项一致 SID_NAME 含有用于本Oracle实例的Oracle SID的名称 ?
有关客户端与服务端负载均衡的单独测试请参考: Oracle RAC 客户端连接负载均衡(Load Balance) Oracle RAC 服务器端连接负载均衡(Load Balance) ...本文的测试将结合前篇文章使用的脚本与样例,是前两篇测试的一个总结。...一、配置需求 1、服务器端各节点监听器正常提供服务,如果使用非缺省的1521端口,请参考 ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora) oracle...= (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /u01/oracle...中启用load_balance oracle@SZDB:~> tail -11 $ORACLE_HOME/network/admin/tnsnames.ora GOBO4 = (DESCRIPTION
而且在Oracle 11g RAC环境中,对于集群监听器的配置由grid用户来接管了。基于这种情形的单实例非缺省监听及端口该如何配置呢?...配置非默认端口的动态服务注册 配置sqlnet.ora限制IP访问Oracle Oracle 监听器日志配置与管理 设置 Oracle 监听器密码(LISTENER) 配置ORACLE 客户端连接到数据库...The command completed successfully 2、配置非缺省的监听器并实现动态注册 --切换到Oracle用户下,并清空其下的listener.ora与tnsnames.ora...,给出两种解决方案, --一是按照前面local_listener参数值的格式设置新的ip及端口,或者将这个描述信息添加到tnsnames.ora文件中 --下面我们选用了第二种解决方案 [oracle...c、注意netca与netmgr在配置监听器时的差异,由上测试可知netca不能为监听添加数据库服务,即SID_LIST_项,而netmgr可以实现。
@linux4 ~]$ export ORACLE_SID=sybo3 [oracle@linux4 ~]$ sqlplus / as sysdba SQL> startup nomount... 上面是一堆的RMAN与ORA相关错误号了 在执行脚本backup as copy reuse时出现了错误,也就是说备份的时候出现错误RMAN-03009 其次是ORA-17629...上面只是一个初步的推测,从Oracle Metalink找到了关于这个问题的描述。就是需要在两个服务器之间都配置到target DB与Auxiliary DB的tnsnames。 ...检查一下两个主机的tnsnames.ora的配置 [oracle@linux3 admin]$ more tnsnames.ora # tnsnames.ora Network Configuration...,即与Auxiliary server端使用相同的tnsnames entry 下面测试tnsnames的连通性 [oracle@linux3 admin]$ tnsping aux
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME =...是新增加的内容,注意修改ORACLE_HOME路径 (SID_DESC = (SID_NAME = orcl) (ORACLE_HOME = D:\app\shuhao\...admin\tnsnames.ora # Generated by Oracle configuration tools....(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) #新增 @ 标识符,用于区分本地与远程...) 启动服务与监听,这个就不需要描述了。
= (TNSNAMES,HOSTNAME,EZCONNECT) 那么,客户端就会首先在tnsnames.ora文件中找ora的记录.如果没有相应的记录则尝试把ora当作一个主机名,通过网络的途径去解析它的...注意一定要顶行书写,否则会无法识别服务别名。 PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。 HOST:ORACLE服务器端IP地址或者hostname。...通过select * from global_name; 查询得出 ORACLE_HOME :oracle软件的跟目录 SID_NAME :服务器端(本机)的SID PROTOCOL:监听协议,一般都使用...当你输入sqlplus sys/oracle@orcl的时候 1. 查询sqlnet.ora看看名称的解析方式,发现是TNSNAME 2....则查询tnsnames.ora文件,从里边找orcl的记录,并且找到主机名,端口和service_name 3. 如果listener进程没有问题的话,建立与listener进程的连接。 4.
领取专属 10元无门槛券
手把手带您无忧上云