数据库与实例
⑴ 简述Oracle数据库中实例和数据库的概念以及它们之间的关系
实例 就是管理相关库的内存结构的名字(由SGA、PGA、服务器进程、用户进程、后台进程等组成)
数据库 就是实际的磁盘上的文件(数据文件、日志文件、控制文件等),负责保存数据,但由对应的实例来操作它的数据
其实,在我们传统的概念里,数据库是一个统称的名字,在Oracle中,你可以把“数据库”理解成一个大概念,也要把它理解成一个小概念
⑵ oracle里实例和数据库之间的关系
简单说吧,书上的理论太绕。
数据库软件是一个数据库软件,就好像你的word,你安装专的word,你能说你属有文档了么?明显不能,只是你能够建立文档了。数据库软件就相当于word软件。
实例,指的是内存和具体的内容。还是用word举例,你利用word软件,新建立了一个word文档,这个word文档就是一个实例。有一部分内存被分配给这个word文档进行工作,就算你没有在上面写字,那么这个word文档也是一个实例,因为它存在。而后面的表空间(tablespace),数据文件(datafile),控制文件(controlfile),表(table)你可以认为都是数据这个实例的。
如果你在建立一个新word文档,那么这个新word文档,和上面你建立的这个word文档无关,因为两个文档确实没什么关系。当然不排除dblink,相当于word中的引用,不是完全一样,可是大概可以这样理解。
至于你的具体数据,就是你在word中书写的字。
一般情况下,这里这样理解,虽然有那么点不同,可是这么立即一般应用是没有问题的。
⑶ sql server实例和数据库的区别是什么
一个数据库中包含存储真正数据的多个表结构,而一个实例包含多个数据库,一台服务器(硬件)可以包含多个实例。
每个实例是一个SQL Server安装的组件(或数据库引擎的程序,工具和相关程序)。每个用户数据库(和表)通过编写代码,使用的工具,复制/恢复现有数据库而创建。当安装SQL Server程序时,可以通过命名在一台机器上安装不同的实例。例如,你可以有SQL2005,SQL2008,SQL2012作为SQL Server独立的命名实例。也可以用相同的版本安装成不同的实例,如SQL2005DW(用于数据仓库),SQL2005_PAY(工资单),SQL2005_ERP等等。
可以有一个(并且唯一)被称为默认实例的实例,在同一台机器上所有其他实例必须有一个名称(16个字符)。
该程序之间(SQL Server数据库引擎)互相竞争机器资源,所以你必须了解和管理每个实例将如何竞争,否则它们会机器运行变慢甚至停止。
可能更常见的是一个实例中存在多个数据库。每个实例都有”系统“数据库(MASTER,MODEL,RESOURCES,MSDB,TEMPDB),然后您可以在该实例中创建自己的用户数据库。
在管理服务器资源方面,你可以管理每个实例需要多少内存和CPU。但是对于一个实例中的数据库,却不能这样做。
可以在实例或数据库两个层级上应用安全和访问限制。虽然有时业务可能更偏向将高度敏感/涉及安全的数据作为一个单独的实例(如薪资数据库),以避免任何危险。
当连接到一个数据库,必须同时提供实例名称和数据库名称。
⑷ 数据库和数据库实例之间的关系是什么
通常情况下,来数据库实例和数据源库是一一对应的关系,也就是一个数据库实例对应一个数据库; 但是,在集群环境中存在多个数据库实例共同使用一个数据库。比如:oracle RAC。这些知识点,比较基础,看黑马程序员的视频照样能学到哦!