什么是数据库的实例

什么是数据库的实例,第1张

所谓“数据库实例”,实际上就是数据库服务器引擎。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。

在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。

有两种类型的 SQL Server 实例:

1)默认实例:默认实例仅由运行该实例的计算机的名称唯一标识,它没有单独的实例名。如果应用程序在请求连接 SQL Server 时只指定了计算机名,则 SQL Server 客户端组件将尝试连接这台计算机上的数据库引擎默认实例。

2)命名实例:除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。应用程序必须提供准备连接的计算机的名称和命名实例的实例名。

计算机名和实例名以格式computer_name\instance_name指定。 一台计算机上可以运行多个命名实例。

数据库实例由各种高速缓冲池以及后台进程组成。

数据库是数据以某中方式组织起来的数据集合,物理存储为数据库文件,数据库实例负责维护,访问来这些数据。

打个比方:

你在文本中有一些数据(数据库文件)需要计算,你就要写一个程序(后台进程),计算这些数据,如果计算中有源中间结果,你就需要把数据的中间结果放到内存中的一个区域中(高速缓冲池),然后再取出这些中间结果计算。

当然这只是打个比方,实际数据库实例要处理的东西要多得多。

举个很形象的例子(呵呵):

一个实例就像一台绞肉机,每台绞肉机都可以绞肉。

大块的肉放进去做为输入(T-SQL),碎肉挤出来做为输出(结果集)。

你每运行一次安装程序,只能装一台绞肉机。

当然,你可以在服务器上装好几台绞肉机,但是必须有不同的名字:绞肉机A,绞zhidao肉机B...

所谓的“实例”,就是一个 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'。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9587888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存