【实验目的】
- 了解Oracle数据库备份和恢复的类型
- 掌握使用RMAN进行备份数据库和恢复数据库的基本方法
【实验内容】
- 为备份和恢复做好准备工作
- 设置Oracle为自动归档模式(archivelog)
- 创建恢复表空间recovery_tbs
- 创建恢复用户rman_admin,密码和用户名相同,授予恢复相关的权限。
- 进入RMAN恢复管理器创建恢复目录
- 退出本次登录,重新注册连接到目标数据库
- 写命令进行数据库的完全备份
- 进行完全恢复
- 模拟介质故障:在SQL Plus中先关闭数据库和实例,再在安装目录下,删除或移动user01.dbf数据文件
- 在SQL Plus中重新打开实例和数据库,用startup mount命令,此时数据库仅装载而未打开,因为缺少一个数据文件
- 重新登录RMAN,连接到目标数据库
- 写命令执行数据库完全恢复
- 登录到SQL Plus查看是否恢复成功
【实验记录】
- 为备份和恢复做好准备工作
- 设置Oracle为自动归档模式(archivelog)
先使用sysdba登录

关闭数据库和实例

启动oracle实例并加载数据库

切换到归档模式并打开数据库

查看归档日志设置模式

- 创建恢复表空间recovery_tbs

注意,这里的路径必须是已有的,我提前在c盘根目录建立了backup文件夹,否则将会报错。具体见实验小结。
- 创建恢复用户rman_admin,密码和用户名相同,授予恢复相关的权限。
创建恢复用户

为其授权

- 进入RMAN恢复管理器创建恢复目录
先退出sqlplus,然后进入rman

创建恢复目录

- 退出本次登录,重新注册连接到目标数据库

- 写命令进行数据库的完全备份
选择有恢复目录的连接方式

进行完全备份

- 进行完全恢复
- 模拟介质故障:在SQL Plus中先关闭数据库和实例,再在安装目录下,删除或移动user01.dbf数据文件
连接sqlplus,关闭数据库和实例

在安装目录下,删除user01.dbf数据文件:
删除前:

删除后:

- 在SQL Plus中重新打开实例和数据库,用startup mount命令,此时数据库仅装载而未打开,因为缺少一个数据文件

- 重新登录RMAN,连接到目标数据库

- 写命令执行数据库完全恢复

- 登录到SQL Plus查看是否恢复成功

发现恢复成功。实验结束。
【实验小结】
创建恢复表空间recovery_tbs时提示创建出错,出错信息如下:

这是因为使用的路径是不存在的,这条sql命令并不能建立这个目录,必须要手动进行建立。手动建立之后重新进行创建即可成功。










