
数据库语言则是能够对数据库进行 *** 作的语言,如sql语言。
数据库运行环境则是能够支持数据库 *** 作的一种应用程序或控件。
问题一:数据库实例如何理解呢 实例(instance):一组Oracle 后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!
一般来说,我们的一个数据库对应一个实例,但在集群RAC情况下,共享数据库文件时,一个数据库是可以被多个实例同时使用的。
问题二:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。
问题三:数据库实例是什么意思 多个 SQL Server 实例 ,Microsoft SQL Server 2000 支持在同一台计算机上同时运行多个 SQL Server 数据库引擎实例。每个 SQL Server 数据库引擎实例各有一套不为其它实例共享的系统及用户数据库。
问题四:数据库实例 问这个问题说明你对数据库的概念还不太了解,这是最基本的概念。
数据库是什么?数据库是一个逻辑上的概念,简单的说就是相互关联的一会数据。而对应到实际的物理概念上,就是磁盘上的一个或者一堆文件,里边包含着数据。但是光有数据不行,数据库有很多功能,比如可以接受用户连接,给用户提供数据,这样就需要有“程序”。所以说关闭状态的数据库,就是磁盘上的程序文件,加上数据文件。
想要使用数据库,就要把它打开,让上边说的“程序”运行起来。实例就是指计算机内存中处于运行状态的数据库程序,以及为这些程序分配的一些内存空间。实例是位于内存中的,只在数据库处于运行状态时才存在。实例负责实现给用户提供网络连接、读写数据文件等等各种功能。
不同的数据库产海有些不同,Oracle中一个实例只能连接一个逻辑上的“数据库”,甚至是不同机器上运行着的不同实例同时连接一个数据库(RAC)。SQL Server和My SQL中的“实例”则比较独立,可以随时打开或者关闭某一个数据库。
问题五:什么是数据库的实例instance 首先说说,数据库是做什么?数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据.那你说数据库会放那里呢?肯定是存放在磁盘上,其实数据库就是磁盘上的一个文件。
从上面我们得出结论:数据库==磁盘上的文件.
既然数据库可以看成磁盘上文件,我们怎么使用数据库呢?
如果说我们可以直接使用数据库,那就等价与直接使用磁盘上的文件.我们知道这样的一个常识:必须把磁盘上的文件读入内存才能使用.这就与我们以前所知道的一个常识相违背了.
那正确的流程是不是应该这样呢?把磁盘上文件先读入内存,然后再使用呢.
对了,这个才是使用数据库的正确流程.
数据库如何读入内存呢?
这个时候,就是我们要介绍的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)的概念.
问题六:在数据库中,添加一个用户实例是什么意思,请问用户实例怎么理解? 就是一个用户专用的数据库引擎。
问题七:什么是oracle实例,什么是oracle数据库,二者有什么区别? 这个问题如果回答得形象点就是:
一个数据库可以包含一个或者多个实例
实例的定义:由 *** 作系统后台进程和分配的内存区域构成。说
得简单点就是oracle在nomou骸t状态就分配了内存区域,一个实
例也就差不多快形成了。
问题八:什么是数据库的实例 所谓“数据库实例”,实际上就是数据库服务器引擎。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。
在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。
有两种类型的 SQL Server 实例:
1)默认实例:默认实例仅由运行该实例的计算机的名称唯一标识,它没有单独的实例名。如果应用程序在请求连接 SQL Server 时只指定了计算机名,则 SQL Server 客户端组件将尝试连接这台计算机上的数据库引擎默认实例。
2)命名实例:除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。应用程序必须提供准备连接的计算机的名称和命名实例的实例名。
计算机名和实例名以格式puter_name\instance_name指定。 一台计算机上可以运行多个命名实例。
问题九:什么是数据库实例? 所谓的“实例”,就是一个 SQL Server 数据库引擎
一个 数据库引擎 下面,又可以建立 多个数据库
例如我的计算机,SQL Server 实例的名字是 SQLEXPRESS
这个实例下面,有好几个数据库。
为什么要命名。就是我机器上,很有可能安装了 SQL Server 2005, 又安装了 SQL Server 2008。 2个服务器, 需要不同的名字来区分。
对于 网络请求来说
如果我要访问一个 SQL 数据库
必须提供 机器名 + 实例的名字,才能访问
例如:
C:\Documents and Settings\wzq>sqlcmd -S localhost\SQLEXPRESS
1>use stock
2>go
已将数据库上下文更改为 'Stock'。
问题十:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。
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。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)