《数据库管理与维护.ppt》由会员分享,可在线阅读,更多相关《数据库管理与维护.ppt(24页珍藏版)》请在三一办公上搜索。
1、5.3数据库管理与维护,5.3.1 数据的安全维护 安全机制是系统中一项重要内容,由于数据是整个系统的核心,系统的安全性主要考虑保证数据的安全性,在系统建设中,主要采用的安全措施:(1)建立数据安全管理制度 在国家和相关部委已有的数据安全管理法律法规的基础上,结合数字城市空间基础数据库建设、更新和使用的实际,建立行之有效的数据安全管理制度。,(2)保证数据被合法使用设置用户的的身份和权限来达到数据安全访问的目的。文件方式存储的图形数据:用操作系统的文件和目录权限设定来达到要求,包括拒绝访问、只读、只写、读写等关系数据库存储的数据:通过关系数据库系统软件的安全机制来控制数据库、表的操作权限设定来
2、达到数据合法使用的目的,包括对整个数据库的访问;对数据库中某个或多个表的访问等。用户类型:普通用户:只能通过应用程序查询相关数据数据管理员:对数据进行完全控制,具有数据更新、备份、删除、分配权限等功能未授权的用户拒绝访问系统中的数据。,5.3.2 数据的备份数据库的联机重做日志,记录对数据库所做的修改操作 数据库至少有2个联机重做日志组。当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行。,数据库的两种运行模式:非归档模式 联机日志在切换时就会丢弃 归档模式 发生日志切
3、换的时候,被切换的日志会进行归档。比如,当前在使用联机重做日志1,当1写满的时候,发生日志切换,开始写联机重做日志2,这时联机重做日志1的内容会被拷贝到另外一个指定的目录下。这个目录叫做归档目录,拷贝的文件叫归档重做日志。拷贝数据的过程叫归档要求数据库运行在归档模式下。数据库可以在上一个完整备份的基础上根据归档重做日志,把数据库恢复到错误产生的前一刻,以Oracle+ArcSDE为例研究数据备份的技术实现。1)需要进行备份的文件(1)控制文件 控制文件是二进制文件,实例在加载数据库时需要读取控制文件,这样Oracle才能找到自己所需的操作系统文件(数据文件、重做日志文件等),如果控制文件损坏、
4、丢失或者记录了错误的信息,则将无法加载数据库,也无法打开数据库。在控制文件中主要内容:数据库名称、数据库创建时间、数据库同步信息(数据库当前的SCN(System Chang Number)、检查点执行情况以及重做日志顺序号等)、所有数据文件以及联机重做日志文件的位置与名称、数据库的归档模式、当前所使用的联机重做日志的顺序号等信息数据库运行的过程中,Oracle会不断地更新控制文件中的内容,(2)数据文件 数据文件是操作系统存储数据库中所有逻辑结构的数据的物理文件。数据文件的作用:在硬盘上保存Oracle系统与用户数据。数据文件中不仅包含有已提交事务的数据,而且还可能包含有未提交事务的数据。以
5、正常方式关闭的数据库,在数据文件中只包含已提交事务的数据,而不包含任何未提交事务的数据。因为在关闭数据库之前,Oracle会自动回退任何未提交的事务,并且执行一次检查以保证所有已提交事务的数据都被写入到了数据文件中。,(3)ArcSDE的定义文件:giomgr.defs、dbinint.sde、services.sde(4)归档重做日志。数据库崩溃时可采用此文件进行恢复。(5)其它的Oracle配置文件,数据库的关闭方式:1、shutdown normal(系统默认)。Oracle数据库系统不会自动断开当前用户的连接,而是等待当前用户主动断开与数据库的连接。注意:只要用户没有自动断开连接,即使
6、管理员已经发布了关闭数据库的命令,连接的用户仍然可以建立新的事务,插入或者更改数据等。特点:关闭数据库的时间比较长。具体跟用户主动断开连接的时间有关。阻止任何用户建立新的连接。在实际工作中,手工通知用户断开与数据库的连接。优点:在下次启动数据库时,不需要进行任何的恢复操作。,2、shutdown transactional 数据库管理员在发布关闭数据库指令后,允许用户递交未完成的事务,但是不能够建立新的事务。管理员发布了关闭指令后,数据库采取如下三个操作阻止任何用户建立新的连接,限制已经连接的用户建立新的事务。等待所有当前未递交的事务提交完毕,然后立即断开与当前用户的连接。一旦所有的用户都断开
7、连接则立即关闭数据库,3、shutdown immediate。最短时间内关闭数据库。管理员发布这个命令之后,系统会进行如下操作:阻止任何用户新的连接,同时限制当前连接用户开始新的事务。如果已连接用户有未完成的事务,则数据库系统直接把当前未递交的事务回退。当未递交的事务回退成功后,系统会直接关闭数据库,并终止数据库进程。,4、shutdown abort(异常中断)。特点:强制结束当前正在执行的SQL语句;任何未递交的事务都被回退,数据库的完整性将会受到损害。在下一次启动数据库的时候就需要对其进行恢复。基本上不会对控制文件或者参数文件造成破坏。只有在以上三种数据库关闭方式行不通的情况下,才能够
8、采用这种数据库关闭方式。5、强制关闭数据库 关闭操作系统或关掉电源,2)数据备份的种类 冷备份、热备份(1)数据库冷备份 在数据库关闭状态下进行的备份也称为冷(脱机)备份。在数据库以NORMAL,TRANSACTIONAL 或IMMEDIATE方式关闭后,可以对数据库进行完全备份,得到一致性备份(关闭了数据库后备份所有数据文件和控制文件等),数据库冷备份的步骤如下:1、如果数据库处于打开状态,为了保持数据文件的一致性,必须将待备份的数据库完全关闭,以NORMAL,IMMEDIATE或TRANSACTIONAL 方式关闭数据库。2、如果数据库是以FORCE方式关闭或者是由于故障而意外关闭的,不要
9、在关闭状态下对数据库进行完全备份。必须重新启动数据库并完全关闭后再备份数据。,3、利用操作系统命令对所有的控制文件、数据文件、ArcSDE的定义文件(giomgr.defs,dbinint.sde,services.sde)、归档重做日志、其它的Oracle配置文件进行备份。可以利用系统复制功能对以上文件备份到备份目录中。4、重新启动数据库,优点:在概念上十分简单,很容易理解(拷贝文件)操作起来比较简捷(简单拷贝)不容易产生错误缺点:在备份期间数据库必须处于关闭状态。数据库处于不可用状态的时间取决于数据库的大小、数据文件的数量以及复制过程的速度。利用这个备份只能将数据库恢复到备份时刻的状态,备
10、份时刻之后所有的事务修改都将丢失,(2)数据库热备份 在数据库打开状态下进行的备份也称为热(联机)备份,在进行热备份的同时数据库仍然是可以访问的。数据库处在归档模式下可以进行热备份。如果同时满足如下两个条件,可以在数据库打开状态下对数据库进行备份:数据库处于归档模式下联机重做日志文件可以被归档,备份内容:一个指定表空间的所有数据文件、表空间中某一个数据文件。如果进行备份的表空间或数据文件处于联机状态,那么在备份期间这些表空间或数据文件仍然可以被用户使用;如果进行备份的表空间或数据文件处于脱机状态,那么在备份期间数据库的其他表空间仍然可以被用户使用。,热备份的方法:备份当前数据库中某个表空间AL
11、TER TABLESPACE.BEGIN BACKUP结束热备份ALTER TABLESPACE.END BACKUP select file_name from dba_data_files where tablespace_name=USER;alter tablespace user begin backup;copy 文件alter tablespace user end backup;,热备份的优点:数据库在备份期间仍然处于可用状态。备份可以在表空间级或数据文件级进行,而不必每次都对整个数据库进行备份。可以对经常使用的表空间进行较为频繁的备份,而对较少使用的、基本处于只读状态的表空间
12、进行较少的备份。发生介质故障时可以保证不丢失任何数据。热备份的缺点:就是概念和操作都比较复杂,并且由于必须对数据库进行归档,或者还需要启动额外的后台进程,需要占用较多的系统资源。,3)备份的实施 为保障系统安全,采用磁带机、光盘等多种介质对数据进行备份。根据操作系统的功能,建立数据备份作业。备份的时间:利用晚上时间对数据库进行定期备份,对于大量的数据备份,则利用节假日进行。备份的方法:对一次大范围更新的数据,采用光盘刻录的方法进行备份,对于日常运行中的数据,则采用磁带机每天进行自动备份,包括文件和数据库的备份。,数据的恢复 介质故障后修复数据的方法:首先采用操作系统命令利用备份对数据库进行修复,然后再使用SQL命令RECOVER对修复后的数据库进行恢复介质故障后修复的内容:一个或多个数据文件,以及数据文件所在的表空间;或者数据库中所有的数据文件,并对整个数据库进行恢复。,