搜档网
当前位置:搜档网 › 数据库恢复手册

数据库恢复手册

数据库恢复手册
数据库恢复手册

1 联机日志文件丢失恢复

1.1 联机日志组成员恢复

联机日志组中的一个或多个成员损坏,在至少保证还有一个同组成员正常使用的情况下恢复已损坏的联机日志文件只需将联机日志组进行clear清空操作即可,步骤如下:

1、确认需要恢复的联机日志组处于inactive状态。

select group#,status from v$log; --查看状态

alter system switch logfile; --执行1-n次直到日志组处于inactive状态

2、clear 日志文件组

alter database clear logfile group group#; --重建日志组

1.2 联机日志组恢复(组中所有成员都损坏)

非当前联机日志组恢复

alter database clear logfile group group#;--重建日志组

当前联机日志组恢复

1、online redo log 备份存在的情况

从备份中恢复丢失的联机日志文件

startup mount

recover database until cancel;

alter database open resetlogs;

2、online redo log 备份不存在的情况

在init.ora中加入如下参数

_allow_resetlogs_corruption=TRUE

startup mount

recover database until cancel;

alter database open resetlogs;

采用这种方式数据库虽然可以启动,但是处于数据不一致状态,所以要将数据

库export后重建,才可以保证以后数据库正常运行。

2 控制文件恢复

2.1 某一镜像控制文件丢失

在数据库关闭的情况下

用操作系统命令复制好的控制文件覆盖损坏的控制文件

重新启动数据库

2.2 控制文件全部丢失

startup nomount

在internal或sys下运行如下创建控制文件的脚本,恢复最后一次修改数据库结构后备份的控制

文件或修改由alter database backup control file to trace备份控制文件时产生的脚本,去掉多余的

注释,通过CREATE CONTROLFILE…重新创建控制文件即可。

startup mount

recover database until cancel; --恢复数据库

alter database open resetlogs; --打开数据库,并重置日志文件

3 临时表空间恢复

临时表空间并不包含真正的数据,恢复的方法是删除临时表空间并重建。

方法1:删除临时文件,再重新添加

exp:

--删除temp tablespace 中的temp file

alter database tempfile'D:\oracle\oradata\test\temp01.dbf'drop;

--添加temp file 到 temp tablespace

alter tablespace temp add tempfile'D:\oracle\oradata\test\temp01.dbf'size400m reuse;

方法 2: 重新创建临时表空间

exp:

--创建一个新的temp tablespace

create temporary tablespace temp2 tempfile ‘D:\oracle\oradata\test\temp2_01.dbf' size 200M;

--确认要删除的临时表空间是否是默认临时表空间(9i)

select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';

-- 更换default temp tablespace (9i)

alter database default temporary tablespace temp2;

--将临时表空间为temp的用户的临时表空间修改成temp2;

alter user sys temporary tablespace temp2;

alter user system temporary tablespace temp2;

………

-- 删除表空间temp;

drop tablespace temp;

备注:

--通过如下语句确认临时表空间的使用情况

select username,tablespace from v$sort_usage;

--确认临时表空间数据文件信息

select file_name,tablespace_name,bytes/(1024*1024),status from dba_temp_files

4 UNDO表空间恢复

5 参数文件恢复

参数文件是数据库启动第一步到nomount状态时所需要的文件,如果参数文件丢失则无法启动数据库。参数文件是简单的文本文件或二进制文件,参数文件的恢复比较简单。

参数文件的存放路径:

UNIX系统存放在 $ORACLE_HOME/dbs

WINDOWS NT系统存放在 $ORACLE_HOME\database

从参数文件备份中恢复

从以前的参数文件备份中恢复init.ora文件到相应目录下即可。

从pfile恢复spfile

oracle 9i以上版本可以使用 create pfile from spfile 命令备份spfile到pfile,

当spfile丢失时,可以通过create spfile from pfile来恢复spfile,然后启动

数据库,或使用pfile直接启动数据库 STARTUP PFILE =

/u01/oracle/dbs/init.ora。安全的完整操作如下:

sqlplus /nolog

conn /as sysdba --连接到数据库

startup pfile= /u01/oracle/dbs/init.ora –-确定pfile可以正常的启动数据

库(pfile的路径根据实际情况而定)

create spfile from pfile –-正常启动后利用pfile 创建spfile

shutdown immediate –关闭数据库

startup --再次启动数据库,这时数据库会默认使用spfile启动

6 口令文件恢复

在数据库没有启动之前,数据库内建用户是无法通过数据库来验证身份的,而口令文件中存放sysdba/sysoper用户的用户名及口令允许用户通过口令文件验证,在数据库未启动之前登陆从而启动数据库。

如果没有口令文件,在数据库未启动之前就只能通过操作系统认证.

所以通常要求sysdba权限如果属于本地DBA组,可以通过操作系统认证登陆.

当remote_login_passwordfile = NONE

此时停用口令文件验证,Oracle数据库不允许远程SYSDBA/SYSOPER身份登录

无法通过远程进行数据库起停等操作管理.

如果是远程sysdba登陆,需要通过passwordfile认证。要启动使用口令文件确保remote_login_passwordfile值是EXCLUSIVE 或shared.

如果口令文件丢失可以使用orapwd可以重建口令文件,语法如下:

[oracle@jumper oracle]$ orapwd

Usage: orapwd file= password= entries=

where

file – passwordfile 文件名 (必须),

password –为SYS用户设置密码(必须),

entries –指定密码文件可以接受的登陆个数(可选)

7 用户表空间数据文件损坏恢复

7.1 数据文件、归档文件备份存在的情况

数据库在归档模式下,归档文件没有丢失的情况下,某个表空间的数据文件损坏可以得到完全的恢复。恢复的步骤如下:

1、alter database datafile '/oracle/TEST/sapdata7/test.dbf' offline; –-将数据文件脱机

2、从以前的数据文件备份中恢复损坏的数据文件

3、recover datafile '/oracle/TEST/sapdata7/test.dbf' ; --完全恢复数据文件

4、alter database datafile '/oracle/TEST/sapdata7/test.dbf' online; --将数据文件联机7.2 仅有归档文件存在的情况

在拥有数据文件创建以来所有的归档日志文件,但是没有数据文件的备份的情况下,也可以恢复数据文件,步骤如下:

1、alter database datafile '/oracle/TEST/sapdata7/test.dbf' offline; --将数据文件脱机

2、alter database create datafile '/oracle/TEST/sapdata7/test.dbf';--创建数据文件

3、recover datafile '/oracle/TEST/sapdata7/test.dbf ';--恢复数据文件

4、alter database datafile '/oracle/TEST/sapdata7/test.dbf ' online; 将数据文件联机

8 系统表空间数据文件恢复

数据库在归档模式下,归档文件没有丢失的情况下,系统表空间的数据文件损坏可以得到完全的恢复。恢复的步骤如下:

1、startup mount; --启动数据库到mount状态

2、从备份中恢复损坏的系统表空间文件

3、recover datafile 'D:\ORACLE\ORADATA\TEST\SYSTEM01.DBF'; --恢复数据文件

4、alter database open;-- 打开数据库

9 数据库不完全恢复

10 IMP恢复数据

第10章 数据库恢复技术

一、单项选择题 1. 在DBMS中实现事务持久性的子系统是( )。 A.安全管理子系统 B.完整性管理子系统 C.并发控制子系统 D.恢复管理子系统 [参考答案] 恢复管理子系统 2. 后援副本的作用是( )。 A.保障安全性 B.一致性控制 C.故障后的恢复 D.数据的转储 [参考答案] 故障后的恢复 3. 事务日志用于保存( )。 A.程序运行过程 B.程序的执行结果 C.对数据的更新操作 D.数据操作 [参考答案] 对数据的更新操作 4. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括( )。 A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、审计档案、日志文件 C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本 [参考答案] 日志文件、数据库后备副本 5. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为( )。 A.介质故障 B.运行故障 C.系统故障 D.事务故障 [参考答案] 介质故障 6. SQL语言中用( )语句实现事务的回滚。 A.CREATE TABLE B.ROLLBACK C.GRANT和REVOKE https://www.sodocs.net/doc/903279705.html,MIT [参考答案] ROLLBACK

7. SQL语言中的COMMIT语句的主要作用是( )。 A.结束程序 B.返回系统 C.提交事务 D.存储数据 [参考答案] 提交事务 8. 事务的持续性是指( )。 A.事务中包括的所有操作要么都做,要么都不做; B.事务一旦提交,对数据为的改变是永久的; C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的; D.事务必须是使数据库从一个一致性状态变到另一个一致性状态; [参考答案] 事务一旦提交,对数据为的改变是永久的; 9. 表示两个或多个事务可以同时运行而不互相影响的是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 隔离性 10. 一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是( )。 A.原子性 B.一致性 C.隔离性 D.持久性 [参考答案] 原子性 二、填空题 1. 数据库系统在运行过程中,可能会发生故障。故障主要有事务故障、( )、介质故障和( )四类。 [参考答案] 系统故障计算机病毒 2. ( )是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。 [参考答案] 事务 3. 若数据库中只包含成功事务提交的结果,则此数据库就称为处于( )状态。 [参考答案] 一致 4. ( )用来记录对数据库中数据进行的每一次更新操作。 [参考答案] 日志文件

SQL数据库的备份、还原、压缩与数据转移的方法.

当前,全国各级审计机关普遍应用AO系统进行现场审计,但由于被审计单位使用的财务软件种类太多,AO系统不可能提供全部财务软件数据导入模板,虽然AO现场审计实施系统2008版比2005版在模板数量上有所增加,但仍然不能完全解决各级审计机关在实际审计工作遇到的数据导入难题,只能通过后台备份数据库,然后还原到审计人员电脑中进行处理后,再一步一步导入AO中。由于审计人员大部分非计算机专业,对数据库的基本操作了解不是很多,无形中影响了计算机辅助审计的开展。为此,笔者分析了大量的被审计单位的财务系统后台数据库,其中大部分财务软件使用了SQL作为后台数据库,因此总结了SQL数据库的备份、压缩与SQL数据库数据处理的方法,供审计人员在审计工作中借鉴使用。 一、备份数据库1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server 2、SQL Server组——>双击打开你的服务器——>双击打开数据库目录3、选择你的数据库名称(如财务数据库cwdata)——>然后点上面菜单中的工具——>选择备份数据库4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后点添加,如果原来没有路径和名称则直接选择添加,接着指定路径和文件名,指定后点确定返回备份窗口,接着点确定进行备份。二、还原数据库1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server;2、SQL Server组——>双击打开你的服务器——>点图标栏的新建数据库图标,新建数据库的名字自行取; 3、点击新建好的数据库名称(如财务数据库cwdata)——>然后点上面菜单中的工具——>选择恢复数据库; 4、在弹出来的窗口中的还原选项中选择从设备——>点选择设备——>点添加——>然后选择你的备份文件名——>添加后点确定返回,这时候设备栏应该出现您刚才选择的数据库备份文件名,备份号默认为1(如果您对同一个文件做过多次备份,可以点击备份号旁边的查看内容,在复选框中选择最新的一次备份后点确定)——>然后点击上方常规旁边的选项按钮; 5、在出现的窗口中选择在现有数据库上强制还原,以及在恢复完成状态中选择使数据库可以继续运行但无法还原其它事务日志的选项。在窗口的中间部位的将数据库文件还原为这里要按照你SQL的安装进行设置(也可以指定自己的目录),逻

DBCC CHECKDB 数据库或表修复

DBCC CHECKDB 数据库或表修复 MS Sql Server 提供了很多数据库修复的命令,当数据库质疑或是有的无法完成读取时可以尝试这些修复命令。 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 use master declare @databasename varchar(255) set @databasename='需要修复的数据库实体的名称' exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态 然后执行DBCC CHECKDB('需要修复的数据库实体的名称') 检查数据库是否仍旧存在错误。注意:修复后可能会造成部分数据的丢失。 2. DBCC CHECKTABLE 如果DBCC CHECKDB 检查仍旧存在错误,可以使用DBCC CHECKTABLE来修复。 use 需要修复的数据库实体的名称 declare @dbname varchar(255) set @dbname='需要修复的数据库实体的名称' exec sp_dboption @dbname,'single user','true' dbcc checktable('需要修复的数据表的名称',REPAIR_ALLOW_DATA_LOSS) dbcc checktable('需要修复的数据表的名称',REPAIR_REBUILD) ------把’ 需要修复的数据表的名称’更改为执行DBCC CHECKDB时报错的数据表的名称exec sp_dboption @dbname,'single user','false'

数据库备份与恢复流程

数据库备份与恢复流程 本文档分为三个部分:一、数据库备份;二、数据库恢复;三、数据库修复。 一、数据库备份 在年度汇总填报工作中,数据的存储地点数据库担当着重要的角色。【人事汇总填报系统】为用户制定了详细的数据库备份与灾难恢复策略,确保数据的高可用性。 发生事故后,系统支持进行数据库恢复与修复,但是数据库备份是数据库恢复与修复的前提。因此,数据库备份是非常重要的系统数据管理环节。 数据库备份的步骤如下: 1、单击【汇总填报】按钮进入人事汇总填报系统。 2、点击【常用工具】子菜单【数据库备份】,如图: 3、进入数据库备份页面,单击【开始备份导出】按钮,系统将进行整库备份。如图: 4、中间列表会展示备份过程信息。如图: 5、备份完成后,单击备份文件下载地址,将文件保存在您的电脑里,完成数据备份。 6、注意:备份文件带有备份日期,如下图。如果您想要进行数据库恢复,在导入该文件时一定要注意数据的备份日期,以免造成数据恢复错误。

二、数据库恢复 在对数据库应用的过程中,人为误操作、人为恶意破坏、系统的不稳定、存储介质的损坏等等原因,都有可能造成重要数据的丢失。因此,软件为用户提供了【数据库恢复】菜单。 数据库恢复实际上就是利用技术手段把不可见或不可正常运行的数据文件恢复成正常运行的过程。数据库备份是数据库恢复的前提。注意:备份文件带有备份日期,如果您想要进行数据库恢复,在导入该文件时一定要注意数据的备份日期,以免造成数据恢复错误。 数据库恢复的步骤如下: 1、单击【汇总填报】按钮进入人事汇总填报系统。 2、点击【常用工具】子菜单【数据库恢复】,如图: 3、通过视图区下部的省略号在电脑中选择已备份的数据文件,点击【上传】: 4、压缩包的内容会展示在左侧数区域,选择需要导入的数据,再单击【导入】按钮,在中间导入区域会显示导入过程,等待导入完成即可完成恢复。如下图: 三、数据库修复 当系统遭遇停电等异常状况而引起数据库损坏时,您可以使用数据库修复功能修复您的数据。操作流程如下: 1、单击【汇总填报】按钮进入人事汇总填报系统。 2、点击【常用工具】子菜单【数据库修复】,如图:

SQL数据库图书管理系统(完整代码)

作品设计报告书题目:《图书管理系统》 班级网络2012-1班 学号 姓名 课程名称数据库应用技术 指导教师

目录

数据库课程设计报告书 一、设计目标 1.掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织 和实施。 2.关系型数据库管理系统的编程技术,并能独立完成一般小系统的程序设计、调试 运行等工作。 3.培养把所学知识运用到具体对象,并能求出解决方案的能力。 二、数据库存储设计指导思想 在数据库存储设计的无数选择中,简单是系统架构师和DBA 的秘密武器。 简单,有时候就来自于对一个特定的表或表空间没有选择最优I/O 特性,总有这么一种可能,一个富有经验的DBA 拥有高超的存储技能并可以没有时间限制的去为一个非常重要的表或者索引配置一个存储。然而这样做的问题是,就算能达到设计的最佳性能,为了维护原始对象,这也经常造成对一个系统的管理变得更加复杂。好的数据库存储设计的要点是,在一个动态系统上,实现所有目标应该是最初的系统设计的一部分,并应该在数据库运行过程中长期进行。这篇文档简单的最佳实践描述达到了这些目标并且几乎没有性能损失。 三、任务 角色:读者、图书馆馆员、系统管理员;基础数据:读者信息、图书信息、操作员信息;业务数据:借还书记录登记、罚款登记;统计数据:书籍借阅情况统计或读者借阅情况统计。基本要求:利用数据库技术,完成基础数据和业务数据的储存和操作,数据库设计合理1.设计报告:含E-R图、数据字典、关系模式、关系实例、查询描述、关系代数、SQL 实现的查询语言及查询结果。 2.上机实现。

1.问题描述 1.1背景 随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。 另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。 提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。 1.2数据需求 图书馆管理信息系统需要完成功能主要有: 1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。 2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。 3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。 4.书籍类别信息的查询、修改,包括类别编号、类别名称。 5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。 6.书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。 7.借书信息的输入,包括读者借书证编号、书籍编号、借书日期。 8.借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。 9.还书信息的输入,包括借书证编号、书籍编号、还书日期。 10.还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。 11.超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

王珊《数据库系统概论》课后习题(数据库恢复技术)【圣才出品】

第10章数据库恢复技术 1.试述事务的概念及事务的四个特性。恢复技术能保证事务的哪些特性? 答:(1)事务是用户定义的一个数据库操作序列,是一个不可分割的工作单位。事务具有4个特性:原子性、一致性、隔离性和持续性。这4个特性也简称为ACID特性。 ①原子性:事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。 ②一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。当数据库只包含成功事务提交的结果时,就说数据库处于一致性状态。 ③隔离性:一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 ④持续性:持续性指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的,接下来的其他操作或故障不应该对其执行结果有任何影响。 (2)恢复技术保证了事务的原子性、一致性和持续性。 2.为什么事务非正常结束时会影响数据库数据的正确性?请举例说明。 答:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。 例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。则可以定义一个事务T,T包括两个操作:Q1=Q1-Q,Q2=Q2+Q。如果T非正常终止

时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。 3.数据库中为什么要有恢复子系统?它的功能是什么? 答:因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失。为保证数据一致性,需要清除这些事务对数据库的所有修改,因此必须要有恢复子系统。 恢复子系统的功能是把数据库从错误状态恢复到某一已知的正确状态,也称为一致状态或完整状态。 4.数据库运行中可能产生的故障有哪几类?哪些故障影响事务的正常执行?哪些故障破坏数据库数据? 答:数据库系统中可能发生各种各样的故障,大致可以分四类: 事务内部的故障,事务内部的故障是指事务没有达到预期的终点。 系统故障,系统故障是指造成系统停止运转的任何事件,使得系统要重新启动。 介质故障,是指外存故障,如磁盘损坏、磁头碰撞,瞬时强磁场干扰等。 计算机病毒,计算机病毒是指一种人为的故障或破坏。 事务故障、系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏数据库数据。 5.数据库恢复的基本技术有哪些? 答:数据库恢复的基本技术包括数据转储和登录日志文件。

数据库恢复子系统设计报告

数据库恢复子系统设计报告 恢复机制涉及的两个关键问题:一是如何建立冗余数据;二是如何利用这些冗余数据实施数据恢复,建立冗余数据最常用的技术是数据转储和登录日志文件。 数据转储是数据库恢复中采用的基本技术。转储可分为静态转储和动态转储。静态转储是在系统中无运行事务时进行的转储操作。动态转储是指转储期间允许对数据库进行存取或修改。日志文件是用来记录事务对数据库的更新操作的文件,主要的两种格式:以记录为单位的日志文件和以数据块为单位的日志文件。 当系统运行过程中发生故障,利用数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。所以,在转储期间必须建立日志文件,把各事务对数据库的修改活动登记下来。当数据库毁坏后就可重新装入后援副本把数据库恢复到转储结束时刻的正确状态,然后利用日志文件,把已完成的事务进行重做处理,对故障发生时尚未完成的事务进行撤销处理。这样不必重新运行那些已完成的事务程序就可把数据库恢复到故障前某一时刻的正确状态。 当发生事务故障时,恢复子系统应利用日志文件撤销此事务已对数据库进行的修改。首先,反向扫描日志文件,查找该事务的更新操作。接着对该事务的更新操作执行逆操作。然后继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。如此处理下去,直至读到此事务的开始标记,事务故障恢复就完成了。 当发生系统故障时,恢复操作就是撤销故障发生时未完成的事务,重

做已完成的事务。首先要正向扫描日志文件,找出在故障发生前已经提交的事务,将其事务标识记入重做队列。同时找出故障发生时尚未完成的事务,将其事务标志记入撤销队列。接着对撤销队列中的各个事务进行撤销处理。对重做队列中的各个事务进行重做处理。 当发生介质故障时,恢复方法是重装数据库,然后重做已完成的事务,介质故障的恢复需要DBA介入。但DBA需重装最近转储的数据库副本和有光的各日志文件副本,然后执行系统提供的恢复命令即可。

SQL数据库系统期末试题

. 蚌埠学院2013—2014学年第一学期 《SQL 数据库系统》期末考试试题(A ) 注意事项:1、适用班级:11计算机科学与技术(本1、本2、本3班) 2、本试卷共2页。满分100分。 3、考试时间120分钟。 4、考试方式:闭卷 一、选择题(每小题1分,共25分) 1、在SQL SERVER 中,使用update 语句更新数据库表中的数据,以下说法正确的是( b )。 (A )每次只能更新一行数据 (B )每次可以更新多行数据 (C )如果没有数据项被更新,将提示错误信息 (D )更新数据时,必须带有WHERE 条件子句 2、在SQL Server 2008中,要防止大于100的数据被保存到int 类型的列,可以使用( d )。 (A )主键约束 (B )限制约束 (C )外键约束 (D )检查约束 3、在SQL Server 2008 中,有students(学生)表,包含字段:Sid(学号),SName(姓名),Grade(成绩)。现要将所有学员的成绩加10分。下列SQL 语句正确的是( d )。 (A )update students set Grade=Grade+10 where Sid=1 (B )update * set Grade=Grade+10 (C )update * from students set Grade=Grade=Grade+10 (D )update students set Grade=Grade+10 4、在SQL Server 2008 中,有一个product(产品)表,包含子段:pname(产品名称),要从此表中筛选出产品名称为“苹果”或者“香蕉”的记录,下列语句正确的是( c )。 (A ) SELECT*FROM product ON pname=’苹果’OR pname=’香蕉’ (B ) SELECT*FROM product ON pname=’苹果’ AND pname=’香蕉’ (C ) SELECT*FROM product WHERE pname=’苹果’ OR pname=’香蕉’ (D ) SELECT*FROM product WHERE pname=’苹果’ AND pname=’香蕉’ 5、在SQL Server 2008中,附加数据库操作是指( b )。 (A )把SQL Server 数据库文件保存为其他数据库文件。 (B )根据数据库物理文件中的信息,把数据库在SQL Server 2008中恢复。 (C )把所有该数据库表的数据清空。 (D )把数据库删除掉。 6、在SQL Sever 2008中,假设表 users 包含主键列 id ,那么执行“Update users SET id=20 WHERE id=30”,执行的结果可能有( c )。 (A )如果表中含有id 为30的记录,但不包含id 为20的记录,则更新失败。 (B )执行出错,因为主键列不可以被更新。 (C )如果表中同时含有id 为20和id 为30的记录,则更新失败。 (D )如果表中不包含id 为20 和id 为30 的记录,则更新一行记录。 7、在SQL Sever 2008中,查找 student 表中所有身份证号码CardNo 的前三位为010或020的记录,以下语句正确的是( c )。 (A )select * from student where cardno like ‘010%’ and cardno like ‘020%’ (B )select * from student where cardno like ‘010%’ or ‘020%’ (C )select * from student where cardno like ‘0[1,2]0%’ (D )select * from student where cardno like ‘0(1,2)0%’ 8、在SQL Sever 2008中,学生表student 中包含以下字段:学生编号 sid (主键),学生姓名 sName ,现在查询所有姓名重复的记录,以下语句正确的是( b )。 (A )select * from student where count(sid)>1 (B )select a. * from student a, student b where a.sname=b.sname (C )select a.* from student a, student b where a.sname=b.sname and a.sid<>b.sid (D )select * from student group by sName where count(sid)>1 9、在SQL Sever 2008 中,有系统数据库和用户数据库,下列不属于系统数据库的是( d )。 (A ) master (B ) model (C ) msdb (D ) pubs 10、在SQL Server 2008中,外键用于将一个表中的列与另一表中的列关联起来,为了确保引用的完整性,要求( a )。 装 订 线 内 不 要 答 题

SQL Server数据库的MDF文件修复和恢复方法

SQL Server数据库的MDF文件修复和恢复方法 实际上,我们经常会遇到数据库恢复或修复的问题,下面我们来讲讲方法: 首先:如果备份的数据库有两个文件,分别是.LDF 和.MDF,打开企业管理器,在实例上右击---所有任务--附加数据库,然后选择那个.MDF文件,就可以了。 或者在查询分析器中输入: sp_attach_db "数据库名称","路径\文件名.ldf","路径\文件名.MDF" SQL Server数据库备份有两种方式,一种是使用BACKUP DA TABASE将数据库文件备份出去,另外一种就是直接拷贝数据库文件mdf和日志文件ldf的方式。下面将主要讨论一下后者的备份与恢复。本文假定您能熟练使用SQL Server Enterprise Manager(SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器)。 1.正常的备份、恢复方式0 正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。 卸下数据库的命令:Sp_detach_db 数据库名连接数据库的命令:Sp_attach_db或者sp_attach_single_file_dbs_attach_db [@dbname =] 'dbname', [@filename1 =] 'filename_n' [,...16]sp_attach_single_file_db [@dbname =] 'dbname', [@physname =] 'physical_name' 使用此方法可以正确恢复SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。 例子: 假设数据库为test,其数据文件为test_data.mdf,日志文件为test_log.ldf。下面我们讨论一下如何备份、恢复该数据库。 卸下数据库:sp_detach_db 'test'连接数据库:sp_attach_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf'sp_attach_single_file_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf'

MySQL数据库系统及应用综合练习

一、单项选择题(只有一个正确答案) 【1】执行语句“SELECT '2008-01-20'+ INTERVAL 2 DAY; ”结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】下列哪个是不正确的MySQL的变量命名方式 A: _name B: n$ame C: name D: name! 答案: D 【3】字符串‘hel’lo’输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】使用下列哪个语句可以删除表中所有数据,但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6】E-R图设计属于()。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计 答案: B 【7】执行语句“GREATEST(10,9,128,1)”结果为()。 A: 9

B: 10 C: 128 D: 1 答案: C 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称为()。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10】1999年10月1日在mysql中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11】两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12】向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】\n在MySQL中表示 A: " B: 退格符 C: 回车符

SQL SERVER2000数据备份与恢复

SQL Server2000数据备份与恢复 Author looger 1.数据库备份 1.1展开服务器组,然后展开服务器。展开“数据库”文件夹,右击数据库,指向“所 有所有”子菜单,然后单击“备份数据库”命令。 1.2在“名称”框内输入备份集名称,在“描述”框中输入对备份集的描述。在“备 份”选项中选择备份方式。

1.3点击“添加”按钮以添加现有的目的地或创建新的目的地,点击按钮可以选择一个备份文件

1.4点击按钮后,在下面出现的窗口中选择一个文件作为备份文件,可以在“文件名” 后面的文本框中输入一个新的文件名以创建一个备份文件。 1.5此时刚才选择的文件被加入到备份文件中。如果要添加其他的文件,则可以点击“添 加”按钮添加其他的文件。在"重写"选项下,单击“追加到媒体”,将备份追加到备份设备上任何现有的备份中;点击“重写现有媒体”,将重写备份设备中任何现有的备份

1.6可以选择“调度”复选框调度备份操作在以后执行或定期执行。点击“调度”后 面的按钮可以对调度进行设置 1.7在点击按钮后,可以在下面的对话框中设置调度的名称和调度的类型。如果需要调 度反复出现,则可以点击“更改”按钮

1.8点击“更改”按钮后,可以在下面的窗口中设置作业发生的时机 1.9单击“选项”选项卡。选择“完成后验证备份”复选框,在备份时对备份进行验 证。选择“检查媒体集名称和备份集到期时间”,检查备份媒体以防意外重写。在“媒体集名称”框中,输入将用于备份操作的媒体的名称。如果仅指备份集到期时间,则将其保留为空

2.数据库的恢复 2.1展开服务组,然后展开服务器。展开“数据库”文件夹,右击数据库, 指向“所有任务”子菜单,然后单击“还原数据库”命令 2.2在“还原为数据库”框中,如果要还原的数据库名称与显示的默认数据库名称不同,请在其中进行输入或选择。若要用新名称还原数据库,请输入新的数据库名称

数据库恢复方法

1.备份文件恢复的几点注意事项 在用备份文件恢复数据库的时候,如果遇到路径错误的时候,可以有以下几种解决方案:1.在sqlserver的企业管理器中更改恢复的路径到一个已经存在的路径(推荐); 2.在机器上按照备份文件的提示建立相应的路径(推荐); 3.用编辑器更改备份文件内的路径到一个已经存在的路径(不推荐); 2.拷贝的数据库文件的恢复方法 在SQL Server 7中由于MS重新设计了数据库文件的存储方式,取消了新建设备再建数据库这一繁琐的过程。新的存储格式,一个数据库包括两个文件,mdf数据库文件和ldf日志文件。所以我们在重装机器备份时可以把你要备份的数据库的这两个文件拷贝出来,重新安装之后再恢复。 在SQL Server中提供了这种恢复方式的存储过程。 1.sp_attach_db [@dbname =] 'dbname',[@filename1 =] 'filename_n' 给系统添加一个数据库,在dbname指定数据库名称,filename_n指定数据库的文件和日志文件。比如我有一个voogiya的库,停止SQL Server服务备份voogiya_data.mdf,voogiya_log.ldf,启动SQL server,删除掉这个库,然后再把这两上文件拷到sql server DA TA目录中,在Query Analyzer中执行如下语句: EXEC sp_attach_db @dbname = N'voogiya', @filename1 = N'd:\mssql7\data\voogiya_data.mdf', @filename2 = N'd:\mssql7\data\voogiya_log.ldf' 就会把这个库加入到SQL Server Group中. 2.sp_attach_single_file_db [@dbname =] 'dbname', [@physname =] 'physical_name' 这个命令和上面的功能一样,在physical_name中只要写上据库的物理文件名就可以了,日志文件SQL server会重新建立。这个存储过程的运行要先执行下面的存储过程: sp_detach_db @dbname = 'dbname' 同样以上面的为例: EXEC sp_detach_db @dbname = 'voogiya' EXEC sp_attach_single_file_db @dbname = 'voogiya', @physname = 'd:\mssql7\data\voogiya_data.mdf' 要注意执行以上存储过程的用户要在sysadmin中. 缺点:会把原来数据库所带的用户也一同恢复,成为你的sqlserver中的孤立用户,不过不影响使用。

SQL数据库管理系统 A

绝密★启用前学院 学年第二学期期末考试 级专业()《SQL数据库管理系统》试卷A 一、选择题(共20分,每题1分) 1、SQL-server数据库文件的扩展名为()。 A、.ndf B、.ldf C、.mdb D、.mdf 2、数据库文件初始大小,在SQL- server 2000 中默认值为()。 A、1MB B、2MB C、3MB D、4MB 3、SQL- server 2000辅助数据库文件的扩展名为()。 A、.ldf B、.ndf C、.mdb D、.mdf 4、创建用户数据库的Transact-SQL命令是()。 A、create table B、create C、create database D、drop 5、使用Transact-SQL语句创建数据库时,()关键字是用于指定数据库的事务日志文件。 A、log on B、primary C、filename D、filegrowth 6、在SQL中,create table为( )数据库中基本表结构的命令。 A、建立 B、修改 C、删除 D、查询 7、在SQL中,alter table为( )数据库中基本表结构的命令。 A、建立 B、修改 C、删除 D、查询 8、Microsoft公司的SQLServer2000数据库管理系统一般只能运行于( )。 A、Windows平台 B、UNIX平台 C、LINX平台 D、NetWare平台 9、SQLServer2000标准版不支持的操作系统是( )。 A、Windows 2000 Server B、Windows NT Server C、Windows98 D、Windows 2000 Advanced Server 10、在SQL Server2000中.( )为用户建立数据库提供模板。 A、master B、model C、tempdb D、msdb 11、SQL Server系统中的所有系统级信息存储于哪个数据库( )。 A、master B、model C、tempdb D、msdb 12、下列语句中正确的是()。表 score(sti_id,names,math,English,VB) A、select stu_id,sum(math) from score B、select sum(math),avg(VB) from score C、select * ,sum(english) from score D、delete * from score 13、表设计器的“允许空”单元格用于设置该字段是否可输入空值,实际上就是创建该字段的() 约束。 A、主键 B、外键 C、NULL D、CHECK 14、在Transact-SQL语句中,用以修改数据库结构的命令是()。 A、create database B、drop database C、alter database D、alter table 15、在Transact-SQL语句中,用以删除数据库的命令是()。 A、create database B、drop database C、alter database D、drop table 16、整数数据类型int的存储大小为()。 A、1B B、2B C、3B D、4B 17、money型数据的存储大小为()。 A、2B B、4B C、8B D、10B 18、SQL-server数据库中每个表至多可以有()列。 A、1024 B、512 C、256 D、65536 19、数据表的名称最长不超过()个字符。 A、64 B、128 C、256 D、512 20、每个表允许存在()个住键约束。 A、1 B、2 C、3 D、4 二、填空题(共20分,每空1分) 1、数据库系统由__________和__________________两部分组成。 2、在SQL中,主码约束的关键字为__________,外码约束的关键字为____________。 3、数据库管理系统的基本功能包括____________、____________、____________和___________。 4、数据完整性可以分为____________、___________、____________和用户自定义完整性。 5、在SQL中,create view、update和drop view命令分别为_______、_______和_______视图的 命令。 6、在新版的SQL中,表之间的连接共有三种方式,对应的关键字分别为_____________、 ______________和right join。 7、SQL Server采用的结构化查询语言称为__________________。 8、一般可以使用______命令来标识 Transact-SQL批处理的结束。 9、SQL Server中的整数类型包括bigint、________、___________和tinyint四种。 三、简答题(共20分,每个5分) 1、SQL-server注释语句有哪几种符号?各用于什么情况? 2、简述索引的分类。 3、什么叫存储过程?存储过程分为哪三类?

MS (DBCC CHECKDB)Sql Server 数据库或表修复

MS Sql Server 数据库或表修复(DBCC CHECKDB) MS Sql Server提供了很多数据库修复的命令,当数据库质疑或是有的无法完成读取时可以尝试这些修复命令。 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 use master declare @databasename varchar(255) set @databasename='需要修复的数据库实体的名称' exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态然后执行DBCC CHECKDB('需要修复的数据库实体的名称') 检查数据库是否仍旧存在错误。注意:修复后可能会造成部分数据的丢失。 2. DBCC CHECKTABLE 如果DBCC CHECKDB 检查仍旧存在错误,可以使用DBCC CHECKTABLE来修复。 use 需要修复的数据库实体的名称 declare @dbname varchar(255) set @dbname='需要修复的数据库的名称' exec sp_dboption @dbname,'single user','true' dbcc checktable('需要修复的数据表的名称',REPAIR_ALLOW_DATA_LOSS) dbcc checktable('需要修复的数据表的名称',REPAIR_REBUILD) ------把’ 需要修复的数据表的名称’更改为执行DBCC CHECKDB时报错的数据表的名称exec sp_dboption @dbname,'single user','false'

数据库备份与恢复技术

Oracle数据库备份与恢复技术 Oracle是一个适合于大中型企业的数据库管理系统,它主要应用于:银行、电信、移动通信、航空、保险、金融、跨国公司、和电子商务等。备份与恢复是数据库管理中最重要的方面之一。如果数据库崩溃却没有办法恢复它,那么对企业造成的毁灭性结果可能会是数据丢失、收入减少、客户不满等。不管公司是使用单个数据库还是多个数据库来存储数百GB 或TB 的数据,它们都有一个共同点,即需要制订一个备份与恢复方案来备份重要数据并使自身免于灾难,将损失尽量降低到最小。 备份与恢复概述 备份是数据的一个代表性副本。该副本会包含数据库的重要部分,如控制文件、重做日志和数据文件。备份通过提供一种还原原始数据的方法保护数据不受应用程序错误的影响并防止数据的意外丢失。备份分为物理备份和逻辑备份。物理备份是物理数据库文件的副本。“备份与恢复”通常指将复制的文件从一个位置转移到另一个位置,同时对这些文件执行各种操作。 相比而言,逻辑备份包含使用SQL 命令导出并存储在二进制文件中的数据。Oracle 在重做日志缓冲区中记录提交的和未提交的更改。逻辑备份用于补充物理备份。还原物理备份意味着重建它并将其提供给Oracle 服务器。要恢复还原的备份,需要使用事务日志中的重做记录来更新数据。事务日志记录在执行备份之后对数据库所做的更改。 Oracle 在例程故障之后自动执行崩溃恢复和实例恢复。在出现介质故障的情况下,数据库管理员(DBA) 必须启动恢复操作。恢复备份涉及两种不同的操作:通过应用重做数据将备份前滚至一个较近的时间;将在未提交的事务中所做的所有更改回滚至其原来状态。一般而言,恢复指在还原、前滚和回滚备份中涉及的各种操作。备份与恢复指在防止数据库丢失数据和在丢失数据时重建数据库的过程中涉及的各种策略和操作。 备份与恢复操作 备份是数据文件、表空间或某个时间点的数据库等的快照。如果对数据库进行了周期性备份,则在数据丢失时用户可以将存储的重做信息应用到他们最新的备份中,从而恢复数据库的当前状态。Oracle 使用户能够还原一个较早的备份和仅应用某些重做数据,从而将数据库恢复到一个较早的时间点。这种恢复称为不完全介质恢复。如果备份是一致的,那么根本不需要用户应用任何重做数据。 下面用介质恢复的一个简单例子来解释一下这个概念。假定用户在中午为数据库作了一个备份。从中午开始,每一分钟对数据库进行一次更改。在下午 1 点时,一个磁盘驱动器出现故障,导致那个磁盘上的所有数据丢失。幸运的是,Oracle 在重做日志中记录了所有更改。则用户可以将中午的备份还原到一个正常运转的磁盘驱动器上,使用重做数据将数据库恢复到下午1 点,从而重建丢失的更改。 备份与恢复策略要素 尽管备份与恢复操作非常复杂并随因企业而异,但基本原则均遵循这四个简单的步骤:

相关主题