您的位置:首页 > 数据库 > Oracle

Oracle9中使用sqlplus连接远程数据库

2008-12-08 17:22 926 查看
公司使用linux开发机进行程序开发时,由于开发用Oracle数据库[/b]是由日方提供,所以经常使用sqlplus[/b]连接[/b]到远程[/b]数据库[/b]上进行开发,例如:

sqlplus[/b] username/password@servicename

于是想,用我的两台电脑双机互联试一试,也玩个“远程[/b]连接[/b]”。实验如下:

首先在我的台式机上安装了Oracle9i的数据库[/b]管理系统,并建立了一个数据库[/b]实例:xy

然后为该实例新增了一个用户,用户名和密码都是kxy01。启动实例xy后,在台式机上,直接在cmd环境键入:sqlplus[/b] kxy01/kxy01@xy 就可以连接[/b]上数据库[/b],呵呵,想来本地连接[/b]都是不费吹灰之力就行的。

之后,在我的笔记本上安装了Oracle9i的Client工具。然后试着直接用上述命令访问,显然是不行的,系统返回无法解析服务名的错误信息。

要实现连接[/b]到远程[/b]数据库[/b],先了解一下相关知识吧,查了一下书。原来,Oracle数据库[/b]的远程[/b]连接[/b]是通过Oracle Net实现的。在服务器和客户端都必须运行有配置正确的Oracle Net才可以。不管使用的配置和配置工具如何,都应该告诉Oracle Net怎样找到远程[/b]数据库[/b]。

要怎么配置Oracle Net呢。点开Oracle的开始菜单,寻找相关的工具,发现一个名为:

Net Configuration Assitant的工具,应该就是它了。启动之:

Net Configuration Assitant共提供了4个配置功能:

监听程序配置,

命名方法配置,

本地网络服务名配置

目录使用配置。

要从远程[/b]位置连接[/b]Oracle数据库[/b],必须配置Oracle网络监听程序。Net Configuration Assitant可以用于此项配置工作,启动后选择监听程序配置,一路下一步即可。

之后点开命名方法配置,系统已经默认提供了三种,其他两种也不太认识,干脆不改了,直接点后退,回到主菜单。

主菜单中,第三项是本地网络服务名配置。要通过网络访问Oracle数据库[/b]或其他服务,要使用网络服务名,该项配置允许使用由本地命名解析的网络服务名。而第四项为目录使用配置,点开一看,居然要选择目录服务器,我这一共就两台电脑,要什么目录服务,看来第四项不适合本实验了,显然,关键配置就在第三项:本地网络服务名配置。

将其点开,选择“添加”网络服务名操作,然后会询问你希望访问何种版本的Oracle数据库[/b]服务。按照常理,我装的是Oracle9i自然应该选择第一个(Oracle8i或更高版本数据库[/b]服务),可经过实践证明,只有选择第二个(Oracle8i发行版8.0数据库[/b]或服务)才能正常实现远程[/b]连接[/b],不明其中原因,也就只有选第二个拉。

然后输入我的数据库[/b]实例SID:xy

然后选择网络协议,双机互联应该选择TCP吧,再然后填写数据库[/b]所在的主机名:kxyhome。端口号采用默认的1521。

点击下一步,进行数据库[/b]连接[/b]的测试,测试成功后进行网络服务名的填写,这个名字就应该是sqlplus[/b]连接[/b]时候用的服务名了,这里我们使用:xyhome

之后一切配置完成,来到命令行,使用sqlplus[/b]进行连接[/b]:

sqlplus[/b] kxy01/kxy01@xyhome

成功啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: