之前因为安装的是windows server 2008 r2的系统,oracle是11g r2 64bit,因为像很多网友一样,无法使用pl/sql developer 8连接oracle,今天可算连上了,对listener.ora sqlnet.ora tnsnames.ora三个文件、TNSListener服务的认识也深了一层。
最近在从活动数据库进行异机克隆时碰到了ORA-17629,ORA-17627,ORA-12154的错误,起初以为是一个Bug呢。Oracle Bug着实太多了,已经成了习惯性思维了。汗!错误提示是无法连接到连接到远程数据库,连接字符串无法解析。咦,配置了从auxiliary DB到target DB的tnsnames,且都是连通的阿......
从Oracle客户端连接到服务器,除了使用静态注册方式之外,9i后续的版本支持动态注册服务,同时可以将服务注册到非默认的端口。将服务注册到非默认端口可以提高数据库系统的安全性。
Oracle11g 64位软件的安装位置为/u01/app/oracle/product/11.2.0/dbhome_1,数据库名为默认的orcl,
最近系统启动时,收到了ORA-00119以及ORA-00132的错误,该错误实际上跟LISTENER有关,通常的处理办法是将spfile转储为pfile然后从pfile启动
设置了 ORACLE_SID 环境变量后,直接使用 sqlplus 本地操作系统认证登录
在某些特定的情形下,有时候需要从客户端连接到RAC中指定的实例,而不是由客户端Load_balance来动态选择或者是通过服务器端的监听器根据负载情形来转发。对此我们可以通过为tnsnames.ora中特定的网络服务名添加instance_name子项,或者是单独建立一个指向所需实例的网络服务名,下面描述这两种情形。
有网友反映,他在一套Oracle的测试环境中配置有两个监听,分别监听不同端口。 目前想把环境上的一套数据库同时注册到这两个监听,他将数据库参数local_listener和tnsname.ora文件配置如下:
起因是群里面一个人问了他的Windows客户端采用easy connect方式连接Oracle服务器的时候,报错如下:
要想用ORACLE SQLdeveloper或者第三方工具PLSQLdeveloper、Toad等连接ORACLE数据库,必需要配置TNSnames.ora文件,
"ORG-12514:TNS:监听进程不能解析在连接描述符中给出的SERVICE_NAME"
我没有安装简易版oracle客户端。我安装的是企业版oracle。 要连接远程的oracle数据库,首先要安装oracle数据库(我的是企业版),plsql。 1.在oracle的安装目录下找到tnsnames.ora F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora 用记事本方式打开,添加以下:
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器。大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口。而且在Oracle 11g RAC环境中,对于集群监听器的配置由grid用户来接管了。基于这种情形的单实例非缺省监听及端口该如何配置呢?本文给出了解决方案,并且使用了静态及动态两种注册方法。
提示:本文同样适合于plsql developer连接32位的各个版本oracle。
plsql 客户端连接工具是oralce 数据库最常用,最专业的使用工具,但是使用起来不是那么方便,记录一下使用的过程吧
sqlnet.ora文件的作用类似于Linux系统的nsswitch.conf文件,通过该文件来决定如何查找一个连接中出现的连接字符串。例如,在客户端输入命令:sqlplus sys/oracle@orcl,而sqlnet.ora的配置如下所示:
相关文章:主备切换的准备工作(r7笔记第83天) 之前也强调过元数据的重要性,而且强调过备库需要考虑的很多方面,如果考虑不周到,其实我们的备库还没有做好切换的准备,而且最近也连连处理了多起问题, 发现灾备中还是有很多的思考的东西,所谓实践出真知,这些地方不注意,只能保证数据不丢失,对于业务连接,应用响应和影响范围来说都是不可估量的。 很多次的灾备切换中,如果在同机房的情况下,在failover的场景中,为了尽可能减少应用的影响范围,一般都是直接修改备库的IP为原来主库的IP, 那么防火墙的配置就尤为重要,防
现在做测试的出去面试,都会被问到linux,不会几个linux指令都不好意思说自己是做测试的了,本篇收集了几个被问的频率较高的linux面试题
tnsping,作为Oracle连接测试的一个小巧的工具,其实大家已经不陌生了,但是使用tnsping有一个问题,就是连接超时,当然这个和网络的 安全策略等密不可分,但是摆在我面前的一个问题是,现在有大量的服务器,每台数据库服务器上都有tnsnames.ora,如果需要判断 tnsnames.ora里面的配置是否生效,使用tnsping是一个很自然的选择。 我也这么做了,我写了一个命令去解析tnsnames.ora 然后把里面的连接对象给标示出来。 cat tnsnames.ora|awk '{print
PL/SQL不提供直连oracle(64位)的工具,在没有安装oracle(64位)客户端的情况下,必须下载instantclient-basic-win32工具,所以,要完成连接的工作,必须按以下步骤:
在微信群中有朋友提出一个问题:如何获得Oracle的TNS_ADMIN的变量值? TNS_ADMIN 是Oracle的一个环境变量,指向 SQL*Net 配置文件的位置。常见的配置文件有 sqlnet.ora 和 tnsnames.ora 等。 通常在 Windows 上,环境变量的设置类似如下: set TNS_ADMIN=%ORACLE HOME%\network\admin 在 Unix/ Linux 设置类似如下: export TNS_ADMIN=$ORACLE HOME/network/admi
一、SESSION切换 SYS@orcl1> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDB01 READ WRITE NO SYS@orcl1> alter session set container=pdb01; Sessio
在Linux环境下,可以设置TWO_TASK环境变量,当用户连接数据库且没有指定服务名时,会自动利用TWO_TASK的设置作为环境变量连接数据库。其中,TWO_TASK的值为tnsnames.ora文件中配置的值。示例如下所示:
每次安装Oracle以后,都会出现使用plsql连接不上的问题!多次重启电脑、重装系统的磨人经历之后,
新入职公司,需要安装一些软件,安装了oracle客户端和plsql,结果发现plsql的database是空白,没有可选。找了度娘,查看安装路径,是oracle安装路径:d:/oracle/product/11.2.0/client_1/admin文件夹下少了两个文件,listener.ora和tnsnames.ora,于是卸载重装,折腾了几次,连注册表都删了,还是不行。 解决方法: 在admin路径栏敲cmd,netca,根据提示新建一个监听。admin文件夹下就会多一个listener.ora文件(可能还会多几个其他文件,不影响)。 至于tnsnames.ora,可以自己写,或者网上找一个,或者找同事copy一个(我是找同事要的,结果掉抗了)。 好了,文件配齐了。然后如果你的plsql连接页面的database还是没有可选(他是读你的tnsnames.ora文件的),那就在去查看你的环境变量有没有TNS_ADMIN这个变量(计算机-右键-属性-高级系统设置-环境变量),如果没有就新建一个,如果有,查看他的值得路径是不是你刚才配置文件的那个admin路径,如果没有,新建一个,值设为admin 的路径。到这里应该可以解决了。 如果你还是报ora:12154,那么你需要好好看一下你同事给你的tnsnames.ora文件,可能其中有一部分是已经废弃的,好死不死你又不知道,结果一直用错误的数据连接,打死你也连不上。所以,如果其他问题都排除了,你最好用一个你同事正在使用的数据库(新入职的更需要注意,你拿到的配置可能是n年以前的) 下面是参考解决的连接:解决pl连接报:ora:12154
杨大师(http://space.itpub.net/4227/viewspace-663069)介绍过TWO_TASK环境变量的作用,指出“在Unix和Linux环境下,可以设置TWO_TASK环境
Oracle RAC 负载均衡使得从客户端发起的连接能够有效地分配到监听器负载较小的实例上。有两种方式实现客户端负载均衡,一是通过配置客户端的load_balance,一是通过配置服务器端的remote_listener参数。两种方式各有优劣,而且两者并不相互排斥,因此可以结合两种方式来更加有效的实现负载均衡。本文将描述两者结合的使用情况(oralce 10g rac)。
建了一个库,想通过Oracle Net访问,需要配置监听器和tnsnames.ora,接下来碰到一系列的问题。。。 1. 添加监听器配置,listener.ora文件默认包括: LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) ) ADR_BASE_LISTENER = /opt/app/ora11g 为了新建监听器名称,添加如下: DCSOPEN = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 172.101.19.57)(Port = 1521))) 或 DCSOPEN = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dcsopen2Node)(PORT = 1521)) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 或 DCSOPEN = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 172.101.19.57)(Port = 1521))) SID_LIST_DCSOPEN = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = dcsopen) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (SID_NAME = dcsopen) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 或 DCSOPEN = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.101.19.57)(PORT = 1521)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) ) ) SID_LIST_DCSOPEN = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /opt/app/ora11g/product/11.2.0/dcsopen) (PROGRAM = extproc) ) ) ADR_BASE_DCSOPEN = /opt/app/ora11g 2. 添加本机的tnsnames.ora文件配置: dcsopen = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.101.19.57)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = dcsopen) ) ) 3. 使用tnsping dcsopen测试,报错: ora11g>tnsping dcsopen TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 08-JAN-2015 00:38:55 Copyright (c) 1997, 2009, Oracle. All rights reserved. Used parameter files: /opt/app/ora11g/product/11.2.0/dcsopen/network/admin/sqlnet.ora TNS-03505: Failed to resolve name 4. 使用sqlplus登
服务端:RHEL6.5 + Oracle Server 11.2.0.4 客户端:Win2003 + Oracle Client 10.2.0.1
Oracle 客户端连接到Oracle 数据库服务器貌似不同于SQL serve中的网络配置,其实不然,只不过所有的SQL server 运行于Windows平台,故很多配置直接集成到了操作系统之中。所以无需配置客户端即可连接到服务器。Oracle 客户端连接到数据库依赖于Oracle Net。Oracle提供了很多基于客户端或服务器的配置工具,需要搞清的是Oracle Net 中的相关术语。术语明白了,其实配置方法与SQL server 大同小异。
在使用oracle时,经常会遇到ora-12154问题,但一直没总结,解决办法过段时间就忘,再遇到问题只能再去找解决办法。今天,把目前了解到的内容汇总记录,方便以后查找。
执行tnsping CC命令 检查下是否可以tnsping通,核对IP和端口以及实例名
问题 ORA-12154: TNS:could not resolve the connect identifier specified ,即无法解析指定的连接
在复杂的系统中,有时需要从另一个数据库中读取数据,这时就可以使用Oracle的Dblink进行跨数据库的操作。
F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN
在DB运维的过程中,难免碰到需要跨多个服务器以及多个Oracle实例查询数据库的情形。比如我们需要查看当前所有生产环境数据库上open_cursor参数的值以便考虑是否需要增加。而需要查看的数据库服务器上有多个实例,同时又存在多个数据库服务器,这样子下来,几十个DB,上百个的情形一个个查,那得把人给累死。那就像点办法撒,写个shell脚本,轮巡所有服务器及服务器上的所有实例。见本文的描述。
Oracle 11G Client 客户端安装步骤(图文详解) http://blog.csdn.net/lanchengxiaoxiao/article/details/39251947 安装完成client,启动pl-sql 设置oracle安装路径
对于tnsping的一些小问题,自己也想了些办法来补充,最后发现使用nc是一个不错的选择。可以参考 对于tnsping的连接超时的功能补充 主要思想如下: 如果网络是通的,那么会显示succeeded,否则会有一些错误信息 # nc -w 2 -v 10.11.65.111 22|grep succ Connection to 10.11.65.111 22 port [tcp/ssh] succeeded! # nc -w 2 -v 10.11.65.191 22|grep succ nc: conn
Oracle RAC 集群最突出的表现就是高可用性,这些内容主要包括load balance以及failover,通过这些技术使得单点故障不影响客户端端应用程序对数据库的正常访问,以及通过创建service实现节点间负载均衡。本文主要描述Oracle 10g rac环境下的Oracle failover测试。 下面是一些关于这方面的基础参考或相关链接: 有关负监听配置,载均衡(load balance)以及Oracle service请参考
应用服务器:Windows Server 2008 R2 Enterprise 故障现象:项目侧同事反映应用服务器上的程序连接数据库报错:ORA-12560: TNS: 协议适配器错误
最近的工作中需要基于Oracle连接到SQLserver2014,我们可以通过配置Gateway的方式来实现这个功能。这个Gateway的实质是透过dblink来实现的。即把SQLserver模拟成一个远端的Oracle实例,这个实例由Gateway来负责进行接收,转发等等。本文简要描述其配置过程。
相信使用过Oracle数据库的人一定碰到过“ORA-12154: TNS: 无法解析指定的连接标识符”错误,我在此做一个小小的总结。
用PL/SQL Developer连接公司Oracle数据库,登录时出现如下错误信息:ORA-12154: TNS: 无法解析指定的连接标识符,(有时可能不会出现错误对话框,但也连不上,多试几次都会弹出如下图的错误对话框)。
database linke是建立一个数据库到另一个数据库的路径的对象,通过database link可以允许查询远程表,我理解可以算作一种分布式数据库的用法。
文件tnsnames.ora 是给orcl客户端使用 配置本地网络服务:(客户端) 第一种使用暴力方式直接操作: 修改:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora ORCL = >网络服务名 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 服务器ip)(PORT = 1521)) (CONNEC
--========================== -- 配置sqlnet.ora 限制IP访问Oracle --========================== 与防火墙类似的功能,Oracle 提供限制与允许特定的IP或主机名通过Oracle Net来访问数据库。这个功能由sqlnet.ora配置文件来实 现。该文件通常$ORACLE_HOME/network/admin/ 目录下,与tnsnames.ora以及listener.ora位于同一路径。用法也比较简单。通过监听器的 限制,实现轻量级访问限制,比在数据库内部通过触发器进行限制效率要高。 1. 实现方式 通过在sqlnet.ora文件中增加下列记录来实现
我们把oracle成功的安装在了我们的计算机上面,那我们如何才能将PLSQL developer连
在不安装oracle数据库的情况下使用pl/sql连接远程oracle数据库。
PL/SQL Developer是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发。如今,有越来越多的商业逻辑和应用逻辑转向了Oracle Server,因此,PL/SQL编程也成了整个开发过程的一个重要组成部分。PL/SQL Developer侧重于易用性、代码品质和生产力,充分发挥Oracle应用程序开发过程中的主要优势。
对于dataguard说,switchover,failover是一种互补可选的容灾解决方案。但是对于这种容灾思路还是存在着一些实践中的细节需 要,从数据层面而言,只能是最大程度保证了数据的不丢失,但是数据切换过去了,权限,配置这些信息还是需要考虑的,如果切换过程很快,收尾的补充工作很 慢,那么总体来看切换的时间就被拉长了。 在提出准备的需求之前,容我花一点时间来简单吐槽一下10g中的dataguard. 10g中的状态切换 10g中的dataguard没有adg的特性,在使用中还是有很大的限制,很多时候备
领取专属 10元无门槛券
手把手带您无忧上云