怎样实现数据库的备份与恢复????

zjg751206 2001-11-22 10:54:01
怎样用sqldmo.dll实现数据库的备份与还原??
...全文
39 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
yokel 2002-04-12
  • 打赏
  • 举报
回复
可以使用SQL-DMO来做:



恢复数据库:



Private Sub Command2_Click()



Dim sFile As String



sFile = "N_1"





Dim oServer As New SQLDMO.SQLServer



Dim oDatabase As New SQLDMO.Database



Dim oRestore As New SQLDMO.Restore





oServer.Connect servername, username, password



With oRestore





.Files = sFile





.Database = "Northwind"



.ReplaceDatabase = True



.SQLRestore oServer



End With





Set oRestore = Nothing



Set oDatabase = Nothing



oServer.DisConnect



Set oServer = Nothing



MsgBox ("OK")





End Sub





备份:



Dim oBackup As New SQLDMO.Backup



oBackup.Action = SQLDMOBackup_Database



oBackup.Database = "Northwind"



oBackup.Devices = "[NorthDev1],[NorthDev2]"



oBackup.BackupSetName = "Northwind_Full"



oBackup.BackupSetDescription = "Full backup of Northwind sample."





oBackup.SQLBackup oSQLServer
什么是数据库?什么是关系数据库管理系统(RDBMS)? 什么是SQL?列举一些常见的SQL命令。 什么是索引?为什么使用索引可以提高查询性能? 什么是事务?MySQL如何支持事务处理? 什么是主键和外键?它们之间有什么区别? 什么是数据库范式?列举一些常见的数据库范式。 什么是数据库连接池?为什么使用连接池可以提高数据库访问性能? 什么是数据库事务隔离级别?列举一些常见的事务隔离级别。 什么是数据库索引类型?列举一些常见的索引类型。 什么是数据库备份恢复?列举一些常用的数据库备份恢复策略。 什么是数据库优化?列举一些常见的数据库性能优化方法。 什么是数据库表关联?列举一些常见的表关联类型。 什么是数据库存储过程和触发器?它们的作用和使用场景是什么? 什么是数据库视图?它的作用和使用场景是什么? 什么是数据库分表和分库?为什么需要进行分表和分库操作? 什么是数据库锁?列举一些常见的数据库锁类型和使用场景。 什么是数据库复制?如何实现数据库的主从复制? 什么是数据库性能监控和调优工具?列举一些常用的工具。 什么是数据库连接字符串?它的格式和参数有哪些
数据库角色和权限 2 通过本实验的学习,使学生能够掌握建立SQL Server数据库用户的方法,理解SQL Server的数据库角色病能够进行角色的定义,理解SQL Server的数据库权限,能够分配权限 二、实验内容 1、理解数据库角色和权限 在SQL Server Management Studio中创建三个登录帐户:log1、log2、log3。 利用第3章建立的LoanDB数据库,用log1登录,能否操作LoanDB数据库?为什么? 将log1、log2、log3映射为LoanDB数据库中的用户。 用log1登录,能否操作LoanDB数据库?为什么? 授予log1、log2、log3具有对BankT、LegalEntityT、LoanT三张表的查询权。 分别用log1、log2、log3登录,对上述三张表执行查询。 授予log1具有对BankT表的插入、删除权限。 用log2登录,对BankT表插入一行记录,会出现什么情况? 用log1登录,对BankT表插入一行记录,会出现什么情况? (10)在LoanDB数据库中建立用户角色:role1,并将log1、log2添加到此角色中。 (11)让log2具有LoanDB数据库中的全部数据的查询权,比较好的实现方法是什么? (12)如果拒绝role1查询BankT表,则log1、log2、log3是否有权查询BankT表?为什么? 2、请完成下题 新建一个数据库TGDB,然后在SQL Server中创建“SQL Server身份验证”模式的登录帐号:TG_User,其中账户密码为空,默认数据库为Master。并完成如下操作: 让TG_User成为TGDB数据库的合法用户。 在TGDB数据库中建用户自定义角色:MyRole,让TG_User成为MyRole角色中的成员。 用较好的方法授予MyRole在TGDB数据库中具有所有用户表的查询权。 三、实验报告 将实验结果反映在实验报告中,并对实验中遇到的问题及解决方案、进行整理、分析总结,提出实验结论或自己的看法。 数据库备份恢复 2 通过本实验的学生,使学生了解SQL Server的数据库备份方法,具备将SQL Server的数据库进行备份和对数据库备份进行数据恢复的能力。 二、实验内容 创建永久性备份设备:backup1,backup2,两个备份设备均存放在默认路径下。 按顺序完成下列备份操作: 将LoanDB数据库完全备份到backup1上; 对LoanDB数据库中的贷款表中的数据进行一些修改,然后将LoanDB数据库差异备份到backup2上; 在贷款表中插入一行新记录,然后将LoanDB数据库差异备份到backup2上; 在贷款表中插入一行新的记录,然后将LoanDB数据库日志备份到backup2上; 在贷款表中删除一行记录,然后对LoanDB数据库日志备份到文件上(d:\file1.bak); 在贷款表中删除一行记录。 对LoanDB数据库进行恢复恢复顺序是什么样的?如果在恢复之前对数据库进行日志备份,则恢复完成后,第2题第(6)步删除的记录在数据库中存在不?如果在恢复之前不再对数据库进行日志备份,则恢复完成后,第2题第(6)步删除的记录在数据库中存在不? 实验报告 将实验结果反映在实验报告中,并对实验中遇到的问题及解决方案、进行整理、分析总结,提出实验结论或自己的看法。
洛阳理工学院实验报告 "院部 "计算机与信息工程学院 "班级 " " "实验名称 "实验七 备份恢复、事务 "成绩 " " "实验目的: " "1.了解SQL Server的数据备份恢复机制。 " "2.掌握磁盘备份设备的创建和管理。 " "3.掌握各种备份数据库的方法。 " "4.掌握数据库恢复的方法。 " "5.掌握事务的概念及定义事务的方法。 " "实验条件: " "连在局域网中的微机1台、SQL Server 2008 " "实验内容与步骤: " "实现以下操作,并记录操作过程及结果: " "1.定义备份设备 " "创建一个备份设备,其逻辑设备名为:teachings_bak,物理位置为:d:\db_bak " "。(注:以下操作的备份要求建立在该备份设备上。) " "2.简单恢复模式下备份恢复数据库 " "(1)右键选择"teachings"数据库-"属性"-"选项"-"恢复模式"-"简单",将数据 " "库的恢复模式设置为简单恢复模式。回答问题:此时可以执行哪些类型的备份操 " "作? " "只能进行完整和差异备份 " "为teachings数据库创建完全数据库备份。 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "在teachings数据库中,建立一个新表table1,使数据库在完全备份后发生一些变" "化。然后进行差异备份。 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "查看并记录备份设备teachings_bak中有哪些内容。 " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "(5)模拟故障,将teachings数据库删除,然后利用完全备份将其恢复到table1 " "表建立之前。回答问题:当前数据库中是否有table1表? " "(提示:删除数据库后,在"还原数据库"界面中,"常规"选项卡:点击"源设备" " "单选钮,点击其后的选择按钮,选择备份设备teachings_bak,该设备上的所有的" "备份信息将列表显示,从中选择"完整备份")。 " "没有 " "不要删除第(5)题得到的teachings数据库,利用完整备份和差异备份,将teach" "ings数据库恢复到包含table1表的状态。回答问题:当前数据库中是否有table1 " "表? " "有 " "3.完整备份模式下备份恢复数据库 " "(1)右键选择"teachings"数据库-"属性"-"选项"-"恢复模式"-"完整",将数据 " "库的恢复模式设置为"完整"。 " "试试能否建立数据库的日志备份。 " "不能 " "建立teachings数据库的完整备份。 " "(4)在teachings数据库中,建立一个新表table2。然后进行差异备份。 " "(5)在teachings数据库中,建立一个新表table3,然后进行日志备份。 " "(6)建立新表table4。 " "(7)将teachings数据库删除,然后利用完整备份和日志备份还原数据库。查看 " "并记录:当前数据库中有哪些表?哪些表没有被还原? " "有table1,table2,table3,class,course,score,student,teach_class,teacher " "table4没有被还原 " "(8)总结上面的操作,回答下面的问题: " "能否仅用完整备份和事务日志备份恢复数据库? " "不能 " "若在事务日志备份之后没有做新的备份,则事务日志备份之后做的操作能否恢复 " "? " "不能 " "4.事务的使用 " "(1)建立account表:Account(accountId, accountName, " "balance),其中accountID, " "accountName是字符型,balance是int型数据。并向表中插入多于两行的记录。 " "CREATE TABLE account( " "accountID nvarchar(10), " "accountName nvarchar(10), " "balance int " ") " "insert into account values('user1','wang',4500),('user2','zhao',100) " "select * from account " "请补充存储过程p_account的定义,其功能是利用事务,实现转账功能。 " "CREATE PROCEDURE p_account " "@ID_from n

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧