Oracle 11g数据库连接Oracle Client配置

Oracle数据库的安装和Oracle Client的安装都比较简单,但是我在安装完了之后出现了连接问题,无论怎么配置Net Configuration Assistant和Net Manger都无法解决。

我的解决思路:

1.客户端如何连接服务端:既然采用的是C/S模式,肯定要校对服务端和客户端的配置是否是否一致。

2.和连接相关的配置文件:服务端的配置文件默认放在dbhom_1(数据库的主目录)\NETWORK\ADMIN下,是listener.ora;而客户端的配置文件类似,放在client_1(客户端的主目录)\network\admin下,是tnsname.ora,和sqlnet.ora。如果出现文件缺失,可以在同一文件夹下的example中复制一份模板,然后更改。要是权限不允许,右击文件属性,在安全栏下编辑文件的操作权限为完全控制。

3.如何配置:一种配置方式就是用Net Configuration AssistantNet Manger这两个工具,不过我是先用的工具,修改无果就直接修改的文件。其实主要校对主机名,到底是loclhost、127.0.0.1、还是自己主机的ip。


//服务端的listener.ora

SID_LIST_LISTENER =   //这里的配置可以在服务端的Net Manger中的监听一栏中看到
  (SID_LIST =                                                        
    (SID_DESC =           //第一个实例
      (GLOBAL_DBNAME = 你自己的数据库的名字)      //是服务端的全名
      (ORACLE_HOME = D:\oracle11g\oracle_server\product\11.2.0\dbhome_1)  //主目录
      (SID_NAME = ORCL)
    )
    (SID_DESC =           //第二个实例
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\oracle11g\oracle_server\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\oracle11g\oracle_server\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =   //监听的地址
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 这里非常重要 )(PORT = 1521))  //非常主要的就是HOST,一定要记住,等会客户端也要用到这里
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )
==========================================================================================================================
//client的tnsname.ora
ORCL =       //服务
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 这里很重要)(PORT = 1521))    //这里的host一定要和服务端listener处的host保持一致。
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = 你自己数据库的名字)   //这里要和服务端的一样
    )
  )

我的host就是出现了不一致的问题,不过改过来就好了。

开始并不知道到底是客户端没配置好,还是服务端没配置好,于是在cmd下用了几个命令检测:

1.lsnrctl 进入界面,输入status查看了服务端的监听状况,services看监听进程的状况。里面还有其他指令,help可以查看这些指令。

2.tnsping orcl(我配置的服务名,上面的Client的tnsname.ora可以看到),若是不成功,就会报错;成功会有如下显示


已使用 TNSNAMES 适配器来解析别名
尝试连接 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 你自己的host)(PORT =
 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = 你自己数据的全名)))
OK (20 毫秒)

注意建议还是使用localhost,因为如果改成(自己主机的ip,或是主机名),那样https://localhost:1588/em登陆就会出现问题。所以建议还是使用localhost。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值