企业数据库安装配置与管理384.docx
《企业数据库安装配置与管理384.docx》由会员分享,可在线阅读,更多相关《企业数据库安装配置与管理384.docx(128页珍藏版)》请在冰豆网上搜索。
企业数据库安装配置与管理384
3.AdventureWorks数据库管理
3.1项目需求:
AdventureWorksCycles是一家大型跨国生产公司。
公司生产金属和复合材料的自行车,产品远销北美、欧洲和亚洲市场。
公司总部设在华盛顿州的伯瑟尔市,拥有290名雇员,而且拥有多个活跃在世界各地的地区性销售团队,是AdventureWorks示例数据库所基于的虚构公司。
作为数据库管理人员,需要选择安装SQLServer2005平台,迁移数据库、设计系统数据库和产品销售数据库的恢复策略和数据库访问策略,并能够根据情况对数据库服务器和AdventureWorks数据库进行管理等等。
3.2任务划分
AdventureWorks数据库的建立与应用可分为以下五个工作任务来完成,具体如下:
工作任务1:
安装SQLServer2005平台;
工作任务2:
设计数据迁移方法;
工作任务3:
设计数据库保护策略;
工作任务4:
设计数据库安全访问策略;
工作任务5:
数据库的日常管理。
3.3任务1:
安装SQLServer2005平台
3.3.1任务需求
本任务是根据AdventureWorks数据库管理的要求选择安装合适的SQLServer2005的版本,并在安装过程中选择合适的选项。
(提示:
根据项目任务描述确定需要安装的SQLServer2005版本和选项。
)
3.3.2知识准备
选择安装SQLServer2005的版本之前,需求了解和掌握下面的相关知识:
3.3.2.1SQLServer2005的各版本的特点(详见1.3.2.1)
3.3.2.2SQLServer2005的环境要求(详见1.3.2.2)
3.3.2.3安装程序用户界面参考(详见1.3.2.3)
3.3.2.4SQLServer2005管理工具(详见1.3.2.4)
3.3.3任务分析
分析管理AdventureWorks数据库的五个任务,任务2中数据迁移中选择使用配置对等复制迁移数据;任务3中数据库保护策略选择使用备份与还原的方法;任务4中数据库安全访问策略设计对服务器没有特别的要求;任务5中要求创建报表。
完成任务2需要安装IntegrationServices组件,及具有SQLServer代理和SQLServerAgent服务;完成任务5需要所安装版本已安装了IIS组件并安装ReportingServices组件。
分析SQLServer2005的几个版本:
EnterpriseEdition支持超大型企业进行联机事务处理(OLTP)、高度复杂的数据分析、数据仓库系统和网站所需的性能水平。
AdventureWorksCycles是一家大型跨国生产公司,AdventureWorks数据库数据业务复杂,可以选用该版本。
StandardEdition是适合中小型企业的数据管理和分析平台。
WorkgroupEdition从功能上考虑,不可以用于管理AdventureWorks数据库。
DeveloperEdition使开发人员可以在SQLServer上生成任何类型的应用程序,它包括SQLServer2005EnterpriseEdition的所有功能,但有许可限制,只能用于开发和测试系统。
SQLServerExpress不具有IntegrationServices组件,不能作为AdventureWorks数据库的管理平台。
综上所述,选用EnterpriseEdition作为AdventureWorks数据库的管理平台是恰当的。
但在学习环境中,考虑到经济因素,选用DeveloperEdition比较恰当。
3.3.4完成任务
安装SQLServer2005平台的任务在前两个项目中已有详细操作步骤,在此由学生完成。
要注意的是,此处安装首先需要安装IIS组件,并安装ReportingServices组件。
3.4任务2:
设计数据迁移方法
3.4.1任务需求
总公司和分公司都有自己独立的AdventureWorks数据库。
要求实现总公司和和分公司数据库之间即时的数据一致性。
3.4.2知识准备
数据库迁移通常有备份与还原、分离和附加、复制、SSIS四种方式,完成任务3-2之前,需求了解和掌握数据库迁移的相关知识:
3.4.2.1备份与还原(详见1.4.2.1)
3.4.2.2分离和附加(详见1.4.2.2)
3.4.2.3复制(详见1.4.2.3)
3.4.2.4SSIS(详见1.4.2.4)
3.4.2.5对等事务复制
对等复制通过在多个服务器实例(又称为“节点”)上维护数据副本,提供了一种扩展的高可用性解决方案。
对等复制建立在事务复制的基础之上,以事务方式近乎实时地传播一致的更改。
这样,需要扩展读取操作的应用程序就可以将来自客户端的读取操作分布到多个节点上。
由于对等复制以近乎实时的方式维护节点上的数据,从而提供了数据冗余,提高了数据的可用性。
下图1.1拓扑说明了对等复制的典型应用。
图1.1对等复制的典型应用
上图均显示了两个参与数据库,其中通过应用程序服务器将用户流量定向到数据库。
此配置可用于从网站到工作组应用程序等多种应用程序,并具有下列优点:
●由于将读取操作分散到两台服务器上,因此提高了读取的性能。
●当需要维护或某一节点出现故障时,可以提供更高的可用性。
从上图中可以看到,读取活动在参与数据库间进行负载平衡,但更新的处理方式则有所不同:
在左图中,在两台服务器间对更新进行了分区。
例如,如果数据库包含产品目录,则可以令自定义应用程序把对名称以A-M开头的产品进行的更新定向到节点A,把对名称以N-Z开头的产品进行的更新定向到节点B。
然后将更新复制到另一个节点。
在右图中,所有更新都定向到节点B。
再从那里将更新复制到节点A。
如果节点B脱机(例如,进行维护),则应用程序服务器可以将所有活动定向到节点A。
当节点B恢复联机状态后,更新便可流向B,并且应用程序服务器可以将所有更新移动回节点B,也可以继续将更新定向到节点A。
3.4.3任务分析
分析数据库迁移的四种方式,要求数据库之间即时的数据更新,保证数据一致性,只有通过配置对等复制才能完成。
因此选择对等复制来完成任务2。
3.4.4完成任务
3.4.4.1使用“复制数据库”来迁移数据库
1、确认“CZZY-F0F58EA11D\SQL2”服务器中没有“AdventureWorks”数据库。
如图1.1所示。
图1.1确定默认服务器中没有“AdventureWorks”数据库
指导:
任务的模拟环境为在一台电脑上安装了两个数据库实例,一个实例为默认实例:
CZZY-F0F58EA11D,另一个实例为命名实例:
CZZY-F0F58EA11D\SQL2。
任务的要求是在两个实例上完成对等复制的配置,实现在两个实例上“AdventureWorks”数据库之间即时的数据一致性。
任务开始时“AdventureWorks”数据库在默认实例上,而CZZY-F0F58EA11D\SQL2实例上没有“AdventureWorks”数据库。
使用复制是为了保证两个服务器中的“AdventureWorks”数据库完全一样。
2、确定默认服务器CZZY-F0F58EA11D中存在“AdventureWorks”数据库。
如图1.2所示。
图1.2确定默认服务器中存在“AdventureWorks”数据库
3、在默认服务器中选中“AdventureWorks”数据库,单击鼠标右击,在弹出的快捷菜单中选择“任务”→“复制数据库”。
如图1.3所示。
图1.3选择“复制数据库”
4、在图1.3中,选中“复制数据库”,弹出的“复制数据库向导”窗口,如图1.4所示。
图1.4“复制数据库向导”窗口
5、在图1.4中,单击“下一步”,在弹出的“选择源服务器”窗口中输入源服务器名称“CZZY-F0F58EA11D”,选中“使用Windows身份验证”,如图1.5所示。
图1.5“选择源服务器”窗口
6、在图1.5中,单击“下一步”,在弹出的“选择目标服务器”窗口中输入目标服务器名称“CZZY-F0F58EA11D\sql2”,选中“使用Windows身份验证”,如图1.6所示。
图1.6“选择目标服务器”窗口
7、在图1.6中,单击“下一步”,在弹出的“选择传输方法”窗口中选中“使用分离和附加方法”,如图1.7所示。
图1.7“选择传输方法”窗口
8、在图1.7中,单击“下一步”,在弹出的“选择数据库”窗口的“数据库”中,在“AdventureWorks”前打上“√”,如图1.8所示。
图1.8“选择数据库”窗口
9、在图1.8中,单击“下一步”,在弹出的“配置目标数据库”窗口中保持默认设置,如图1.9所示。
图1.9“配置目标数据库”窗口
10、在图1.9中,单击“下一步”,在弹出的“选择数据库对象”窗口中保持默认设置,如图1.10所示。
图1.10“选择数据库对象”窗口
11、在图1.10中,单击“下一步”,在弹出的“配置包”窗口中保持默认设置,如图1.11所示。
图1.11“配置包”窗口
12、在图1.11中,单击“下一步”,在弹出的“安排运行包”窗口中,选中“立即运行”,如图1.12所示。
图1.12“安排运行包”窗口
13、在图1.12中,单击“下一步”,弹出的“完成该向导”窗口,如图1.13所示。
图1.13“完成该向导”窗口
14、在图1.13中,单击“完成”。
在弹出的“正在执行操作….”窗口中等待操作成功,如图1.14所示。
单击“关闭”。
图1.14“正在执行操作….”窗口
15、在“CZZY-F0F58EA11D\SQL2”服务器单击鼠标右键,在弹出的快捷菜单中单击“刷新”。
如图1.15所示。
图1.15“CZZY-F0F58EA11D\SQL2”服务器窗口
16、在图1.15中,在“对象资源管理器”的“数据库”下可看到“AdventureWorks”。
如图1.16所示。
图1.16查看复制的结果
3.4.4.2配置对等复制
1、在“SQLServerConfigurationManager”中查看已启动了默认服务器和“SQL2”服务器的代理服务。
如图1.1所示。
图1.1启动两个服务器的代理服务
2、连接默认服务器,在“对象资源管理器”下,选择“复制”,单击鼠标右键,在弹出的快捷菜单中选择“配置分发”。
如图1.2所示。
图1.2选择“配置分发”
3、在图1.2中,单击“配置分发”,弹出的“配置分发向导”窗口,如图1.3所示。
图1.3“配置分发向导”窗口
4、在图1.3中,单击“下一步”。
弹出的“分发服务器”窗口,如图1.4所示。
图1.4“分发服务器”窗口
指导:
跳过中间的一些默认设置。
5、在图1.4中,单击“完成”,弹出的“完成该向导”窗口,如图1.5所示。
图1.5“完成该向导”窗口
6、在图1.5中,单击“完成”,在弹出的“正在配置”窗口中,等待配置成功,如图1.6所示。
图1.6“正在配置”窗口
7、在图1.6中,单击“关闭”按钮,回到连接服务器窗口,在对象资源管理器下选择“复制”→“本地发布”,单击鼠标右键,在弹出的快捷菜单中选择“新建发布”。
如图1.7所示。
图1.7选择“本地发布
8、在图1.7中,单击“新建发布”,弹出“新建发布向导”窗口,如图1.8所示。
图1.8“新建发布向导”窗口
9、在图1.8中,单击“下一步”,在弹出的“发布数据库”窗口中,选中要发布的数据库“AdventureWorks”,如图1.9所示。
图1.9“发布数据库”窗口
10、在图1.9中,单击“下一步”,在弹出的“发布类型”窗口中,选中“事务性发布”,如图1.10所示。
图1.10“发布类型”窗口
11、在图1.10中,单击“下一步”,在弹出的“项目”窗口中,选择要发布的对象中选中所有表,如图1.11所示。
图1.11“项目”窗口
12、在图1.11中,单击“下一步”,弹出的“筛选表行”窗口,如图1.12所示。
图1.12“筛选表行”窗口
13、在图1.12中,单击“下一步”,在弹出的“快照代理”窗口中,选中“立即创建快照并使快照保持可用状态,以初始化订阅”,如图1.13所示。
图1.13“快照代理”窗口
14、在图1.13中,单击“下一步”,弹出的“代理安全性”窗口,如图1.14所示。
图1.14“代理安全性”窗口
15、在图1.14中,单击“安全设置”,在弹出的“快照代理安全性”窗口中,选中“在SQLServer代理服务帐户下运行”,如图1.15所示。
图1.15“快照代理安全性”窗口
16、在图1.15中,单击“确定”,回到“代理安全性”窗口中,如图1.16所示。
图1.16“代理安全性”窗口
17、在图1.16中,单击“下一步”,在弹出的“完成该向导”窗口中,输入发布名称“fabu”,如图1.17所示。
图1.17“完成该向导”窗口
18、在图1.17中,单击“完成”,在弹出的“正在创建发布”窗口中,等待操作成功,如图1.18所示。
图1.18“正在创建发布”窗口
19、在图1.18中,单击“关闭”,在本地发布展开项下可看到发布项“[AdventureWorks]:
fabu”。
如图1.19所示。
图1.19查看发布项“AdventureWorks]:
fabu”
20、在图1.19中,在发布项“[AdventureWorks]:
fabu”上单击鼠标右键,在弹出的快捷菜单中选择“属性”。
如图1.20所示。
图1.20选择发布项“AdventureWorks]:
fabu”属性
21、在图1.20中,单击“属性”,在“发布属性”对话框中,将“可更新订阅”下的“允许对等订阅”的值设为“True”,如图1.21所示。
图1.21设置“允许对等订阅”的值
指导:
此时按照步骤1~21把另一个实例“CZZY-F0F58EA11D\SQL2”也配置成分发服务器。
22、在图1.21中,单击“确定”,在发布项“[AdventureWorks]:
fabu”上单击鼠标右键,在弹出的快捷菜单中选择“配置对等拓扑”。
如图1.22所示。
图1.22选择“配置对等拓扑”
23、在图1.22中,单击“配置对等拓扑”,弹出的“配置对等拓扑”窗口,如图1.23所示。
图1.23“配置对等拓扑”窗口
24、在图1.23中,单击“下一步”。
弹出的“发布”窗口,如图1.24所示。
图1.24“发布”窗口
25、在图1.24中,单击“下一步”,弹出的“对等方”窗口,如图1.25所示。
图1.25“对等方”窗口
26、在图1.25中,单击“添加SQLServer”,在弹出的“连接到服务器”窗口中,选择服务器的名称为“CZZY-F0F58EA11D\SQL2”,如图1.26所示。
图1.26连接服务器“CZZY-F0F58EA11D\SQL2”
27、在图1.26中,单击“连接”,弹出的“对等方”窗口,如图1.27所示。
图1.27“对等方”窗口
28、在图1.27中,单击“下一步”,弹出的“日志读取器代理安全性”窗口,如图1.28所示。
图1.28“日志读取器代理安全性”窗口
29、在图1.28中,单击默认服务器行的“浏览”按钮。
在弹出的“指定将运行日志读取器代理进程的域或计算机帐户”窗口中,选中“在SQLServer代理服务帐户下运行”,如图1.30所示。
图1.29“指定将运行日志读取器代理进程的域或计算机帐户”窗口
30、在图1.29中,单击“确定”,回到“日志读取器代理安全性”窗口中,同样设置“CZZY-F0F58EA11D\SQL2”的代理安全属性,如图1.30所示。
图1.30设置“CZZY-F0F58EA11D\SQL2”的代理安全属性
31、在图1.30中,单击“下一步”,在弹出的“分发代理安全性”窗口中,同样设置默认服务器和“SQL2”服务器代理安全属性,如图1.31所示。
图1.31“分发代理安全性”窗口
32、在图1.31中,单击“下一步”,在弹出的“新对等方初始化”窗口中,保持默认设置,如图1.32所示。
图1.32“新对等方初始化”窗口
33、在图1.32中,单击“下一步”,弹出的“完成该向导”窗口,如图1.33所示。
图1.33“完成该向导”窗口
34、在图1.33中,单击“下一步”,在弹出的“正在生成对等拓扑”窗口中,等待拓扑成功,如图1.34所示。
图1.34查看复制的结果
35、在图1.34中,单击“关闭”,在本地发布下展开发布项“[AdventureWorks]:
fabu”可看到订阅项“[CZZY-F0F58EA11D\SQL2].[AdventureWorks]”,在本地订阅下展开可看到订阅项“[AdventureWorks]-[CZZY-F0F58EA11D\SQL2].[AdventureWorks]:
fabu”。
如图1.35所示。
图1.35查看订阅项
36、连接服务器“CZZY-F0F58EA11D\SQL2”,在对象资源管理器的本地发布和本地订阅下展开可看到和默认数据库下相似的发布和订阅。
如图1.36所示。
图1.36查看服务器“CZZY-F0F58EA11D\SQL2”的发布和订阅
指导:
此时,若两个服务器中任何一个服务器的“AdventureWorks”数据库的表有变化,那么另一个服务器中的“AdventureWorks”数据库的表也发生同样的变化。
3.4.4.3测试对等复制
1、在默认服务器的[AdventureWorks].[Sales].[Store]表中用下列SQL语句插入数据。
INSERTINTO[AdventureWorks].[Sales].[Store]
([CustomerID]
[Name]
[SalesPersonID]
[Demographics]
[rowguid]
[ModifiedDate])
VALUES
(702,11,11,null,NEWID(),2003-4-5)
GO
INSERTINTO[AdventureWorks].[Sales].[Store]
([CustomerID]
[Name]
[SalesPersonID]
[Demographics]
[rowguid]
[ModifiedDate])
VALUES
(703,11,11,null,NEWID(),2003-4-5)
GO
INSERTINTO[AdventureWorks].[Sales].[Store]
([CustomerID]
[Name]
[SalesPersonID]
[Demographics]
[rowguid]
[ModifiedDate])
VALUES
(704,11,11,null,NEWID(),2003-4-5)
GO
INSERTINTO[AdventureWorks].[Sales].[Store]
([CustomerID]
[Name]
[SalesPersonID]
[Demographics]
[rowguid]
[ModifiedDate])
VALUES
(705,11,11,null,NEWID(),2003-4-5)
指导:
(1)插入前删除[Sales].[Store]的外键约束!
(2)NEWID()函数得到新的uniqueidentifie值,uniqueidentifier数据类型可存储16字节的二进制值,其作用与全局唯一标识符(GUID)一样。
GUID是唯一的二进制数;世界上的任何两台计算机都不会生成重复的GUID值。
GUID主要用于在拥有多个节点、多台计算机的网络中,分配必须具有唯一性的标识符。
2、连接默认服务器,在表“Store”中可看到插入了702~705四行数据。
如图1.1所示。
图1.1连接默认服务器,查看表“Store”的变化
3、连接服务器“CZZY-F0F58EA11D\SQL2”,在表“Store”中同样可看到插入了702~705四行数据。
如图1.2所示。
图1.2连接“CZZY-F0F58EA11D\SQL2”服务器,查看表“Store”的变化
4、在“CZZY-F0F58EA11D\SQL2”服务器的表“Store”中插入了706~709四行数据。
如图1.3所示。
图1.3在表“Store”中插入了706~709四行数据
5、在默认服务器的表“Store”中同样可看到插入了706~709四行数据。
如图1.4所示。
图1.4在默认服务器中查看表“Store”的变化
指导:
思考在一个服务器的数据库“AdventureWorks”中添加一个表,另一个服务器中会不会添加同样的表?
3.5任务3:
设计数据库保护策略
3.5.1任务需求
根据SQLServer服务器中的系统数据库和AdventureWorks数据库的数据保护要求设计出恰当的数据库保护策略。
要求:
公司要建立AdventureWorks数据库管理系统,通过前台进行数据库保护的工作。
作为数据库管理人员需要你配合网站设计人员用SQL语句来设计并实现数据库保护策略。
3.5.2知识准备
要完成任务3,需要了解和掌握数据库备份与还原的相关知识:
3.5.2.1造成数据丢失的原因(详见1.5.2.1)
3.5.2.2数据库恢复策略(详见1.5.2.2)
3.5.2.3完整数据库备份(详见1.5.2.3)
3.5.2.4差异备份(详见1.5.2.4)
3.5.2.5事务日志备份(详见1.5.2.5)
3.5.2.6备份设备(详见1.5.2.6)
3.5.3任务分析
数据库保护策略的制定取决于数据库的特性,包括:
大小、使用模式、内容特性以及数据要求等,因此在制定策略之前首先需要分析数据库的特性。
作为一个大的跨国公司,公司的生产和销售等数据处在随时更新的状态下,因此,AdventureWorks数据库中数据的也是随时在更改。
这就要求当数据库发生故障时,能快速、完整的还原数据。
根据这一要求,应制定如下备份策略:
1.每个星期天在系统空闲的时候做一次完整备份;
2.每个星期的一、三、五在系统空闲的时候做一次差异备份;
3.每个星期的二、四、六在系统空闲的时候做一次日志备份。
系统数据库是SQLServer安装的核心。
没有系统数据库,SQLServer便无法正常工作。
因此,将这些系统数据库进行备份以防系统错误是极其重要的。
根据系统数据库的数据变化特点,可制定备份策略如下:
1.由于这些数据库表中的数据一般都保持不变,因此通过使用完整数据库备份的简单模式备份。
定期完成即可。
2.备份的时间可在创建数据库、登录名以及其他相关设置完成后备份一次。
3.5.4完成任务
该任务在前两个项目中已有类似的详细操作步骤,在此由学生完成。
3.6任务4:
设计数据库