如何区分Oracle的数据库,实例,服务名,SID

 我来答
xiangjuan314
2016-03-15 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:3230万
展开全部
ORACLE实例 = 进程 + 进程所使用的内存(SGA)
实例是一个临时性的东西,你也可以认为它代表了数据库某一时刻的状态!
数据库 = 重做文件 + 控制文件 + 数据文件 + 临时文件
数据库是永久的,是一个文件的集合。
ORACLE实例和数据库之间的关系
1. 临时性和永久性
2. 实例可以在没有数据文件的情况下单独启动 startup nomount , 通常没什么意义
3. 一个实例在其生存期内只能装载(alter database mount)和打开(alter database open)一个数据库
4. 一个数据库可被许多实例同时装载和打开(即RAC),RAC环境中实例的作用能够得到充分的体现!
育知同创教育
2016-03-15 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
这里我说简单一点吧,理论上的东西有点绕。
数据库:有一定的方法去管理的,按照一定方式存放和读取数据的空间。(比如oracle有表空间,数据文件,视图,角色,权限等进行管理和存放数据)
实例:说白了,就是给上面的数据库分配的内存,以及为了这个数据库启动的进程。(比如,在oracle数据库启动后,非配给这个数据库sga的内存空间,而且启动了smon(oracle系统管理进程),pmon(内存管理进程),ckpt(检查点进程)等,这两项和在一起,叫做实例)
服务名:服务名其实没有明确的定义(个人理解),基本应用是在配置监听的时候才有用(rac的时候有些用处),这个名字其实是随便起的,没有什么固定的意义,只要你能分辨出来,其实起什么名字都行。(中文的好像不行)
SID:是数据库和实例的标识。(假设你的机器上有两台数据库,而且都启动了,那么怎么证明这个这部分SGA是分给A数据库的,怎么证明这个pmon进程是B数据库的,其实就是通过这个标识去判断的。一般认为每个数据库的SID在同一个网络中唯一就行。)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式