Oracle备份出错解决办法

一、备份概述

1 、采用热备份,需要运行在归档模式下,可以实现数据库的完全恢复,也就是说,从备份后到数据库崩溃时的数据都不会丢失 ;

2 、可以采用全备份数据库的方式备份,对于特殊情况,也可以只备份特定的数据文件,如只备份用户表空间(一般情况下对于某些写特别频繁的数据文件,可以单独加大备份频率);

3 、如果在恢复过程中,发现损坏的是多个数据文件,即可以采用一个一个数据文件的恢复方法,也可以采用整个数据库的恢复方法;

4 、运行在归档模式下会产生很多归档日志,这些日志对数据库的恢复非常重要,只要有备份与归档存在,就可以实现数据库的完全恢复(不丢失数据) ;

5 、恢复过程在 mount 下进行,如果恢复成功,再打开数据库

二、 Oracle 备份失败的原因

1 、没有发现归档日志的存在( Oracle 没有运行在归档模式下)

三、更改 Oracle 运行模式

1 $ mkdir   /ora_arch1  # 创建 oracle 归档日志的归档目录

2 $ sqlplus /nolog

       SQL> conn / as sysdba;

Connected.

SQL> startup mount;                   # 将数据库启动到 mount 状态

SQL> alter database archivelog;           # oracle 为归档模式

SQL> archive log start;                       # 启动归档模式

SQL> archive log list;                         # 查看 oracle 归档情况

Database log mode                      Archive Mode

Automatic archival                    Enabled

Archive destination                      /ora_arch1

Oldest online log sequence    565

Next log sequence to archive   567

Current log sequence               567

SQL> alter database open;                   # 打开数据库

SQL>alter system set LOG_ARCHIVE_DEST_1= LOCATION=/ora_arch 1   # /ora_arhc1 必须和前面 mkdir /ora_arch1 操作建立的路径一模一样 ( 设置 oracle 归档路径 )   SQL> alter system set log_archive_format='%t_%s.dbf' scope=spfile;              # 设置归档类型

SQL> alter system set log_archive_start=true scope=spfile;              # 设置自动归档模式

重启数据库,使设置生效

SQL> shutdown immediate;

SQL> startup

SQL> archive log list;                  # 查看归档情况

   Database log mode                      Archive Mode

Automatic archival                    Enabled

Archive destination                      /ora_arch1

Oldest online log sequence    565

Next log sequence to archive   567

Current log sequence               567

你可能感兴趣的:(oracle,sql)