Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5833422
  • 博文数量: 671
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 7310
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-14 09:56
文章分类

全部博文(671)

文章存档

2011年(1)

2010年(2)

2009年(24)

2008年(271)

2007年(319)

2006年(54)

我的朋友

分类: Oracle

2006-12-13 15:20:07

公司使用linux开发机进行程序开发时,由于开发用Oracle数据库是由日方提供,所以经常使用sqlplus连接到远程数据库上进行开发,例如:

sqlplus  username/password@servicename

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

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

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

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

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

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

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

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

监听程序配置,

命名方法配置,

本地网络服务名配置

目录使用配置。

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

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

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

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

然后输入我的数据库实例SID:xy

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

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

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

sqlplus  kxy01/kxy01@xyhome

成功啦!

阅读(7891) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-04-10 18:50:53

谢谢分享