现实工作中有很多情况都可能造成数据丢失,造成数据丢失的主要因素可能是介质故障,如磁盘损坏、磁头碰撞,瞬时强磁场干扰;用户的错误操作;服务器的彻底崩溃;计算机病毒或者不可预料的因素,如自然灾害、电源故障、盗窃等都会造成数据库的多种故障,且解决每种故障的办法也不尽相同。下面罗列一下Oracle中的几种常见故障以及解决办法。

01、数据库故障

1.语句错误的典型问题与解决方法

语句错误的典型问题与解决办法如表10-1所示

2.用户进程错误的典型问题与解决办法

用户进程错误的典型问题与解决办法如表10-2所示。

3.网络故障的典型问题与解决办法

网络故障的典型问题与解决办法如表10-3所示。

4.用户错误的典型问题与解决办法

用户错误的典型问题与解决办法如表10-4所示。

5.实例错误的典型问题与解决办法

实例错误的典型问题与解决办法如表10-5所示。

6.介质故障的典型问题与解决办法

介质故障的典型问题与解决办法如表10-6所示。

02、数据库备份概述

数据库备份是DBA十分重要的一项任务,使用备份的数据库文件可以在数据库出现人为或设备故障时迅速地恢复数据,保证数据库系统对外提供持续、一致的数据库服务。

备份是数据库的一个副本,具体内容包括数据文件、控制文件等,也可以是逻辑备份,通过备份,DBA可以有效防止不可预测的数据丢失或应用程序错误造成的数据丢失。

从不同的角度来看待备份,它有很多种分类方法。

1.从物理与逻辑的角度来分类。

物理备份与逻辑备份两种。

物理备份:对数据库操作系统的物理文件(数据文件,控制文件和日志文件)的备份。

物理备份又可以分为脱机备份(冷备份)和联机备份(热备份),其中,脱机备份是在关闭数据库的时候进行的,联机备份是以归档日志的方式对运行的数据库进行备份。

也可以使用Oracle的恢复管理器(RMAN)或操作系统命令来进行数据库的物理备份。

逻辑备份:对数据库逻辑组件(如表和存储过程等数据库对象)的备份。逻辑备份的手段很多,如传统的EXP,数据泵(EXPDP),数据库闪回技术等第三方工具,都可以进行数据库的逻辑备份。

2.从数据库是否联机的角度划分。

冷备份与热备份两种。

冷备份:也称为脱机备份,是将关键性文件复制到另外的位置的一种说法。冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给一个完整的数据库。对于备份而言,冷备份是最快和最安全的方法。

热备份:也称为联机备份,是指数据库在打开的状态进行的备份,此时用户可以继续访问数据库,执行DML操作。但是要求数据库必须运行在归档模式下,只有在归档模式下才可以对整个数据库、单独的表以及数据文件进行备份。

3.从数据库的备份角度分类。

完全备份、增量备份和差异备份三种。

完全备份:每次对数据库进行完整备份,当发生数据丢失的情况时,完全备份无须依赖其他信息即可实现100%的数据恢复,其恢复时间最短且操作最方便。

增量备份:只需备份自上次完全备份或增量备份后被修改的文件即可。优点是备份数据量小,需要的时间短,缺点是恢复的时候需要依赖以前的备份记录,风险较大。

差异备份:自从上次完全备份之后被修改过的文件的备份。从差异备份中恢复数据的时间较短,因此只需要两份数据,即最后一次完整备份和最后一次差异备份,缺点是每次备份需要的时间较长。

1●冷备份

当DBA正常关闭 Oracle服务器时(通常以shutdown normal或shutdown immediate指令关闭),系统会自动触发一次检查点事件。

在数据库关闭之前,此检查点首先将缓存中的数据写入数据文件与联机日志文件,再把当前的检查点序号写入所有数据文件、联机日志文件和控制文件中。

所以,正常关闭后的数据库是一个状态一致的数据库,即它的所有文件的时间点是一致的。

此时,将数据库的所有数据文件、联机日志文件和控制文件复制出来形成的备份称为全库脱机备份,该备份可直接用于整个数据库的恢复(但只能恢复到备份时间点)。

冷备份主要备份的是数据库所有的数据文件、控制文件和日志文件。

由于其他文件都比较小,所以为了简化备份的过程,通常在脱机备份时可将其他文件一起备份。

下面介绍具体冷备份的主要操作步骤。

步骤1:启动SQL Plus,以sysdba身份登录数据库。

查询当前数据库所有的数据文件、控制文件、联机重做日志文件、初始化参数文件的位置。

步骤2:正常关闭数据库。

步骤3:复制所有数据文件、控制文件、联机重做日志文件以及初始化参数文件等其他配置文件到备份磁盘。

可以直接在操作系统中使用复制、粘贴方式进行,也可以在SQL Plus环境中使用下列形式的操作系统命令完成。

SQL> host copy 原文件名称 目标路径名称

步骤4:重新启动数据库

进行冷备份的操作步骤示意如图10-1所示。

图10-1 冷备份步骤

冷备份具有如下优点。

只需复制文件即可,是非常快速的备份方法。

只需将文件再复制回去,就可以恢复到某一时间点上。

与数据库归档的模式相结合可以使数据库很好地恢复。

维护量较少,但安全性却相对较高。

2●热备份

虽然冷备份简单、快捷,但是在很多情况下,例如数据库运行于24*7状态时(每天工作24小时,每周工作7天),没有足够的时间可以关闭数据库进行冷备份,就只能采用热备份。

热备份又可称为联机备份。热备份是指对数据库运行在归档模式下进行的数据文件、控制文件、归档日志文件等的备份。

在SQL Plus环境中进行数据库完全热备份的操作步骤如下所示。

步骤1:启动SQL Plus,以sysdba身份登录数据库。

步骤2:将数据库设置为归档模式。

由于热备份是数据库处于归档模式下的备份,因此在热备份之前,可以执行archiveloglist命令,查看当前数据库是否处于归档日志模式。

如果没有处于归档日志模式,就先将数据库转换为归档模式,并启动自动存档。

步骤3:以表空间为单位,进行数据文件备份。

(1)查看当前数据库有哪些表空间,以及每个表空间中有哪些数据库文件,其代码如下。

SQL> SELECT tablespace_name,file_name FROM dba_data_files ORDER BY tablespace_name;

(2)分别对每个表空间中的数据文件进行备份。

(01)将需要备份的表空间(如USERS)设置为备份状态。

SQL﹥alter  tablespace  users  begin  backup

(02)将表空间中所有的数据文件复制到备份磁盘。

SQL﹥host  copyhost  xcopy  D: \ORACLE19C\ORADATA\NEWORCL\USERS01 . DBFD: \BACKUP_NEWORCL\HOTBACK;

(03)结束表空间的备份状态。

SQL﹥alter  tablespace  users  end  backup

对数据库中所有表空间分别采用上述(01)~(03)步骤进行备份。

步骤4:备份控制文件。

通常应该在数据库物理结构做出修改之后,如添加、删除或重命名数据文件,添加、删除或修改表空间,添加或删除重做日志文件和重做日志文件组等,都需要重新备份控制文件。其有以下两种方法:

(1)创建二进制映像文件。

SQL﹥alter database backup controlfile to'E \APP\ADMIN\BACKUP\CONTROL BAK												

Oracle数据库 | Oracle备份实例相关推荐

  1. oracle数据库 export,转:Oracle数据库的备份方法——使用export作为备份

    5.使用export作为备份策略 5.1 export的命令选项说明 Oracle数据库的exp工具提供tables.users.full database.tablespace四种级别的导出方式,把 ...

  2. Oracle实例和Oracle数据库(Oracle体系结构)

    --========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --==================== ...

  3. oracle备份数据脚本,oracle数据库自动备份脚本

    ::通过exp命令导出远程机器(192.168.2.1)上指定服务(orcl)指定用户(pmis)及密码(pmis)的数据 ::运行该脚本的机器必须安装oracle @echo off @echo [ ...

  4. Linux oracle数据库自动备份自动压缩脚本代码

    Linux oracle数据库自动备份自动压缩脚本代码 Linux oracle数据库备份完成后可以自动压缩脚本代码. 复制代码代码如下: #!/bin/bash #backup.sh #edit: ...

  5. oracle数据库自动备份

    oracle数据库自动备份 环境:windows server2008操作系统,oracle 10.2.0数据库 工具:windows命令窗口 ,windows任务计划 命令:exp  profile ...

  6. oracle逻辑备份和物理备份,oracle数据库物理备份和逻辑备份区别

    oracle数据库物理备份和逻辑备份区别 ORACLE中数据备份分为物理备份和逻辑备份两种.物理备份就是转储ORACLE物理文件(如数据文件.控制文件.归档日志文件等),一旦数据库发生故障,可以利用这 ...

  7. 通过exp命令对Oracle数据库进行备份操作(提供两种情况的备份:备份本地,备份远程的数据库)

    通过exp命令可以对Oracle数据库进行备份操作,其命令含义是:exp 用户名/密码@数据库所在ip地址:数据库端口号/数据库的service-name file=存储到的位置 exp MISPS/ ...

  8. Oracle数据库定时备份脚本

    Oracle数据库定时备份脚本 一.编写脚本 vim /home/backup/oraclebk.sh #! /usr/bin #路径名,指定备份的路径 FILEPATH=/home/backup/o ...

  9. delphi Oracle导出多个表,Oracle数据库自动备份工具(Delphi源码)

    Oracle数据库自动备份工具(Delphi源码) 下载地址:http://www.blogjava.net/Files/96sd2/OraSvr.rar 『OracleBackupService』简 ...

  10. Oracle数据库的备份

    这两天要用oracle的数据备份,在网上找了找例子.给大家贴出来看看. PS: 选择数据库中所有的表的SQL语句 SELECT * FROM DBA_TABLES WHERE OWNER=''(填用户 ...

最新文章

  1. mongo报错:not authorized on bb to execute command { create: \“xxx\“...}
  2. 离开硅谷11年后总结出的4条经验教训
  3. centos删除文件不释放_centos 磁盘空间不释放 各位有什么解决方案吗
  4. Linux中命令配置防火墙
  5. jcenter下载慢
  6. OpenResty(nginx)操作mysql的初步应用
  7. Eigen教程(7)之归约、迭代器和广播
  8. ext2文件系统学习(一)
  9. 23. Linux 主机上的用户信息传递
  10. java long_Java long数据类型
  11. 数据包络分析法(DEA)_1
  12. Origin无法修改语言为灰色
  13. excel公式失效、单元格内容拼接、定长补0、单元格内容和字符串拼接、判断后填充
  14. Andriod studio 学习 之 Recyclerview
  15. 《当程序员的那些狗日日子》(四十)繁杂的需求
  16. 九龙证券|近200家机构组团调研,这些机构密集调研股稳增长低估值
  17. js屏蔽手机的物理返回键
  18. 计算机基础1模拟题,计算机基础模拟题1(有答案)
  19. 计算机显卡怎样安装方法,独立显卡安装简易教程
  20. allegro16.3中负片电源和地的操作

热门文章

  1. 斐讯n1刷linux配置wifi,斐讯N1刷CentOS7最简操作
  2. C语言编码99乘法表
  3. Java接入腾讯云短信接口
  4. mysql 1032 update_MySQL 1032 主从错误解决方法
  5. python统计分析pdf托马斯_Python统计分析
  6. 分布式机器学习主要笔记
  7. Eureka工作原理
  8. linux-arm下如何开启tftp传输,linux-arm间tftp命令的安装、使用
  9. 计算机软件购销合同模版,软件销售合同范本
  10. Debian stretch failed to load firmware rtl_nic/rtl8168g-3.fw (-2)