关闭

关闭

封号提示

内容

首页 SQL_Server_2005_镜像构建手册.doc

SQL_Server_2005_镜像构建手册.doc

SQL_Server_2005_镜像构建手册.doc

上传者: castle1943 2011-05-17 评分1 评论0 下载26 收藏0 阅读量682 暂无简介 简介 举报

简介:本文档为《SQL_Server_2005_镜像构建手册doc》,可适用于IT书籍领域,主题内容包含原创SQLServer镜像构建手册一、镜像简介、简介数据库镜像是将数据库事务处理从一个SQLServer数据库移动到不同SQLServer环境中的另符等。

原创SQLServer镜像构建手册一、镜像简介、简介数据库镜像是将数据库事务处理从一个SQLServer数据库移动到不同SQLServer环境中的另一个SQLServer数据库中。镜像不能直接访问它只用在错误恢复的情况下才可以被访问。要进行数据库镜像所需的最小需求包括了两个不同的SQLServer运行环境。主服务器被称为“主机”第二个服务器被称作“备机”。主机数据库就是你实际用着的数据库镜像数据库就是你的数据库的备用拷贝。当事务写入你的基本服务器的时候他们也同样被传送到并写入你的镜像数据库中。除了基本和镜像之外你还可以引入另一个可选的组件名为“见证”。见证服务器是第三个SQLServer运行实例它是在判断什么时候进行错误恢复的时候用于基本和镜像之间内部交流。只有当你想实现自动错误恢复的时候用到这个选项。它实现了比投票的能力当我的一个组件不可达并因此需要进行错误恢复的时候。见证服务器只有在你想实现自动错误恢复的时候才需要用到。、优点下表是SQLServer可用性官方解决方案的一个对照表现时我中心使用的恢复模式是“冷备份”中的“备份恢复”通常来说“热备份”比“冷备份”的可用性更高恢复更快更适合我中心现时的实际情况。如果不从成本考虑的话“热备份”中的“故障转移群集”的可用性是最高的但是故障转移群集需要借助磁盘阵列而且建设本身复杂性较高。数据库镜像的建立并没有太多的硬件要求最起码没有像“故障转移群集”需要共享存储这么高的要求。HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" 、缺点()由于SQLServer是一个实例多个数据库的产品数据库镜像技术是基于数据库级别的因此每次主数据库新增数据库都必须为备机增加数据库并且为新增的数据库建立镜像关系。()数据库的登录名和用户是存储在master数据库master数据库是不能做镜像的所以每次操作数据库的登录名和用户也是需要多维护一份()数据库作业不能得到相应的维护。()微软号称镜像可以让客户端对故障透明但是实际测试中发现只有满足特定的条件才能实现透明化而且透明化得客户端支持才可行(netFramework以上Microsoftjdbc驱动以上)。()跨数据库事务和分布式事务均不支持数据库镜像。纵观其他几种方式仅有“热备份”的“故障转移群集”没有这些问题。一、配置主备机、物理连接将主备数据库按照如图所示连接:HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" 、检查SQLServer数据库只有SQLServer标准版、企业版和开发版才可以建立数据镜像。其他版本即Express只能作为见证服务器。如果实在不清楚什么版本执行如下语句查看:select version若要对此数据库进行数据库镜像必须将它更改为使用完整恢复模式。若要用TransactSQL实现此目的请使用ALTERDATABASE语句: USE master ALTER DATABASE <DatabaeName>  SET RECOVERY FULL  二、主备实例互通实现互通可以使用域或证书来实现考虑实现的简单以下选取证书的方式实现。注意:实现“主备数据库实例互通”的操作只需要做一次例如为了将两个SQLServer的实例中的个数据库建成镜像关系则只需要做一次以下操作就可以了或者这样理解:每一对主备实例(不是数据库)做一次互通。、创建证书(主备可并行执行)主机执行:USE masterCREATE MASTER KEY ENCRYPTION BY PASSWORD = 'syhr'CREATE CERTIFICATE HOSTAcert WITH SUBJECT = 'HOSTA certificate' , STARTDATE = ''备机执行:USE masterCREATE MASTER KEY ENCRYPTION BY PASSWORD = 'syhr'CREATE CERTIFICATE HOSTBcert WITH SUBJECT = 'HOSTB certificate', STARTDATE = '' 、创建连接的端点(主备可并行执行)主机执行:CREATE ENDPOINT EndpointMirroring STATE = STARTED AS TCP ( LISTENERPORT= , LISTENERIP = ALL ) FOR DATABASEMIRRORING ( AUTHENTICATION = CERTIFICATE HOSTAcert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL )备机执行:CREATE ENDPOINT EndpointMirroring STATE = STARTED AS TCP ( LISTENERPORT= , LISTENERIP = ALL ) FOR DATABASEMIRRORING ( AUTHENTICATION = CERTIFICATE HOSTBcert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL ) 、备份证书以备建立互联(主备可并行执行)主机执行:BACKUP CERTIFICATE HOSTAcert TO FILE = 'D:SQLBackupHOSTAcertcer' 备机执行:BACKUP CERTIFICATE HOSTBcert TO FILE = 'D:SQLBackupHOSTBcertcer' 、互换证书将备份到D:SQLBackup的证书进行互换即HOSTAcertcer复制到备机的D:SQLBackup。HOSTBcertcer复制到主机的D:SQLBackup、添加登陆名、用户(主备可并行执行)以下操作只能通过命令行运行通过图形界面无法完成。(截至文档编写结束SQLServer的不定号为SP)主机执行:CREATE LOGIN HOSTBlogin WITH PASSWORD = 'syhr'CREATE USER HOSTBuser FOR LOGIN HOSTBloginCREATE CERTIFICATE HOSTBcert AUTHORIZATION HOSTBuser FROM FILE = 'D:SQLBackupHOSTBcertcer'GRANT CONNECT ON ENDPOINT::EndpointMirroring TO HOSTBlogin备机执行:CREATE LOGIN HOSTAlogin WITH PASSWORD = 'syhr'CREATE USER HOSTAuser FOR LOGIN HOSTAloginCREATE CERTIFICATE HOSTAcert AUTHORIZATION HOSTAuser FROM FILE = 'D:SQLBackupHOSTAcertcer'GRANT CONNECT ON ENDPOINT::EndpointMirroring TO HOSTAlogin 三、建立镜像关系以下步骤是针对每个数据库进行的例如:现有主机中有个数据库以下过程就要执行次。、手工同步登录名和密码在第一章中提到数据库镜像的缺点之一是无法维护登录名所以需要我们手工维护登录。通常来说数据库都将会有若干个用户作为访问数据库的用户并且数据库会有相应的登录名但是在备机中缺少与之相对应的登录名例如某业务系统使用’myuser’作为登录名访问数据库但是在备机中没有’myuser’这个登录名因此一旦主备切换业务系统就无法登录数据库了这种情况称为"孤立用户"在主数据库中执行如下语句:USE masterselect sid,name from syslogins查找出相应的用户名和sid例如:上述的’myuser’在备数据库中执行如下语句:USE masterexec spaddlogin loginame = '<LoginName>', passwd = '<Password>', sid = <sid> 这里的’LoginName’即主数据库中的登录名sid即是上述通过SQL语句查找出的sid。例如,查询得到的sid和name如下所示。  sid name xDCAECFFFCADE czaccount则建立登录名的SQL语句:USE masterexec spaddlogin loginame = 'czaccount', passwd = 'password', sid = xDCAECFFFCADE到此为止可以认为备机数据库的环境已经与主机同步了还差数据库内的数据未同步。、准备备机数据库承接上文该节是描述如何同步主备数据库内的数据。可以尝试从刚刚使用的全备文件进行还原在还原数据的时候需要使用选上“withnonrecover”。如图所示:HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" 如果执行成功数据库将会变成这个样子:、建立镜像由于是实验没有为服务器配置双网卡IP地址与图有点不一样但是原理一样。主机执行:ALTER DATABASE shishan SET PARTNER = 'TCP::’()如果主体执行不成功尝试在备机中执行如下语句:ALTER DATABASE shishan SET PARTNER = 'TCP::’()HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg"  如果执行成功则主备数据库将会呈现如上图所示的图标。如果建立失败提示类似数据库事务日志未同步则说主备数据库的数据(日志)未同步为保证主备数据库内的数据一致应在主数据库中实施一次“事务日志”备份并还原到备数据库上。备份“事务日志”如图所示:HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" 还原事务日志时需在选项中选择“restorewithnorecovery”如图所示:HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" HYPERLINK"http:imagescnblogscomcnblogscomkillkillWindowsLiveWriterSQLServerCFFclipimagejpg" 成功还原以后再执行建立镜像的SQL语句。四、测试操作、主备互换主机执行:USE masterALTER DATABASE <DatabaseName> SET PARTNER FAILOVER、主服务器Down掉,备机紧急启动并且开始服务备机执行:USE masterALTER DATABASE <DatabaseName> SET PARTNER FORCESERVICEALLOWDATALOSS、原来的主服务器恢复,可以继续工作,需要重新设定镜像备机执行:USE masterALTER DATABASE <DatabaseName> SET PARTNER RESUME 恢复镜像ALTER DATABASE <DatabaseName> SET PARTNER FAILOVER 切换主备、原来的主服务器恢复,可以继续工作默认情况下事务安全级别的设置为FULL即同步运行模式而且SQLServer标准版只支持同步模式。关闭事务安全可将会话切换到异步运行模式该模式可使性能达到最佳。USE masterALTER DATABASE <DatabaseName> SET PARTNER SAFETY FULL 事务安全,同步模式ALTER DATABASE <DatabaseName> SET PARTNER SAFETY OFF 事务不安全,异步模式 Tag标签:SqlServer

类似资料

编辑推荐

战国日本.pdf

汉语词汇(孙常叙).pdf

电影剧本《变脸》.pdf

六十四卦卦爻辞释评.pdf

蛀牙王子.ppt

职业精品

精彩专题

中国制造,引领“世界第一”

近十年来,我国制造业持续快速发展,总体规模大幅提升,综合实力不断增强,不仅对国内经济和社会发展做出了重要贡献,而且成为支撑世界经济的重要力量。你绝对想不到,中国制造有这么多“世界第一”

用户评论

0/200
    暂无评论
上传我的资料

精选资料

热门资料排行换一换

  • 私人租地合同协议书范本.doc

  • 道路工程验收报告范文3篇.doc

  • 我是一朵飘零的花(东莞打工妹生存…

  • 商业地产推广方案.doc

  • 丙烷MSDS.doc

  • 实习生教育调查报告.doc

  • 第一课新疆民族发展史_图文.doc

  •  物流公司岗位职责.doc

  • 电商工作计划.doc

  • 资料评价:

    / 13
    所需积分:1 立即下载

    意见
    反馈

    返回
    顶部