06.Oracle数据备份与恢复

news2024/11/28 15:44:00

Oracle数据备份与恢复

  • 一、通过RMAN方式备份
  • 二、使用emp/imp和expdb/impdb工具进行备份和恢复
  • 三、使用Data guard进行备份与恢复

一、通过RMAN方式备份

通过 RMAN(Oracle 数据库备份和恢复管理器)方式备份 Oracle 数据库,可以使用以下步骤:

  1. 启动归档模式
    查看是否为存档模式:

    SQL> archive log list;
    Database log mode              No Archive Mode
    Automatic archival             Disabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST
    Oldest online log sequence     11
    Current log sequence           13
    SQL>
    

    关闭数据库,并启动归档模式

    SQL> shutdown;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.
    
    Total System Global Area 1286066176 bytes
    Fixed Size                  2213016 bytes
    Variable Size             352324456 bytes
    Database Buffers          922746880 bytes
    Redo Buffers                8781824 bytes
    Database mounted.
    SQL> alter database archivelog;
    
    Database altered.
    
    SQL>
    

    打开数据库,并查看是否修改成功

    SQL> archive log list;
    Database log mode              Archive Mode
    Automatic archival             Enabled
    Archive destination            USE_DB_RECOVERY_FILE_DEST
    Oldest online log sequence     11
    Next log sequence to archive   13
    Current log sequence           13
    SQL>
    

如果想在归档模式下进行备份,只能把数据库启动到mount状态下才可以进行
但在生产环境中,一般情况下数据库是不能随意进行关闭的,所以一般在安装好数据库之后直接就开启归档模式,更改归档需要在mount模式下

  1. 打开 RMAN 命令行界面:
    [oracle@localhost ~]$ rman target /
    
    Recovery Manager: Release 11.2.0.1.0 - Production on Fri Nov 3 17:58:54 2023
    
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    
    connected to target database: ORCL (DBID=1679473799)
    
    RMAN>
    
  2. 开始备份
    (1) 使用backup database;对数据库直接备份
RMAN> backup database;

Starting backup at 03-NOV-23
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=192 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 03-NOV-23
channel ORA_DISK_1: finished piece 1 at 03-NOV-23
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_nnndf_TAG20231103T194131_ln9q3d1w_.bkp tag=TAG20231103T194131 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 03-NOV-23
channel ORA_DISK_1: finished piece 1 at 03-NOV-23
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_ncsnf_TAG20231103T194131_ln9q3wok_.bkp tag=TAG20231103T194131 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 03-NOV-23

RMAN>

进入相关目录查看备份结果
在这里插入图片描述

[oracle@localhost ~]$ cd /u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/
[oracle@localhost 2023_11_03]$ ll
total 1016728
-rw-r----- 1 oracle oinstall    9830400 Nov  3 18:09 o1_mf_ncsnf_TAG20231103T180906_ln9kp3ff_.bkp
-rw-r----- 1 oracle oinstall    9830400 Nov  3 19:25 o1_mf_ncsnf_TAG20231103T192501_ln9p4gqt_.bkp
-rw-r----- 1 oracle oinstall    9830400 Nov  3 19:41 o1_mf_ncsnf_TAG20231103T194131_ln9q3wok_.bkp
-rw-r----- 1 oracle oinstall 1011638272 Nov  3 19:41 o1_mf_nnndf_TAG20231103T194131_ln9q3d1w_.bkp
[oracle@localhost 2023_11_03]$

rman不但可以备份,也可以使用其进行管理,示例如下:
在这里插入图片描述
(2)使用backup tablespace USERS;对表空间的备份和恢复

RMAN> backup tablespace USERS;

Starting backup at 03-NOV-23
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 03-NOV-23
channel ORA_DISK_1: finished piece 1 at 03-NOV-23
piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_nnndf_TAG20231103T223829_lnb1h5d1_.bkp tag=TAG20231103T223829 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 03-NOV-23

RMAN>

若表空间已损毁恢复,需要恢复表空间可以使用recover tablespace USERS;

使用 CROSSCHECK BACKUP 命令验证备份的完整性。RMAN 将检查备份文件的状态,并将其标记为“EXPIRED”(过期)或“AVAILABLE”(可用)。
示例如下:

RMAN> crosscheck backup;

using channel ORA_DISK_1
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_ncsnf_TAG20231103T180906_ln9kp3ff_.bkp RECID=1 STAMP=1151950147
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_ncsnf_TAG20231103T192501_ln9p4gqt_.bkp RECID=2 STAMP=1151954702
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_nnndf_TAG20231103T194131_ln9q3d1w_.bkp RECID=3 STAMP=1151955692
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_ncsnf_TAG20231103T194131_ln9q3wok_.bkp RECID=4 STAMP=1151955708
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2023_11_03/o1_mf_nnndf_TAG20231103T223829_lnb1h5d1_.bkp RECID=5 STAMP=1151966309
Crosschecked 5 objects


RMAN>

二、使用emp/imp和expdb/impdb工具进行备份和恢复

emp/imp是Oracle传统的备份和恢复工具,它们使用二进制格式将数据导出和导入。
expdb/impdb是Oracle 10g及以上版本引入的新工具,它们使用XML格式将数据导出和导入。
下面我们将详细讲解如何使用这些工具进行备份和恢复。
  1. 使用emp/imp进行备份和恢复

    emp和imp命令用于将Oracle数据库中的数据导出到一个文件中,以便进行备份或迁移。它们可以将整个数据库或单个表导出到一个文件中,然后再将文件导入到另一个数据库中。

    备份数据:

    exp userid=username/password file=d:\backup\emp_backup.dmp full=y
    

    上述命令将整个数据库导出到d:\backup\emp_backup.dmp文件中。

    恢复数据:

    imp userid=username/password file=d:\backup\emp_backup.dmp full=y
    

    上述命令将d:\backup\emp_backup.dmp文件中的数据导入到数据库中。

  2. 使用expdb/impdb进行备份和恢复

    expdb和impdb命令是Oracle 10g及以上版本引入的新工具,它们使用XML格式将数据导出和导入。它们的使用方法与emp/imp相似。

    备份数据:

    expdp userid=username/password directory=backup_dir dumpfile=expdb_backup.dmp full=y
    

    上述命令将整个数据库导出到backup_dir目录下的expdb_backup.dmp文件中。

    恢复数据:

    impdp userid=username/password directory=backup_dir dumpfile=expdb_backup.dmp full=y
    

    上述命令将backup_dir目录下的expdb_backup.dmp文件中的数据导入到数据库中。

三、使用Data guard进行备份与恢复

Oracle Data Guard是Oracle数据库提供的一种高可用性解决方案,它可以实现数据备份和恢复的功能。它通过将主数据库的数据实时复制到一个或多个备用数据库,以提供数据冗余和灾难恢复能力。

下面是使用Data Guard进行备份和恢复的详细讲解:

  1. 配置Data Guard

首先,需要在主数据库和备用数据库上配置Data Guard。在主数据库上进行以下操作:

  • 启用归档模式:ALTER DATABASE ARCHIVELOG;

  • 配置日志传输服务:ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=standby_db ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=standby_db';

在备用数据库上进行以下操作:

  • 启用归档模式:ALTER DATABASE ARCHIVELOG;

  • 配置日志应用服务:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;

  1. 启动Data Guard

在主数据库上启动Data Guard:

  • 启动日志传输服务:ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE;

在备用数据库上启动Data Guard:

  • 启动日志应用服务:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
  1. 数据备份和恢复

在Data Guard配置完成后,主数据库上的数据将实时复制到备用数据库。如果主数据库发生故障,可以使用备用数据库进行数据恢复。

备份数据:

  • 在备用数据库上创建备份:RMAN> BACKUP DATABASE;

恢复数据:

  • 在备用数据库上进行故障切换:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

  • 将备用数据库切换为主数据库:ALTER DATABASE ACTIVATE STANDBY DATABASE;

  • 在新的备用数据库上进行数据恢复:ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1168645.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

dubbo没有找到生产者

1、没有找到生产者 com.alibaba.dubbo.rpc.RpcException: No provider available from registry 127.0.0.1:2181 for service .... , please check status of providers(disabled, not registered or in blacklist)2、 查看是不是 对应的providers 没有 注册上去 找到 zk 对应…

每天五分钟计算机视觉:池化层的反向传播

本文重点 卷积神经网络(Convolutional Neural Network,CNN)作为一种强大的深度学习模型,在计算机视觉任务中取得了巨大成功。其中,池化层(Pooling Layer)在卷积层之后起到了信息压缩和特征提取的作用。然而,池化层的反向传播一直以来都是一个相对复杂和深奥的问题。本…

【报错】错误 C1004 :发现意外的文件尾

文章目录 情景在现出错原因解决方案问题解决 情景在现 出错原因 这个错误通常是由于您在源文件中漏写了某些括号或者分号,导致编译器在处理到文件末尾时发现没有遇到预期的符号。 解决方案 解决这个错误的方法是,打开您的源文件,仔细检查是否…

虾皮买家号批量注册软件

shopee买家通系统可以自动注册虾皮买家号,并且支持多个国家使用,可以用于菲律宾、印度尼西亚、泰国、马来西亚、越南等。 如果想要自动化注册,资料方面也有一定要求,手机号需要相应国家的号码 ip环境也要用相应国家的才可以&…

C# 3D人脸重建,人头姿势估计

效果 项目 代码 using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms;namespace Onnx_Demo {public partial class frmMain : Form{public frmMain(){InitializeComponent();}string fileFilter "*.…

道本科技||紧跟数字化转型趋势,企业如何提高合同管理能效?

随着数字化转型的快速发展,合同管理对于企业的运营效率和风险控制起着至关重要的作用。那么,如何紧跟数字化转型趋势,利用现代技术和工具提高合同管理的能效,以实现企业更高效、更安全的合同管理就成了企业管理中的核心问题。 在…

【MySQL事务篇】事务基础知识

事务基础知识 文章目录 事务基础知识1. 概述2. 事务的ACID特性3. 事务的状态4. 事务的使用4.1 显式事务4.2 隐式事务 5. 事务隔离级别5.1 数据并发问题5.2 SQL中的四种隔离级别 1. 概述 事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态 事务处…

ECharts折线图去掉图例和线段上的小圆点

官方的初始效果 折线图的图例有小圆点,并且图表中也有小圆点 最终效果 去掉图例和图标中的小圆点 并且柱状图和折线图的图例要不同 代码实现 去掉图例小圆点 官方文档 itemStyle: { opacity: 0 } 折线图中的小圆点去掉 官方文档 两个代码二选一就行&#x…

uniapp小程序砸金蛋抽奖

砸之前是金蛋png图片&#xff0c;点击砸完之后切换砸金蛋动效gif图片&#xff1b; 当前代码封装为砸金蛋的组件&#xff1b; vue代码&#xff1a; <template><view class"page" v-if"merchantInfo.cdn_static"><image class"bg&qu…

实习输出(1)

一、几项注意事项 1、uTools 一款很好用的工具。里面汇聚了截图、翻译、笔记、todo等等功能&#xff0c;并且支持快捷键打开&#xff0c;方便电脑开发使用。 2、IDEA &#xff0c;因为目前主流开发都是使用IDEA。首先要熟悉最基本的IDEA的快捷键 使用&#xff0c;像进入方法&…

日本it培训学费 想去日本做IT,需要具备哪些技术?

日本的IT行业历史比较悠久&#xff0c;业务以上层前端业务为主&#xff0c;如设计和构建软件。日本IT公司组织庞大&#xff0c;行业内部有着严格的分工和部署&#xff0c;工作会被细分化&#xff0c;分配给个人的工作量不会太大&#xff0c;难度也不会很高&#xff0c;所以日本…

springboot常见网络相关错误及原因解析

在基于spring-boot开发过程尤其是上线后&#xff0c;经常出现网络相关的错误&#xff0c;令人难以琢磨和下手&#xff0c;所以就spring-boot使用过程中可能碰到的网络相关问题进行分析&#xff0c;结合网络转包、日志报错和前端输出&#xff0c;针对网络连接超时、连接被拒绝、…

vue封装独立组件:实现手写签名功能

目录 第一章 效果展示 第二章 准备工作 2.1 使用的工具vue-sign 2.1.1 安装 2.1.2 了解 2.1.3 参数说明 第三章 源代码 第一章 效果展示 第二章 准备工作 2.1 使用的工具vue-esign 2.1.1 安装 npm install vue-esign --save 2.1.2 了解 兼容pc端和移动端有对应的参…

pwn入门:详解gdb调试程序的常见命令

目录 写在开头 一、pwn题目环境的部署 二、解题思路&#xff08;不是重点&#xff09; 三、gdb的调试过程&#xff08;重点&#xff09; 完整运行过程&#xff08;run&#xff09; 调试程序&#xff08;重点&#xff09; 运行到程序的开始位置 设置断点 查看内存 …

Java Web 学习笔记(三) —— Maven 基础

目录 1 Maven 概述2 Maven 安装配置3 Maven 基本使用3.1 Maven 常用命令3.2 Maven 生命周期 4 IDEA 配置 Maven4.1 IDEA 配置 Maven 环境4.2 IDEA 创建 Maven 项目 5 依赖管理5.1 导入依赖5.2 依赖范围 1 Maven 概述 Apache Maven 是一个项目管理和构建工具&#xff0c;它基于项…

力控关节性能指标

力控关节是一种用于机器人的关节&#xff0c;具有强大的力控制能力&#xff0c;通常用于执行需要精确力量控制的任务&#xff0c;例如装配、协作操作、力导引操作等。 电机的伺服驱动器通常包括三种控制环——位置环、速度环和电流环。虽然每种控制环的目的是控制电机性能的不同…

应用在智能空调中的数字温度传感芯片

智能空调是具有自动调节功能的空调。智能空调系统能根据外界气候条件&#xff0c;按照预先设定的指标对温度、湿度、空气清洁度传感器所传来的信号进行分析、判断、及时自动打开制冷、加热、去湿及空气净化等功能的空调。适合放在卧室&#xff0c;客厅等地方。 在中央控制系统…

【网络奇遇记】那年我与计算机网络的初相识

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;《网络奇遇记》 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 一. 信息时代的计算机网络二. 计算网络的定义和分类三. 计算机网络的特点四. 计算机网路在信息时代的应用五…

RFID管理方案有效提升电力物资管理效率与资产安全

在电力行业&#xff0c;电力资产的管理是一项重要的任务&#xff0c;为了实现对电力资产的精细化管理、入出库监控管理、盘点管理和巡查管理等&#xff0c;电力公司多采用电力资产RFID管理系统&#xff0c;该系统能够实时监控出入库过程&#xff0c;有效防止出入库错误&#xf…

【ElasticSearch系列-05】SpringBoot整合elasticSearch

ElasticSearch系列整体栏目 内容链接地址【一】ElasticSearch下载和安装https://zhenghuisheng.blog.csdn.net/article/details/129260827【二】ElasticSearch概念和基本操作https://blog.csdn.net/zhenghuishengq/article/details/134121631【三】ElasticSearch的高级查询Quer…