设为首页 收藏本站
查看: 626|回复: 0

[经验分享] [原]配置SQL Server 2005事务日志传送(非单机,非域环境,共享文件夹在主库)

[复制链接]

尚未签到

发表于 2015-7-2 14:25:18 | 显示全部楼层 |阅读模式
  事务日志传送这个功能有点像Oracle的DataGuard,具体介绍就不在这里废话了,本文主要记录我在实施过程中所遇到的问题以及解决方法。
  事务日志传送的“传送”这个功能是通过Windows共享实现的,而不是好像Oracle那样由数据库本身的机制来进行传送(log_archive_dest_X = 'service=XXXXX'),一说到Windows共享就牵涉到用户权限的问题,所以配置事务日志传送这个功能所遇到的故障绝大部分都是由于用户的权限问题所造成的。
  先上一张架构图,可以看到事务日志传送的就是由主库不断产生事务日志文件的备份(或者叫归档日志,可能更好理解)而备库不断还原这些事务日志备份文件的过程。
  
DSC0000.png
  细心的朋友可能已经发现中间的backup文件是一个共享文件夹,如果这个共享文件夹位于主库的服务器上,主库的备份路径可以不写成UNC路径的形式,而备库则必须写成UNC路径的形式。如果这个共享文件夹位于备库的服务器上,主库的备份路径就要写成UNC路径,而备库可以写成本地路径的形式。如果共享文件夹即不在主库也不在备库的服务器上面,那么备份、还原目录的名称都要写成UNC路径了。
  
  现在开始配置事务日志传送
  第一部先确认备库中运行SQL Server的用户是什么:
DSC0001.png 在这里可以到SQL Server (MSSQLSERVER)这个服务是用“本地系统”这个用户启动的,这个用户在安装SQL Server的时候可以指定的。如果你的SQL Server是使用“本地系统”这个用户启动的话,就不能正常访问网络,也就不可以还原远程的备份文件,如果不修改启动的用户的话,等一下做事务日志传送的时候就会报这个错:
DSC0002.png 10.168.4.18是我主机的IP地址,此时,在备机的应用程序日志里面可以看到如下信息:
  
BackupDiskFile::OpenMedia: 备份设备 '\\10.168.4.18\backup\Lucky.bak' 无法open。操作系统错误 5(拒绝访问。)。
  
  
  
  为了解决这个问题,我们需要让备机的不运行在“本地系统”这个帐号上面,我们创建一个普通的用户,例如叫做SqlUser,然后将这个用户加入到那堆SQLServer2005**************的组里面,如果不加入这些组的话,SQL Server会启动不了。
DSC0003.png
DSC0004.png
  然后修改SQL Server的启动帐户,并重新启动SQL Server 服务。
  在备库的服务器上面,也建一个SqlUser的用户,但是这个用户自需要属于Users组就可以了,当然主库、备库的SqlUser的密码得一样。
  在主库上面建一个共享文件夹backup。
DSC0005.png DSC0006.png
  好了,自此准备工作已经完成,下面开始正式开始配置事务日志传送。
DSC0007.png DSC0008.png   这两个窗口主要是调节备份归档事务日志的策略,注意,这里的本地路径要对应UNC路径,不明白的就看一下以下这张图:
DSC0009.png
  
  
  
  
  
  
  
  
  
  然后,添加备库,为了尽快看到效果,我将“事务日志备份”,“复制文件”,“还原事务日志”的调度时间都调整为1分钟
DSC00010.png DSC00011.png DSC00012.png 一切OK之后,就可以开始创建事务日志传送,但是通常来说都会出现如下的问题:
DSC00013.png 10.168.4.100是我备库的服务器地址,大家仔细看一下错误,说是无法访问C:\Windows\System32\目录下的一个文件,实际上是无法写入创建该文件,此时,到备库的服务器上面,将已经还原出来的数据库(我这里是Lucky)删除掉,然后给C:\Windows\System32\这个目录加上一个用户权限,如下图所示:
DSC00014.png 我见过某些文章为省事特意将SqlUser这个用户加入到Administrators组里面,估计就是为了逃避这个问题,但是我不建议这样做,而且我觉得奇怪的是怎么会在这个目录建立文件呢,我很怀疑这是一个Bug。
  然后再试一下,就可以了。
DSC00015.png
  取消事务日志备份之后,备库依然是处于“备用/只读”的状态,可以查询,但是,还是不能写入,执行以下语句就可以使备库正式使用了



restore database Lucky with recovery

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-82595-1-1.html 上篇帖子: SQL Server 2008 事件探查器(SQL SERVER Profiler) 下篇帖子: SQL Server索引的维护
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表