数据库实例是什么东西?

jb7456 2007-09-12 05:41:10
请问各位大侠:
本人对数据库实例的概念总是云里雾里的,很不明白?
有谁能告诉我它的具体含义。或者说是什么东西。最好能举个例子,理论和实际上都说明一下。谢谢!
...全文
35211 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
q465897859 2012-09-06
  • 打赏
  • 举报
回复
x_breeze 2012-09-06
  • 打赏
  • 举报
回复
管他什么年代的贴,我们是来学习的,向前辈致谢
毛师兄 2012-09-06
  • 打赏
  • 举报
回复
捐精有奖不?
發糞塗牆 2012-09-05
  • 打赏
  • 举报
回复
晕,07年的还没结贴
liushuiyou_sheng 2012-09-05
  • 打赏
  • 举报
回复
怎么都没有得分么?
renolit 2012-09-05
  • 打赏
  • 举报
回复
我的天呐,这还是07年的帖呀
这LZ 为国 捐精去啦
renolit 2012-09-05
  • 打赏
  • 举报
回复
数据库实例他不是个东西
以学习为目的 2012-08-21
  • 打赏
  • 举报
回复
一个运行的数据库服务
wmg494005678 2012-08-21
  • 打赏
  • 举报
回复
等接触的多了你就懂了
-Tracy-McGrady- 2012-08-21
  • 打赏
  • 举报
回复
学习了,小弟也要努力啊。
葡月荞麦 2012-08-21
  • 打赏
  • 举报
回复
学习了……
老白猫 2012-08-21
  • 打赏
  • 举报
回复

曾经我也有这样的疑问 天天接触自然就明白了。。
SallyAngela 2012-08-21
  • 打赏
  • 举报
回复
所谓“SQL实例”,实际上就是SQL服务器引擎,每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。
在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。
实例又分为“默认实例”和“命名实例”,如果在一台计算机上安装第一个SQLSERVER,命名设置保持默认的话,那这个实例就是默认实例。
一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同。

SallyAngela 2012-08-21
  • 打赏
  • 举报
回复
实例是“内存”和“后台进程”的集合。数据库是数据的物理存储。特别注意,一个实例可以用于一个数据库,多个实例也可以同时用于一个数据库,实例和数据库的关系是一对多的关系。
举个例子,如果把数据库比作一架飞机,实例就是飞机的发动机。那么,一台发动机可以驱动飞机,两台发动机也可以同时驱动一架飞机。
多个“实例”同时驱动一个“数据库”的架构叫“集群(Oracle real application clusters,简称RAC)”,这是Oracle的一种高端应用,如果结合磁盘阵列的保护机制,RAC能最大限度的保护我们的应用不间断运行,数据不丢失。

什么是数据库,其实很简单,数据库就是存储数据的一种媒介。比如常用的文件就是一种,在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
gongjian0628 2012-08-21
  • 打赏
  • 举报
回复
就是一个单独的数据库
Lugyedo 2012-03-09
  • 打赏
  • 举报
回复
多个实例可以分别由多个系统使用,互不影响,如果服务器够多的话,一台机器上一个实例好
Felixzhaowenzhong 2012-03-09
  • 打赏
  • 举报
回复
简单讲 有几个 SqlServer服务(sqlserver.exe) 就是有几个实例
勿勿 2012-03-09
  • 打赏
  • 举报
回复
默认实例仅由运行该实例的计算机的名称唯一标识
ovo2008 2012-03-09
  • 打赏
  • 举报
回复 1
学习了,但还是没有清楚知道,蒙蒙蒙胧!
xgq2012 2012-01-10
  • 打赏
  • 举报
回复
那这样怎么控制我要连接的是哪个实例啊?哪个大师知道,就以以下JAVA代码为例
private static final String DBDRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";


private static final String DBURL = "jdbc:sqlserver://localhost:1433;DatabaseName=t1";


private static final String DBUSER = "sa";


private static final String DBPASSWORD = "";
加载更多回复(18)
所有需求全部来自生产实际,源自生产,贴近实战,提高技能。 生产案例生产库A是一台2012年的数据库服务器,存储是戴尔sc8000数据量有20T。数据库版本是11.2.0.3,该数据库是单实例数据库。使用操作系统目录存储,没有使用ASM存储。需要进行数据库服务器和存储迁移。迁移到新服务器和新存储。迁移到新的rac环境,使用本地方式进行升级。 目标:我们需要迁移数据库A到新服务器,新存储。 源库A数据库版本11.2.0.3数据库类型单实例数据存储使用操作系统目录存储,非ASM存储容量20TosRhel6 目标库B数据库版本19.19数据库类型Rac数据存储ASM容量21TOsRhel7 难点。1-数据库服务器需要进行替换2-存储需要进行替换3-容量大,存储没有多余空间,只能才有原地升级方式4-版本跨度大,需要从11203->11204->1919单实例->1919-pdb-rac. 具体步骤1-源服务器数据库命令行创建11203数据库软件2-源服务器数据库命令行创建11203数据库实例3-在目标服务器克隆源库11.2.0.3数据软件。并且在目标服务器搭建源库的dg库。4-开始真正的割接,割接的时候没有业务的。激活11203dg为主库。5-升级11203到112046-升级11204到19.197-配置19.19单实例数据库为rac数据库中的某个pdb。Over. 针对以前学员提出文档不全的意见,其实文档都是有的,都已经上传到百度网盘。这次实战课程整理文档如下:0-创建源库11203单实例1-通过克隆方式在目标服务器rac上面创建11203数据库软件2-在目标库rac数据库上面创建11203的单实例的dg3-目标库rac安装11204单实例软件和升级11203到112044-11204升级到19c数据库

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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