Web环境下MS SQL Server中数据的磁带备份与恢复

2016-01-29 17:05 10 1 收藏

Web环境下MS SQL Server中数据的磁带备份与恢复,Web环境下MS SQL Server中数据的磁带备份与恢复

【 tulaoshi.com - SQLServer 】

  摘 要:介绍了磁带数据备份及恢复的工作过程,包括在硬盘上建立了一个与磁带的容量相当的数据库,即桥数据库
和在Web信息系统中要实现完整的磁带数据备份及恢复功能。从理论与实践上阐述了如何利用SQL中现有的数据库备份和恢
复的命令以及NT中的IDC技术。
  关键词:Web信息系统;磁带数据备份;桥数据库;IDC文件;数据恢复


1 引言

  实现磁带备份数据的功能有两方面的困难:首先,MS SQL Server(以下简称SQL)所提供的数据库的整体备份及恢复
功能不能直接满足本系统要求的数据滚动备份。其次,需要解决如何在Web环境下实现磁带数据备份功能。
  利用SQL中现有的数据库备份和恢复的命令以及NT中的IDC技术,实现SQL数据库中数据滚动备份到磁带的功能。本系统
所实现功能既能保证近一段时间的数据总在数据库中,又能保证系统管理员可随时恢复备份数据,供用户查询。本文所实
现的功能具有普遍的意义,特别适用于中小型企业开发基于Intranet技术的管理信息系统。

2 磁带数据备份及恢复的工作过程

  为了充分利用SQL中现有的数据库备份与恢复功能,以降低实现磁带数据备份的代价,我们特地在硬盘上建立了一个与
磁带的容量相当的数据库,我们称之为桥数据库,如FJJDBBK。可方便地实现数据的滚动备份了。其工作过程是:管理员把
某月的数据从主数据库移到桥数据库中;然后用SQL的备份功能把桥数据库备份到磁带上。用户需要查看磁带中的历史数据
时,系统又用SQL的恢复备份功能把磁带中的数据恢复到桥数据库中,用户直接在桥数据库中查阅历史数据。此外,在数据
备份到磁带后,在进行下次数据备份前,必须清空备份数据库中的数据。为了提高工作效率,我们建立了一个空白桥数据
库(没有数据时的桥数据库)。每次进行磁带备份数据之前,就用此空白数据库恢复桥数据库。空白数据库文件建立后要
保存好,不可随便删除。
  建立该备份空白数据库过程为:先建立主数据库FJJDBBK,然后在FJJDBBK中建立与当前数据库中一样结构的表。建立
这些表结构时最好的方法是先用Enterprise Manager的Object菜单下的Generate SQL Scripts功能生成建立这些表的
Scripts文件,然后选择FJJDBBK数据库,用Enterprise Manager的Tools菜单下的Query Analyzer功能运行该文件,就建立
了这些所需表。显然,这时的FJJDBBK为空数据库。我们再利用备份命令或运行Tools菜单下的Backup/Restore功能备份该
空数据库。

3 磁带数据备份及恢复的实现

  在NT中,Web服务器IIS(Internet Information Server)提供了完善的访问SQL的技术IDC。IDC是一个DLL文件
(HTTPODBC.DLL),其实,它通过ODBC接口可访问各种数据库。在具体实现Web页面访问数据库时,需建立两种类型的文
件:IDC文件(*.idc)和HTML模板文件(*.htx)。IDC文件用于控制数据库的访问。它一般由两部分组成:
  .文件头 指明系统数据源,模板文件名,用户名及口令。有时还包括一些有关检索数据库方面的参数设置。
  .文件主体 这部分内容以"SQLStatement:"为起始标志,然后写操纵数据库的标准SQL语句。注意,每条语句以"+"号
开头,它作为区分每条SQL语句的标志。需要强调的是,对于MS SQL数据库,IDC可用其任何标准的命令及函数。例如定义
变量,控制数据流等(见实例)。
  IDC的处理流程如下:首先,Web服务器IIS分析浏览器传来的URL字符串。如果当前字符串以"*.idc"结尾,就将该IDC
请求传给IDC接口模块,IDC将依次读取并解释IDC文件的内容,通过ODBC模块向数据库服务器发服务请求;数据库服务器将
执行结果通过ODBC接口返回给IDC模块。接着IDC模块把结果插入指定的的模板文件,形成一个实际的HTML文件交给IIS;最
后由IIS将该HTML返回浏览器。
  在Web信息系统中要实现完整的磁带数据备份及恢复功能需要实现以下三个功能:"数据备份"功能、"数据恢复"功能
和"清理数据"功能。"数据备份"功能在保证系统管理员操作的前提下,根据用户输入的所要备份数据的起始日期和终止日
期,从主数据库把要备份的数据转存到桥数据库中,然后运用SQL的DUMP命令实现该功能。"数据恢复"功能则在保证系统管
理员操作的前提下,提供"恢复桥数据库"和"恢复空白桥数据库"的功能。只要运用SQL的LOAD命令就可实现上述功能;同
样,"清理数据"功能也要保证在系统管理员操作的前提下,根据用户输入的所要删除数据的起始日期和终止日期,运用SQL
中的DELETE命令删除当前数据库中数据。因此。为了"数据备份"功能和"清理数据"功能的顺利实施,要求每个表都有归档
时间字段。
  实现本系统磁带数据备份与恢复功能的部分IDC文件如下:
/*BKUP.IDC*/
Datasource: Web SQL
Template: BKUP.htx
Username: sa
Password: sa
SQLStatement:
+if %jb%=1
+/*判断系统维护员*/
+SELECT qsrq=convert(varchar(12),getdate(),1),


zzrq=convert(varchar(12),+dateadd(day,1,getdat

来源:http://www.tulaoshi.com/n/20160129/1500295.html

延伸阅读
标签: SQLServer
一、备份数据库  1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server 2、SQL Server组--双击打开你的服务器--双击打开数据库目录 3、选择你的数据库名称(如论坛数据库Forum)--然后点上面菜单中的工具--选择备份数据库 4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称...
标签: SQLServer
一、备份数据库 1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server 2、SQL Server组-->双击打开你的服务器-->双击打开数据库目录 3、选择你的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择备份数据库 4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后点添加...
标签: SQLServer
  在SQL server 中恢复数据的几种办法: 1.自然就是 backup 的 恢复方法 backup 这种方法是最安全,最可靠的方法操作起来也很简单,只要在 sql server 的 enterprise manager中选择 restore 就可以了。 用T-SQL 也可以完成: RESTORE DATABASE test FROM DISK = ’c:\mssql7\backup\test.bak’ 当然这是用的 文件恢复,如果是 设...
标签: SQLServer
备份数据库,例如: BACKUP DATABASE Northwind    TO DISK = 'c:\Northwind.bak' 还原数据库,例如: --返回由备份集内包含的数据库和日志文件列表组成的结果集 RESTORE FILELISTONLY    FROM DISK = 'c:\Northwind.bak' --还原由BACKUP备份的数据库 RESTORE DATABASE Northwind    FROM DISK = 'c...
下边是我对部分内容的总结,里边偏向了T-SQL语句实现的总结,对于SQL Server Management Studio中对象管理器的操作并没有太多的总结,因为这些都有一些向导,而且,大部分都是在对应的节点,右击找相应的操作,相应的对象,然后根基向导去操作!     首先是大概知识点的总结:     下边是一些T-SQL语...

经验教程

692

收藏

50
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部