公司使用linux开发机进行程序开发时,经常使用sqlplus连接到远程数据库例如:
sqlplus username/password@servicename
于是用两台电脑双机互联“远程连接”。实验如下:
<1>在我的台式机上安装了Oracle11的数据库管理系统,并建立了一个数据库实例:dcdb
然后为该实例新增了一个用户,用户名和密码都是dcdb01。启动实例dcdb后,在台式机上,直接在cmd环境键入:sqlplus dcdb01/dcdb01@dcdb 就可以连接上数据库。
在笔记本上安装了Oracle11的Client工具。然后试着直接用上述命令访问,显然是不行的,系统返回无法解析指定的连接标识符的错误信息。
Oracle数据库的远程连接是通过Oracle Net实现的。配置Oracle Net
点开Oracle的开始菜单,寻找Net Configuration Assitant工具,提供了4个配置功能:
监听程序配置,
命名方法配置,
本地网络服务名配置
目录使用配置。
要从远程位置连接Oracle数据库,必须配置Oracle网络监听程序。Net Configuration Assitant可以用于此项配置工作,启动后选择“监听程序配置”,一路下一步即可。
选择“本地网络服务名配置”将其点开,选择“添加”网络服务名操作然后输入我的数据库实例SID:dcdb
然后选择网络协议,双机互联应该选择TCP吧,再然后填写数据库所在的主机名:61.178.65.1。端口号采用默认的1521。
点击下一步,进行数据库连接的测试,测试成功后进行网络服务名的填写,这个名字就应该是sqlplus连接时候用的服务名了,这里我们使用:dcdb_1
之后一切配置完成,来到命令行,使用sqlplus进行连接:
sqlplus dcdb01/dcdb01@dcdb_1
成功啦!