zoukankan      html  css  js  c++  java
  • Reference (SQL Server 2005自动异机备份)

    来之 http://bbs.51cto.com/thread-806573-1.html.

    SQL Server 2005自动异机备份

    本人在网络上查了一些资料之后终于以很傻的方式解决了SQL 2005的异机备份问题啦,现在俺就给大伙抽

    两句:
    SQL Server 2005数据库系统支持三种备份方式:完整备份、差异备份和日志备份。
      

      本人目前的实现方式是:第一:每周1次完全备份,备份时
    间为每周6的0点整,并且将本次的完整备份文件传送到另外的文件服务器上。第二:每天1次差异备份,

    备份时间定为晚上的0点整,并且将此备份传送到文件服务器上。

    自动备份实施方案:
       关于数据库的备份,SQL Sever 2005提供了可视化向导和利用Backup语句两种备份方式。下面就两种

    备份方式实施上面的备份策略。


    可视化向导创建备份:
    SQL Sever 2005可以通过“维护计划向导”来创建维护计划,实现自动化备份数据库。具体步骤如下:
    (1)在“管理”--“维护计划”上右键弹出菜单,选“维护计划向导”,设置“维护计划的名称”,在

    里面填写计划的名称(自己自定义哦)。设置代理执行维护计划账户和口令

    (2)选择维护计划类型,比如数据库备份(完整备份),定义维护计划任务,在这里需要为备份文件选

    择适当的位置和文件名(比如:TEST.BAK),并在“如果备份文件存在(*)”的备选项改为“覆盖”。
    (3)设置计划执行周期。设置为每周六的0点,并保存好维护计划操作报告。
    (4)确定--完成。
    这样就完成了数据库的完整备份,按照上面的步骤,设置数据库的差异备份和日志备份。完成后先收工执

    行测试。




    也可用Backup语句创建备份


    用Backup语句可以备份整个数据库、事物日志,备份这些对象的语法较复杂些,但是 都大同小异:
    完整备份:
    GO
    BACKUP DATABASE TEST(数据库的名称哦) TO DISK = 'E:\BACKUP\TEST.BAK(备份文件哦)'  \这个是指定

    备份的位置的哦
    WITH INIT    '这里的INIT 表示的是覆盖现有的备份集哦
    GO
      
    这样之后添加计划,设置执行的周期(每周一次)和时间(晚上0点哦)等。


    然后确定--完成。


    同理可以用上面的方式来实现差异备份和日志备份,并根据备份的策略来设置执行的周期和时间,他们的

    语句分别是:
    差异备份:
    USE TEST
    GO
    BACKUP DATABASE TEST
    TO DISK = 'E:\BACKUP\TEST.BAK'   \指定备份的位置
    WITH DEFFERENTIAL  \指定备份的类型为差异备份哦
    GO
    日志备份
    BACKUP LOG TEST
    TO DISK = 'E:\BACKUP\LOG.LDF'   \指定备份的位置
    GO




    异机存放备份文件
      处于安全考虑,即使在本机上做了备份之后,仍存在机器本身意味事件而导致备份文件的损坏或者丢失

    的可能,所以在其他的机器上也存放一份备份文件  方为更安全,这个就利用WINDOWS的任务计划和一个

    copy批处理文件即可实现。可以利用下面的两种方式来完成异机存放的目的(本人两种都试过,其中第一

    种为方便哦):
    (1)以域服务器的方式:
    把备份集加入的SQL Sever 集成系统服务器中后,以域账户登录,按照下面的步骤即可实现备份文件的自

    动传送:

    1.在备份机上新建一个.BAT文件,编辑如下内容保存:
    copy \\192.168.1.100\E$\BACKUP\TEST.BAK E:\BAK\

    说明:192.168.1.100就是集成系统服务器的IP地址,E$\BACKUP\TEST.BAK是集成系统数据库的完整备份

    ,E:\BAK\是完整备份文件传送过来的保存位置。
    2.在备份机上添加任务计划,找到刚才新建的批处理文件,周期改为“每
    周”,把时间也改掉,输入域用户名和密码。
    3.确定---完成。这样就可以实现对数据库完整备份的异机存放目的。


    (2)除了用域用户登录的方式,还可以用NET命令把备份的文件COPY到需要放入的目录下,但是这种情况

    的话要保证备份机的IPC$要开启,并且两台机器的用户和密码一致(主要是要保证重启机器后不用再重新

    映射哦)。
    具体步骤:
    1. 在集成系统服务器上,开始---运行--输入CMD,进入命令行窗口。
    2.在命令行窗口下输入如下命令:
    Net use z:\\192.168.1.100\e$ '123456' /user:administrator
    说明:192.168.1.100是备份机的IP地址,123456为密码,administrator是他的用户名,上面语句的意思

    就是把备份机的E盘映射到本地的Z盘。
    3.在集成系统服务器上建立.bat文件来实现文件的传递,编辑如下内容并保存为自定义文件名.BAT
    copy E:\backup\test.bak z:\ 自定义文件名.BAT
    4.添加任务计划,找到刚才定义的.bat文件,周期改为“每周”,把“起始时间”改为晚上的0点,日期

    改为“星期六”,输入机器的用户名和密码。
    5.确定---完成。就可以吧完全备份文件test.bak存放到备份的机器上啦。
      同样,利用上面的3、4、5步完成差异文件的自动传送。
    如果用net的方式的话,必须开放139和445端口,对服务器的安全性带来一定的危险
  • 相关阅读:
    当初为蜂巢样式实验过的方法
    在看 jquery 源码中发现的一些优化方向
    我终于有案例库啦(github 提供的)
    学习笔记(五)
    试坑不完美的 clip-path (我说的 CSS 的那个)
    解决安卓机在微信上播放视频有广告问题
    requestAnimationFrame 的实验性实践
    学习笔记(四)
    ajax
    php 增删改查---增
  • 原文地址:https://www.cnblogs.com/sandy_liao/p/1969286.html
Copyright © 2011-2022 走看看