Oracle安全数据系统架构全接触(3)

来源:互联网 发布:单片机上位机软件 编辑:程序博客网 时间:2024/04/29 20:44

值得注意的是冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。

下面是做冷备份的完整例子:

(1) 关闭数据库$sqldba lmode=y

SQLDBA >connect internal;

SQLDBA >shutdown normal;

(2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件

SQLDBA >! cp < file > < backup directory >

(3) 重启Oracle数据库

$sqldba lmode=y

SQLDBA >connect internal;

SQLDBA >startup;

<3>热备份

热备份是在数据库运行的情况下,采用archivelog mode方式备份数据的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下操作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:

1.数据文件一个表空间一个表空间地备份。

(1)设置表空间为备份状态

(2)备份表空间的数据文件

(3)恢复表空间为正常状态

2.备份归档log文件。

(1)临时停止归档进程

(2)log下那些在archive redo log目标目录中的文件

(3)重新启动archive进程

(4)备份归档的redo log 文件

3.用alter database backup controlfile命令来备份拷贝文件

热备份的优点是:

◆可在表空间或数据文件级备份,备份时间短。
◆备份时数据库仍可使用。
◆可达到秒级恢复(恢复到某一时间点上)。
◆可对几乎所有数据库实体作恢复。
◆恢复是快速的,在大多数情况下在数据库仍工作时恢复。

热备份的不足是:

◆不能出错,否则后果严重。
◆若热备份不成功,所得结果不可用于时间点的恢复。
◆因难于维护,所以要特别仔细小心,不允许“以失败而告终”。

【二】来自内部的另外一个隐患--用户管理以及密码问题

在这里,其实作为一个差不多点的数据库管理员都很清楚,Oracle数据库本身就使用了很多种手段来加强数据库的安全性,经常见到的就有密码,角色,权限等等。那么我们就从最简单的DBSNMP说起:

Oralce数据库如果采用典型安装后,自动创建了一个叫做DBSNMP的用户,该用户负责运行Oracle系统的智能代理(Intelligent Agent),该用户的缺省密码也是“DBSNMP”。如果忘记修改该用户的口令,任何人都可以通过该用户存取数据库系统。现在我们来看一下该用户具有哪些权限和角色,然后来分析一下该用户对数据库系统可能造成的损失。

启动SQL/PLUS程序,使用该用户登录进入:

SQL> select * from session_privs;

CREATE SESSION

ALTER SESSION

UNLIMITED TABLESPACE

CREATE TABLE

CREATE CLUSTER

CREATE SYNONYM

CREATE PUBLIC SYNONYM

CREATE VIEW

CREATE SEQUENCE

CREATE DATABASE LINK

CREATE PROCEDURE

CREATE TRIGGER

ANALYZE ANY

CREATE TYPE

CREATE OPERATOR

CREATE INDEXTYPE

可以看到该用户不是SYS或SYSTEM管理用户,然而,它却具有两个系统级权限:UNLIMITED TABLESPACE和CREATE PUBLIC SYNONYM。 

原创粉丝点击