目录
一、SQL Server概述
1、SQL Server 环境需求
2、SQL Server的特点和组成
(1)SQL Server 特点
(2)SQL Server 基本组成
3、SQL Server 安装需注意
(1)数据文件的存储位置
(2)实例名
(3) 确定启动服务的帐户
(4) 选择安全机制
(5) 选择排序规则
(6) 选择合适网络库
4、SQL Server Management Studio介绍
(1)启动SQL Server Management Studio
(2)Management Studio组件介绍
5、分离和附加数据库文件
(1)分离数据库并复制文件
(2)附加数据库到系统
二、 网络协议配置
1、SQL Server通信结构
(1)SQL Server通信方式
(2)客户端和服务器通信实现过程
2 、配置服务器端网络协议
3、配置客户端网络协议
三、添加新的注册服务器
1、 新建注册服务器
2、 连接到数据库服务器
四、链接服务器建立及其使用
1、链接服务器简介
2、创建链接服务器
3、创建链接服务器登录标志
4、访问链接服务器
5、访问链接服务器的实例
一、SQL Server概述
1、SQL Server 环境需求
Microsoft 近年SQL Server不断更新版本
- 1996年,推出了SQL Server 6.5版本
- 1998年SQL Server 7.0版本和用户见面
- 2000年推出SQL Server 2000
- 此后尽管版本更新,除增加一些新的高级功能和界面有所改变外,基本功能变化不大。
但随着SQL Server不断升级换代,对计算机环境要求也在逐步提高。当你安装某一版本SQL Server时,请参考该版本对计算机环境的具体需求。
2、SQL Server的特点和组成
(1)SQL Server 特点
① 图形化管理:它的管理系统使用图形化管理工具。SQL Server 2005以前称作企业管理器,以后是使用对象资源管理器实现。
② 丰富的编程接口:提供了DB-Library for C、Transact-SQL、嵌入式SQL开发工具、ODBC规范、OLE DB 规范等开发工具。
③ 多线程系统:可以支持多用户并发访问时。
④ 良好的并发控制:系统自动利用动态锁定功能防止用户在进行查询、修改、删除等并发操作时发生的相互冲突。
⑤ 与操作系统的良好接口:SQL Server各种版本与相适应的的Windows操作系统有着良好的接口,并充分利用其中所提供的服务。
⑥ 更加强大的数据引擎:SQL Server具有增强的数据引擎,高级的管理方式,后期版本支持XML、HTTP,并与Web相结合,使其功能更加强大。
⑦ 简单的管理方式:SQL Server能和Windows有机集成,可以充分利用操作系统提供的服务功能。
⑧ 支持XML,支持OLE DB和多种查询,支持分布式的分区视图。
⑨ SQL Server2008增加了简单数据加密、外键管理、集成服务等。
⑩SQL Server2012又增加了列存储索引、序列、AlwaysOn、命令行界面、大数据支持对新的功能。
(2)SQL Server 基本组成
① 服务器端组件、客户端组件和通信组件
- 客户端组件包括:
企业管理器; 查询分析器;实用工具和向导
- 服务器端组件包括:
SQL Server服务:执行SQL语句并返回结果;
SQL Server代理:自动执行DBA事先安排好的作业、监视事件、触发警报;
MS DTC (分布式事务协调器):操作分布在多个服务器上的数据库;
MS Search:全文检索和查询服务。
- 通信组件包括:
进程通信组件;网络库组件。
②实例组、实例、数据库和基本表
- 在SQL Server中,一个服务器组件称为一个实例,一台计算机上可以安装多个实例,其中一个为默认实例,其他为命名实例,如图(a)所示。
- 通过注册,一台计算机可以访问多个本地实例和远程实例,每个实例上可以创建多个数据库,每个数据库上可创建多张基本表。可以将一台计算机能够访问的实例按照一定的方式进行分组,这就是实例组。
- 实例组、实例、数据库、基本表都可以用企业管理器来管理,它们之间的关系如图(b)。
3、SQL Server 安装需注意
SQL Server 2000的安装过程与其它Microsoft Windows系列产品类似。
用户可根据向导提示,选择需要的选项一步一步地完成。
注意:安装完成后再纠正仓促安装所造成的错误是比较困难的。 所以,在安装前应对系统进行规划。
(1)数据文件的存储位置
在安装过程中,安装程序要求你输入磁盘驱动器和安装SQL Server系统数据库的路径。数据文件的默认位置是SQL Server的根目录/program/Files/Microsoft SQL Server/MSSQL和子目录DATA,可以根据需要修改默认目录。 SQL Server运行时所需要的临时数据库tempdb,要允许该文件在不超过数据库配置长度的前提下自动扩充。当SQL Server被关闭并重新启动时,该文件自动缩小到其初始长度,正是由于这个原因,最好要选择一个具有足够空间的驱动器或带区来适应该数据库的增长。
(2)实例名
实例是SQL Server 的工作单元。每个实例都由系统数据库和用户数据库组成,拥有独立的管理和运行环境。客户端应用程序通过指定实例的名称访问数据库服务器。 SQL Server支持在同一台主计算机安装多个实例。 实例有系统默认实例和用户的命名实例。
- 默认实例由运行该实例的主计算机在网络中的名称进行标识。
- 若计算机在网络中的名称是Server,则默认实例的名称就为Server。
- 安装时,在【实例名】对话框中选中【默认】复选框,则安装默认实例。 一台主计算机只能存在一个默认实例。默认实例可以用以SQL Server的任何版本
- 应用程序连接指定的计算机名时,客户端组件首先尝试连接该计算机的默认实例。
- 命名实例是用户在安装的过程中指定的名称。是又一组独立的、非重复的服务组成。
- 安装时,在【实例名】对话框中不选中【默认】复选框,在实例名【I 】的输入框输入实例名。
- 安装结束后命名实例的名称显示为:“计算机名称/实例名称”。 一台计算机可以安装多个SQL Server 命名实例,用户操作某个实例不会混淆其它实例。
(3) 确定启动服务的帐户
- 域用帐户:该帐户使用Windows操作系统的用户帐户启动SQL Srver服务。
- 域用帐户必须经过域控制器的身份验证,才能启动SQL Server服务。一般情况下使用域用帐户。
- 本地帐户:本地帐户不要口令,没有网络访问权限,同时限制SQL Server与网络中的其他服务器交互。 安装时默认设置是使用本地帐户。
(4) 选择安全机制
- Windows身份验证模式:在该模式下,用户必须拥有有效的Windows2000或Windows NT 4.0的用户帐户,才能够建立到SQL Server的连接。
- 混合身份验证模式:在该模式下,除需要上边的条件外,还需要拥有SQL Server的登陆帐户。该帐户是默认sa,密码是空。安装时不要选择空密码,要输入密码。若选择了空,完成安装以后的第一件事是修改密码。
(5) 选择排序规则
如果在安装之后,才发现排序规则选择不当,要重新选择排序规则,将不得不重新构建数据库,并重新加载数据。当数据庞大时,这种工作是非常繁重的。 一般情况下,安装程序会根据操作系统的类型自动选择正确的选项,不需用户过多参与。 如果用户的应用程序代码依赖于早期版本SQL Server的排序规则,则必须使用排序规则。
(6) 选择合适网络库
网络库也称通信协议。
常用的有:
① 命名管道:它的运行模式是内存的一部分被某个进程用来向另一个进程传递信息。
② 共享内存:最简单协议,没有可配置的设置。仅用于客户端和服务器在同一台计算机上的SQL Server实例。
③ TCP/IP协议:这是默认实例的协议网络库,它与互联网络中硬件结构和操作系统各异的计算机进行通信。是目前在商业中最常用的协议。
4、SQL Server Management Studio介绍
(1)启动SQL Server Management Studio
以SQL Server 2012为例,其他版本基本相同。
①在“开始”菜单上,依次指向“所有程序”、“Microsoft SQL Server 2012”,再单击SQL Server Management Studio。
② 在“连接到服务器”对话框中,验证默认设置,再单击“连接”,出现SQL Server 2012主界面,
- 菜单条:对菜单条的实际操作中使用并不多。
- 工具条:鼠标指针移到图标上,系统就会给出图标所代表的功能。
- 树形结构:树形结构是经常要使用的工具。
(2)Management Studio组件介绍
默认情况下,Management Studio中将显示3个组件窗口。
①已注册的服务器窗口 :已注册的服务器窗口列出的是经常管理的服务器,用户可以在此列表中添加和删除服务器。
②对象资源管理器窗口: 对象资源管理器窗口是服务器中所有数据库对象的树视图。
③文档组件窗口 文档窗口:是Management Studio中最大的部分,它可能包含查询编辑器和浏览器窗口。
5、分离和附加数据库文件
(1)分离数据库并复制文件
方法一:使用对象资源管理器。
方法二:使用系统存储过程。
① 运行sp_detach_db
② 复制数据库文件和日志文件。
(2)附加数据库到系统
方法一:使用对象资源管理器。
方法二:使用系统存储过程。
运行 sp_attach_db [ @dbname = ] '数据库名' , [ @filename1 = ] '包括路径的数据库文件的物理名称' [ ,...16 ]。
二、 网络协议配置
要实现多个服务器的使用,进行分布式查询,或者通过本地计算机管理别的远程主机上的服务器,再或者要在远程计算机上实现针对本地服务器的管理工作,就必须实现同一个网络上两个SQL Server服务器之间的相互通信。所以需要服务器和客户端网络库的正确配置。
1、SQL Server通信结构
(1)SQL Server通信方式
当客户端和服务器在同一台计算机上时,客户端应用程序和服务器使用本地命名管道进行通信;当客户端和服务器运行在不同的计算机上时,二者则使用网络进程进行通信。
网络进程由以下两部分组成。
- API(应用程序接口):它是一组函数,应用程序使用它向进程发送请求,并从进程检索结果。
- 协议:定义两个进程通信间所传递的信息格式。如TCP/IP等。这些通信协议称为网络库。
(2)客户端和服务器通信实现过程
客户端网络库将数据流包封装进网络包,并调用进程通信API向服务器传递客户请求。
在传递过程中,如果是本地进程通信,则使用共享内存或本地命名管道;如果是网络进程通信,则客户端网络协议栈通过网络连接与服务器端网络协议栈进行通信。服务器端网络库从客户端传来的网络包中解出数据流包送给SQL Server数据库,处理用户的请求。操作完成后,SQL Server将结果集打包到数据流包中,并利用服务器网络库将数据流包封装进网络包,返回给客户端应用程序。
2 、配置服务器端网络协议
①.使用SQL Server配置管理器启用要使用的协议
②.为数据库引擎分配TCP/IP端口号
③.查看用户使用何种协议进行操作
Select net_transport
From sys.dm_exec_connections
Where session_id=@@spid
3、配置客户端网络协议
用户可以根据需要管理客户端网络协议,如启用或者禁用、设置协议的优先级等,以提供更加可靠的性能。 用户可以根据需要启用或禁用某一客户端协议,如TCP/IP协议
三、添加新的注册服务器
1、 新建注册服务器
注册连接的服务器,可以在SQL Server Management Studio工具中保存服务器的连接信息,因此可以方便注册服务器以便管理。
2、 连接到数据库服务器
除了通过先注册,再连接到数据库服务器的方式之外,用户还可以直接通过“连接到服务器”对话框来连接到数据库服务器。
四、链接服务器建立及其使用
1、链接服务器简介
链接服务器泛指OLE DB 提供的程序和OLE DB数据源。
链接服务器具有以下优点。
(1)远程服务器访问。
(2)对整个企业内的异类数据源执行分布式查询、更新等事务。
(3)能够以相似的方式确定不同的数据源。
2、创建链接服务器
使用的系统存储过程是sp_addlinkedserver。
语法格式:
sp_addlinkedserver [@server = ] 'server'
[,[@srvproduct = ] 'product_name']
[,[ @provider = ] 'provider_name' ]
[,[@datasrc = ] 'data_source']
[,[@location = ] 'location']
[,[@provstr = ] 'provider_string']
[,[@catalog = ] 'catalog']
3、创建链接服务器登录标志
系统存储过程是sp_addlinkedsrvlogin。
语法格式:
sp_addlinkedsrvlogin
[ @rmtsrvname = ] 'rmtsrvname'
[ , [ @useself = ] 'useself' ]
[ , [ @locallogin = ] 'locallogin' ]
[ , [ @rmtuser = ] 'rmtuser' ]
[ , [ @rmtpassword = ] 'rmtpassword' ]
4、访问链接服务器
在T-SQL语句中,指定数据库对象可以使用两种对象名:完全限定名和部分限定名。
完全限定名是访问对象的全名,它包含4部分:服务器名、数据库名、所有者名和对象名。
其格式如下: ServerName.DataBaseName.OwnerUserName.TableName
5、访问链接服务器的实例
【例】创建链接服务器访问SQL Server数据库。 创建一个名为LinkSQLSrvr的链接服务器,以便对运行于网络名称为zufe-mxh的服务器上的SQL Server实例进行操作。
程序如下:
--创建链接服务器
sp_addlinkedserver
@server = 'LinkSqlSrvr',
@srvproduct = '',
@provider ='SqlOLEDB',
@datasrc = 'zufe-mxh' --必须是真正存在的服务器名称或IP地址
将本地登录sa的访问权限映射到名为LinkedSQLSrvr的链接服务器上的SQL Server授权登录meng(名字可以任意起)。
程序如下:
sp_addlinkedsrvlogin 'LinkSqlSrvr', false, 'sa', 'meng', NULL
GO
在链接服务器中访问SQL Server数据库的表时,必须使用完全限定名LinkedServerName. DataBaseName.OwnerUserName.TableName进行引用。
下面是对SQL Server数据库master的sysobjects表的查询。
SELECT * FROM
LinkSqlSrvr.master.dbo.sysobjects
GO