资源描述:
《经验分享二异地备份.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、情形一:异地备份运行环境分析:现有两台机器具体配置如下:操作系统:两台都是Windows2000AdvancedServer数据库:SqlServer2000IP:一台是192.168.0.1,另一台是192.168.0.100要求:定期自动实现将192.168.0.1中数据库中bbsbak数据库备份到192.168.0.100的机器上,并删除15天以前对192.168.0.100中自动备份的bbsbak数据库。注:本操作涉及到MsSqlServer2000数据库数据转换服务中包的高级设置、数据库存储过程、作业的添加及简单Transact_SQL语句
2、的操作等内容,在此不再详述,请参考相关资料及微软官方网站。操作步骤:1.在本机(win2000)中打开SQL数据库――-数据转换服务――本地包(如图)2.右键――新建包,出现如图画面A:首先建立MicrosoftOLEDBProviderforSQLServer(如图)在此注意两点:第一指定的服务器应是192.168.0.100;第二192.168.0.100数据库的选择(在此我用master数据库)。B:下面建立执行SQL任务:未定义如图a.命令超时项设置为:300;b.SQL语句为:select'bbsbak'+convert(varchar(4
3、),datepart(yyyy,getdate()))+convert(varchar(4),datepart(mm,getdate()))+convert(varchar(4),datepart(dd,getdate()))注释:红色标记是实现备份后的数据库在bbsbak后加上年月日,如bbsbak.c.点击参数(A)对参数进行相关设置,出现如上图界面选输出参数,如上图单击右键-包属性输出参数类型为行值,点击创建全局变量,出现如图界面全局变量的名称为:bbsbak_crt,确定后返回参数映射界面选择输出全局变量为:bbsbak_crtOK,第一个S
4、QL任务建立成功!C:下面建立另外一个执行SQL任务:未定义如图其中SQL语句为:execcrtdatabase_bbsbak.OK,继续!D:建立复制SQLServer对象任务:未定义,如图注意:此时源服务器为:192.168.0.1,选择要备份的数据库(bbsbak)下面转到目的服务中:参数如图设置OK!继续E:建立动态属性任务:未定义,如图OK!F:下面设置工作流状态如图保存为bbsbak_DTS,如图下面调度包调度前保证SQLagentserver启动到此本机中(192.168.0.1)上的操作完成。3.打开192.168.0.100机器中的
5、sql数据库――-Master数据库――存储过程,如图存储过程如下:文本语法为:CREATEproccrtdatabase_bbsbakasdeclare@sqlvarchar(120)declare@sql2varchar(120)declare@sql3varchar(260)declare@naljavarchar(12)set@nalja=convert(varchar(4),datepart(yyyy,getdate()))+convert(varchar(4),datepart(mm,getdate()))+convert(varchar
6、(4),datepart(dd,getdate()))set@sql='createdatabasebbsbak'+@nalja+'on(name='+'''backup_mdf'+@nalja+''',filename=''E:bbsbakbackup_mdfbbsbak'+@nalja+'.mdf'')'set@sql2='Logon(name='+'backup_ldf'+@nalja+',filename=''E:bbsbakbackup_ldfbbsbak'+@nalja+'.ldf'')'set@sql3=@sql+@sql2
7、--select@sql3exec(@sql3)GO注意:E:DB_backupFull_backup此路径中的DB_backup和Full_backup文件夹应当事先在本机E盘上建立好同样再建立一个存储过程,语法为CREATEprocdeldatabase_bbsbakasdeclare@naljavarchar(12)declare@sqlvarchar(120)set@nalja=convert(varchar(4),datepart(yyyy,getdate()-15))+convert(varchar(4),datepart(mm,g
8、etdate()-15))+convert(varchar(4),datepart(dd,getdate()