以为会写一些sql语句,会使用sqlserver做一些小系统就算对sqlserver入门了。这几天我发现我错了,其实我一点都不懂sqlserver。所有今天花了一天的时间看了一些sqlserver入门的东西,现在我把这些东西总写一下。

 

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

在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。 
实例又分为“默认实例”和“命名实例”,如果在一台计算机上安装第一个SQLSERVER,命名设置保持默认的话,那这个实例就是默认实例。 
一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同。 
所以说,默认实例的名称是与计算机名相同,而不是称为"local",但一般情况下,如果要访问本机上的默认SQL服务器实例,使用计算机名、(local)、localhost、127.0.0.1、. 、本机IP地址,都可以达到相同的目的。 
但如果要访问非本机的SQL服务器,那就必须使用计算机/实例名的办法。

访问sql服务器的格式,datasource=192.168.2.1,1433/myserver(ip,端口号/实例名)。

 

安装在计算机上的sqlsever的文件分类:

sql2005,单台计算机上的所有实例使用的公共文件安装在文件夹 c:/Program Files/Microsoft SQL Server/90 中。

sql2000,单台计算机上的所有实例使用的公共文件安装在文件夹 c:/Program Files/Microsoft SQL Server/80 中。

每个实例自己的文件在以这个实例命名的文件夹中(可以放在计算机的任何位置)如

D:/Microsoft SQL Server/MSSQL$NARUTO/,这是我自己的命名实例的路径。

 


SQL Server 中的每个服务代表一个进程或一组进程,用于在 Microsoft Windows 中管理 SQL Server 操作的身份验证。常用的服务有:



SQL Server 数据库服务 - 用于 SQL Server 关系数据库引擎的服务。



SQL Server Agent - 执行作业、监视 SQL Server、激发警报及允许自动执行某些管理任务。代理服务器。



SQL Server Browser -



关于sql server browser有以下内容:




SQL Server 浏览器程序以 Windows 服务的形式运行。 SQL Server 浏览器侦听对 Microsoft SQL Server 资源的传入请求,并提供计算机上安装的 SQL Server 实例的相关信息。 SQL Server 浏览器可用于执行下列操作:

  • 浏览可用服务器列表
  • 连接到正确的服务器实例
  • 连接到专用管理员连接 (DAC) 端点



SQL Server 浏览器工作原理



启动一个 SQL Server 实例后,如果为 SQL Server 启用了 TCP/IP 或 VIA 协议,服务器将被分配一个 TCP/IP 端口。 如果启用了 Named Pipes 协议,SQL Server 将侦听特定的命名管道。 该特定实例将使用此端口(或“管道”)与客户端应用程序交换数据。 在安装过程中,TCP 1433 端口和管道 /sql/query 将分配给默认实例,但服务器管理员可以随后使用 SQL Server 配置管理器进行更改。 由于只有一个 SQL Server 实例可以使用端口或管道,因此,会将不同的端口号和管道名称分配给命名实例,包括 SQL Server Express。 默认情况下,命名实例和 SQL Server Express 在启用时便配置为使用动态端口,也就是说,当 SQL Server 启动时就分配了可用端口。 如果需要,可以为 SQL Server 实例分配特定端口。 连接时,客户端可以指定特定端口,但是如果端口是动态分配的,端口号可能会在重新启动 SQL Server 时被更改,因此正确的端口号对于客户端来说是不确定的。

启动后,SQL Server 浏览器将启动并使用 UDP 1434 端口。SQL Server 浏览器将读取注册表,识别计算机上的所有 SQL Server 实例,并注明它们使用的端口和命名管道。 当一台服务器具有两个或多个网卡时,SQL Server 浏览器会为 SQL Server 返回其遇到的第一个启用的端口。SQL Server 2005 和 SQL Server 浏览器支持 ipv6 和 ipv4。

当 SQL Server 2000 和 SQL Server 2005 客户端请求命名实例上的 SQL Server 资源时,客户端网络库使用端口 1434 向服务器发送一条 UDP 消息。 SQL Server Browser 将用所请求实例的 TCP/IP 端口或命名管道做出响应。 然后,客户端应用程序中的网络库将使用所需实例的端口或命名管道向服务器发送请求来完成连接。

 

 

安装程序将 SQL Server 浏览器配置为使用安装期间为服务选定的帐户。 其他可能的帐户包括:

  • 所有“域/本地”帐户
  • 本地服务帐户(不可以在 W2K 平台上使用)
  • 本地系统帐户(不推荐使用,因为其具有不必要的权限)

 

企业管理器,sql2000的企业管理器不能添加sql2005,sql2005只能使用2005的企业管理器。

 

 

 

使用域用户帐户



当服务必须与网络服务交互时,应首选 Domain User 帐户。 许多服务器到服务器的活动只能使用域用户帐户来执行,例如:

  • 远程过程调用。
  • 复制。
  • 备份到网络驱动器。
  • 涉及远程数据源的异类联接。
  • SQL Server 代理邮件功能和 SQL Mail。 如果使用 Microsoft Exchange,则受此限制。 大多数其他邮件系统同样要求客户端(如 SQL Server 服务和 SQL Server 代理服务)以具有网络访问权限的帐户运行。



使用 Local Service 帐户



本地服务帐户是一个特殊的内置帐户,它与通过身份验证的用户帐户类似。 本地服务帐户与 Users 组的成员具有相同级别的资源和对象访问权限。 如果有个别服务或进程的安全受到威胁,则此有限访问权限有助于保护系统的安全。 以本地服务帐户身份运行的服务将以一个没有凭据的空会话形式访问网络资源。



使用 Network Service 帐户



网络服务帐户是一个特殊的内置帐户,它与通过身份验证的用户帐户类似。 网络服务帐户与 Users 组的成员具有相同级别的资源和对象访问权限。 以网络服务帐户身份运行的服务将使用计算机帐户的凭据访问网络资源。




重要提示:

Microsoft 建议,对于 SQL Server 服务或 SQL Server 代理服务,不要使用 Network Service 帐户。 本地用户帐户或域用户帐户更适用于这些 SQL 服务。

 

 



使用 Local System 帐户



Local System 帐户是一个高特权帐户;向 SQL Server 服务帐户分配 Local System 权限时应谨慎。




安全说明:

要增强安装的 SQL Server 的安全性,请使用权限尽可能低的本地 Windows 帐户运行 SQL Server 服务。