在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。
有两种类型的 SQL Server 实例:
1)默认实例:默认实例仅由运行该实例的计算机的名称唯一标识,它没有单独的实例名。如果应用程序在请求连接 SQL Server 时只指定了计算机名,则 SQL Server 客户端组件将尝试连接这台计算机上的数据库引擎默认实例。
2)命名实例:除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。应用程序必须提供准备连接的计算机的名称和命名实例的实例名。
计算机名和实例名以格式computer_name\instance_name指定。 一台计算机上可以运行多个命名实例。
数据库实例由各种高速缓冲池以及后台进程组成。数据库是数据以某中方式组织起来的数据集合,物理存储为数据库文件,数据库实例负责维护,访问来这些数据。
打个比方:
你在文本中有一些数据(数据库文件)需要计算,你就要写一个程序(后台进程),计算这些数据,如果计算中有源中间结果,你就需要把数据的中间结果放到内存中的一个区域中(高速缓冲池),然后再取出这些中间结果计算。
当然这只是打个比方,实际数据库实例要处理的东西要多得多。
举个很形象的例子(呵呵):
一个实例就像一台绞肉机,每台绞肉机都可以绞肉。
大块的肉放进去做为输入(T-SQL),碎肉挤出来做为输出(结果集)。
你每运行一次安装程序,只能装一台绞肉机。
当然,你可以在服务器上装好几台绞肉机,但是必须有不同的名字:绞肉机A,绞zhidao肉机B...
不对。首先你要理解什么是数据库。
数据库就是数据本身,包括DATAFILE等物理文件、磁盘的集合,包括你说的表空间都属数据库的一部分。
而数据库实例则是数据库在 *** 作系统中的实例化,具体体现为各种进程、线程、内存等等...
如果数据库不启动,那这个 *** 作系统中就不存在数据库实例。
这么说不知道你能不能理解呢?
在你这个例子中,你建立了两个数据库。在数据库启动的情况下,分别进行了实例化。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)