问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是数据库的实例instance

发布网友 发布时间:2022-04-23 01:08

我来回答

4个回答

热心网友 时间:2022-04-09 11:58

Oracle数据库,实际上应该是说,我们使用的是Oracle服务server。
Oracle服务server包括有两个部分:

一个部分是Oracle数据库database

一个部分是数据库实例instance。

Oracle数据库database,包括有数据文件、控制文件、重做日志文件,都是一些物理上的文件。

数据库实例instance,包括有数据库后台进程(PMON、SMON、DBWR、LGWR、CKPT等)和内存区域SGA(包括shared pool、db buffer cache、redo log buffer等)。实例是一系列复杂的内存结构和操作系统进程

严格的说:一个Oracle服务,只包括一个Oracle实例和一个数据库(不考虑双机并行等这样的情况)。但是一个实例只能对应一个数据库,一个数据库有可能对应多个实例。除非使用并行O r a c l e服务器选项,否则每个O r a c l e数据库都有一个实例与之相关,一个数据库被唯一的一个实例装载。

数据库与实例之间是1对1/n的关系,在非并行的数据库系统中每个Oracle数据库与一个实例相对应;在并行的数据库系统中,一个数据库会对应多个实例,同一时间用户只与一个实例相联系,当某一个实例出现故障时,其他实例自动服务,保证数据库正常运行。在任何情况下,每个实例都只可以对应一个数据库。
在实际的开发应用中,关于Oracle数据库,经常听见有人说建立一个数据库,建立一个Instance,启动一个Instance之类的话。 其实问他们什么是数据库,什么是Instance,很可能他们给的答案就是数据库就是Instance,Instance就是数据库啊,没有什么区别。在这里,只能说虽然他们Oracle用了可能有了一定的经验,不过基础的概念还是不太清楚。
  什么是数据库,其实很简单,数据库就是存储数据的一种媒介。比如常用的文件就是一种,在Oracle10G中,数据的存储有好几种。第一种是文件形式,也就是在你的磁盘中创建一批文件,然后在这些文件中存储信息。第二种就是磁盘阵列形式,这个是什么意思呢,这个就是说明数据库不是存放为某个文件,而是把一个或者多个磁盘格式化成Oracle的一种格式了,等于整个磁盘就是存放Oracle数据库的,不能作为别的用途。这样的优点是存储性能高,因为不再借助别的文件格式了,而是把整个磁盘都成为Oracle最适应的文件系统格式。当然还可能有别的形式,比如网络什么的。不过我们最常用的还是文件格式的,在文件格式中,数据库指的就是那些数据文件,控制文件以及REDO文件等等一系列文件。
  而什么是Instance呢,Instance其实就是指的操作系统中一系列的进程以及为这些进程所分配的内存块。在Oracle中,我们可以新建一个Oracle的Instance,这个时候虽然有了进程还有SGA等一系列的内存快,但是这个时候并没有把数据库文件读取进来。所以只是一个实例,在后来,你可以通过命令手动或者自动地把数据库文件加载进我们的数据库Instance中,这个时候的数据库才可以让我们真正的开始访问操作。
  所以说,数据库的应用如果想实现,数据库和数据库Instance是缺一不可的,如果只有数据库的那些文件,那么,只能代表数据在这个文件中,但是我们无法直接进行操作。而如果只有数据库Instance,那么我们虽然可以急性操作,但是也不知道操作哪些数据,操作生成的数据也无法保存等等。所以,当一个Oracle Instance真正Load了一个Oracle Database了以后,数据库才可以被我们使用。
  在这里要注意一点的是,Oracle的实例在启动以后,只能load一次数据库,如果想把数据库与Instance断开,然后再重新挂在一个数据库Instance,那么就需要你首先把数据库Instance进程结束,然后重新建立这个instance的一个进程,再load另外一个数据库。否则肯定要抛除ORA-16169错误,说数据库已经被打开。因为一个数据库Instance在其生存期中最多只能load和打开一个instance。

热心网友 时间:2022-04-09 13:16

首先说说,数据库是做什么?数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据.那你说数据库会放那里呢?肯定是存放在磁盘上,其实数据库就是磁盘上的一个文件。

从上面我们得出结论:数据库==磁盘上的文件.
既然数据库可以看成磁盘上文件,我们怎么使用数据库呢?
如果说我们可以直接使用数据库,那就等价与直接使用磁盘上的文件.我们知道这样的一个常识:必须把磁盘上的文件读入内存才能使用.这就与我们以前所知道的一个常识相违背了.
那正确的流程是不是应该这样呢?把磁盘上文件先读入内存,然后再使用呢.
对了,这个才是使用数据库的正确流程.
数据库如何读入内存呢?
这个时候,就是我们要介绍的instance(实例)了.实例就是内存结构和一组后台进程.
实际上,正常的数据库读入内存的过程是,由实例中一组后台进程从磁盘上将数据文件读入到实例的内存中,然后经过在内存中对数据的操作再从实例的内存中经过一组后台进程写到数据库中.
那实例相对与数据库而言,应该就是数据库的运行环境(随不准确但也很贴切).
我们知道了instance和database的区别后.下面我们做一个Oracle的例子,一块深刻的理解下这两个概念.
在Oracle中打开一个数据库,这个时候我们要使用sqlplus了.sqlplus是oracle的一个连接工具,相当于sql server中的查询分析器.

使用
用户名:system
密码:manger(自己在装Oracle时设定的)
点登录进入sqlplus.
登录sqlplus以后,system这个用户是没有权限启动实例的,所以我们这时要更换登录用户.
使用sys用户连接
的命令如下 :
conn sys as dba
密码:
输入完后.可以再输入如下命令查看当前用户:
show user;
一:下面就可以打开数据库了
1.启动实例(instance)
startup nomount
2.将数据库装载到实例(instance)中
alter database mount
3.打开数据库
alter database open
二:关闭数据库:
1.shutdown immediate(包括三个步骤如下所述:)
首先关闭数据库
然后从实例上卸载数据库
最后关闭实例
通过Oracle打开以及关闭一个数据库的例子我们可以清楚的区分.数据库(database)和实例(instance)的概念.

热心网友 时间:2022-04-09 14:51

形象来说,就是生孩子,需要接生人,孕妇相当于数据库,实例相当于接生人,你就相当于数据库的操作。要想操作数据库,首先要建实例,即要想生孩子,需要接生人。实例会将数据库从磁盘中调入到内存里进行数据处理,即接生人将你接生出来,然后经过一系列消毒呵护。处理完的结果,再通过实例将数据从内存中写到磁盘中,然后实例就可以休息退出进程,此时内存指数会跟着下降,即接生人会将处理好的婴儿送回到孕妇手中。

热心网友 时间:2022-04-09 16:42

就是一个名字而已
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么网页突然自动关闭 网页为什么会突然自动关闭 网页自动关闭什么原因 怎么在微信里面自己组建群聊 门开在东南角,北面中间有窗,办公桌如何摆放 请推荐一款app导航系统,地图信息准确,界面友好,主要用于在境外... 急求一款app导航系统,地图信息准确,界面别太多杂乱的东西,主要用在境外... 欠了闪银3600,逾期125天,今天算了下,差不多要还6000,不还会怎么样?_百 ... 怎么进出口货物老被查验,难道被盯上了?海关是如何查验的,海关查验... 来料加工海关会查什么 外贸知识:海关查验详解 怎样写出精彩的Oracle DBA简历! 1.1 什么是Oracle数据库 关于oracle PLSQL?? GDI是什么发动机 起亚k5后面的gdi是什么意思 现代全新胜达后面的gdi是什么意思 长安逸动xt,gdi是什么意思? 现代gdi是什么车型 GDI是什么意思? 汽车GDI+DCT什么意思 起亚,GDI什么意思 北京现代领动后面的GDi是什么意思? 汽车发动机中的GDI,MPI,LPI是什么意思? gdi 在汽车方面是什么意思?谢谢! GDI是什么意思啊? 为什么拼多多上卖的东西那么便宜? GDi什么意思 拼多多的东西为什么这么便宜 北京现代汽车上的“gdi”是什么意思? 为什么同样一款产品,在拼多多上购买就能便宜很多? oracle的发展历史是怎样的 0基础如何成为OracleDBA 探求Oracle数据库怎样存储图片 求Oracle市场总监黄玮的资料 oracle 如何减肥? ...目前没什么基础准备去培训,想学oracle的话是不是需要掌握linux的技术... 我在plsql中使用dblink访问远程数据库上的表,执行select后为什么plsql... 求英文参考文献 关于java和oracle和短信网站平台介绍的 翻译后4000-500... Oracle通过job定时创建表 电脑键盘上shift+键在哪 四级营养师报考条件? 四级营养师是什么? 绘出一条含四级营养级的食物链 公共营养师四级多少分及格 四级公共营养师报名条件是什么? 国家四级营养师与三级的区别? 公共营养师四级都考什么?需要买哪些教材? 公共营养师证的高级,中级,初级和2级,3级,4级有什么区别? 四级公共营养师要具备哪些条件啊? 四级公共营养师报考条件