关于数据库和服务器的关系

kaeferin 2008-11-01 07:01:30
比较好奇。。。

登陆公司的远程数据库,有很多种方法,比较傻的一种就是用putty登陆unix服务器(叫它服务器A吧),再执行sqlplus命令,连接数据库。就是纯unix环境,要打一条一条命令。
第二种就用sql developer连,但是tnsnames.ora里写的是另外一个服务器(叫它服务器B吧),当然两个连接的是同一个数据库。

我想问的是,服务器A和服务器B是什么关系,分别有什么作用?数据库实际是装在服务器B上的吧?谢谢。
...全文
222 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
BlueskyWide 2008-11-02
  • 打赏
  • 举报
回复
1.community=tcp.world,是不是可以理解为社区连接的协议类型,也有使用nmp.world的;
2.B本身没有分配很多的unix用户名, LZ能否再解释一下?



[Quote=引用 4 楼 kaeferin 的回复:]
可能我没有说清楚,我不是想问怎么写tnsnames.ora,这个我已经搞定了,数据库也连上了。一开始我以为是填服务器A,所以怎么连也连不上,后来才知道要填服务器B,就连上了。

这样看来数据库是装在B上的,A有一个到B的dblink,B本身没有分配很多的unix用户名,想问一下这样做有什么好处?

ps:还有一个小问题:我的tnsnames.ora文件里面ADDRESS后面必须再多一个参数community=tcp.world否则也不能连接,请问这个参数有什么用…
[/Quote]
kaeferin 2008-11-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 BlueskyWide 的回复:]
1.community=tcp.world,是不是可以理解为社区连接的协议类型,也有使用nmp.world的;
2.B本身没有分配很多的unix用户名, LZ能否再解释一下?

[/Quote]

谢谢
to 2: B可能只有服务器管理员可以登陆(登陆服务器本身,不是数据库),其他的unix用户可以登陆A,连接数据库的时候,再从A转到B。在A上面每个人都有一个自己的文件夹,可以存script什么的。

我想A可以看作大家存文件的一个地方,没有数据库。B呢只有数据库。这样两个服务器分工明确。

此外,公司也用了apex(oracle application express) 来制作简单的数据库查询界面。那个apex 是装在第3个服务器上面.

我比较的菜鸟,上面这些搞了我老半天才搞明白。上面的提到的这些是用于测试的服务器和数据库,实际应用的服务器和服务器不知道是怎么编排的。
tiyuzhongxin789 2008-11-01
  • 打赏
  • 举报
回复
请查看服务器的TNSNAMES.ORA的设置以及本机tnsnames.ora的设置,以及本机连接服务器所使用的连接字符串.sql developer连接oracle数据库并不需要本机的tnsnames.ora设置.
BlueskyWide 2008-11-01
  • 打赏
  • 举报
回复
第一种登录为telnet方式,进入数据库前大都为Unix命令;
第二种方式是目前较为常见的连接方式,windows方式。

在windows中安装Oracle客户端,并使用net configuration assistant连接服务器,产生连接串。conn 用户名/密码@连接串。



[Quote=引用楼主 kaeferin 的帖子:]
比较好奇。。。

登陆公司的远程数据库,有很多种方法,比较傻的一种就是用putty登陆unix服务器(叫它服务器A吧),再执行sqlplus命令,连接数据库。就是纯unix环境,要打一条一条命令。
第二种就用sql developer连,但是tnsnames.ora里写的是另外一个服务器(叫它服务器B吧),当然两个连接的是同一个数据库。

我想问的是,服务器A和服务器B是什么关系,分别有什么作用?数据库实际是装在服务器B上的吧?谢谢。
[/Quote]
kaeferin 2008-11-01
  • 打赏
  • 举报
回复
可能我没有说清楚,我不是想问怎么写tnsnames.ora,这个我已经搞定了,数据库也连上了。一开始我以为是填服务器A,所以怎么连也连不上,后来才知道要填服务器B,就连上了。

这样看来数据库是装在B上的,A有一个到B的dblink,B本身没有分配很多的unix用户名,想问一下这样做有什么好处?

ps:还有一个小问题:我的tnsnames.ora文件里面ADDRESS后面必须再多一个参数community=tcp.world否则也不能连接,请问这个参数有什么用?

谢谢
范佩西_11 2008-11-01
  • 打赏
  • 举报
回复
如果本机要连的话,直接在tnsnames.ora里添加以下部分
A=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = A的IP地址)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = A的实例名)
)
)
如果服务器B创建了到服务器A的dblink的话那你访问数据库B也可以访问数据库A
装在哪台机器上你只要看tnsname.ora的HOST是哪个Ip或主机名就是了。
zheninchangjiang 2008-11-01
  • 打赏
  • 举报
回复
请查看服务器的TNSNAMES.ORA的设置以及本机tnsnames.ora的设置,以及本机连接服务器所使用的连接字符串.sql developer连接oracle数据库并不需要本机的tnsnames.ora设置.

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧