制作SQL数据库备份软件

    最近负责的分析管理系统刚上线,由于第一次做,没有经验,竟然连备份这些基础东西都忘记了,只好急急忙忙上网找资料,做一个数据库备份软件。 

1. 学习SQLDMO (备份恢复)

SQLDMOSQL Distributed Management ObjectsSQL分布式管理对象)封装 Microsoft SQL Server 2000 数据库中的对象。SQL-DMO 允许用支持自动化或 COM 的语言编写应用程序,以管理 SQL Server 安装的所有部分。SQL-DMO  SQL Server 2000 中的 SQL Server 企业管理器所使用的应用程序接口 (API);因此使用 SQL-DMO 的应用程序可以执行 SQL Server 企业管理器执行的所有功能。

ASP.NET2005中要使用SQLDMO.DLL,首先要注册这个组件。注册SQLDMO.DLL组件的步骤:

  1. “项目”——> “添加引用”——> COM ”——> SQLDMO.DLL ”这样就可以注册SQLDMO.DLL 组件。
  2. 把在C:"Program Files"Microsoft SQL Server"80"Tools"Binn 目录下的动态链接库SQLDMO.DLL 文件。
  3. DLL 文件持拷贝到C:"WINDOWS"system32 目录下
  4. C:"WINDOWS"system32 目录下建立一个新文件夹:resources, 在里面再建一个新文件夹2052, 然后把RLL 文件拷贝到2052 . 即放在C:"WINDOWS"system32"resources"2052 目录中
  5. 注册: 在开始>> 运行>>( 输入)Regsvr32 C:"Program Files"Microsoft SQL Server"80"Tools"Binn"sqldmo.dll 回车。
    (实践证明不需要注册都可以在VS中试用这个组件)

        2. 利用SQLDMO完成数据备份与恢复将变得简单。
            备份的代码如下
备份数据库
            SQLDMO.Backup backup = new SQLDMO.BackupClass();
            SQLDMO.SQLServer sqlserver 
= new SQLDMO.SQLServerClass();
            
try 
            

                sqlserver.LoginSecure 
= false;
                
//服务器名,账号,密码
                sqlserver.Connect(@"132.97.1.1\ABC","sa","`1qaz2wsx");
                backup.Action
=SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
                
//备份数据库名
                backup.Database = "WorkflowServicePlatformDB";
                
//备份储存的路径
                backup.Files = @"F:\backup\NOAM测试环境\DB\WorkflowServicePlatformDB_07071627.bak";
                
//备份数据名
                backup.BackupSetName = "WorkflowServicePlatformDB";
                backup.BackupSetDescription
="数据库备份";
                backup.Initialize
=true;
                backup.SQLBackup(sqlserver);
            }

            
catch
            
{
                
throw;
            }

            sqlserver.DisConnect();

       
       恢复的操作将复杂一点,思路是分2步,1是先把与要恢复的数据库相连的进程都杀死,2然后才是恢复数据库。

转载于:https://www.cnblogs.com/wyinwing/archive/2008/07/04/1235818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值