1. 数据库安装参考步骤1--14
https://www.cnblogs.com/baixisuozai/p/17852235.html
#rman数据库备份脚本
#!/bin/bash PATH=$PATH:$HOME/bin
export PATH
export PATH=$PATH:HOME/bin
export ORACLE_BASE=/DataBase/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin:
export TNS_ADMIN=$ORACLE_HOME/network/admin
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export bak_date=$(date '+%Y%m%d')
export ORACLE_SID=orcl
export bak_dir=/DataBase/app/oracle/archive
export rman_log_dir=/DataBase/app/oracle/archive/rman_log /DataBase/app/oracle/product/11.2.0/db_1/bin/rman target / log=$rman_log_dir/$ORACLE_SID$bak_date.log <<EOF
run{
CONFIGURE DEVICE TYPE DISK PARALLELISM 4 BACKUP TYPE TO COMPRESSED BACKUPSET;
configure channel device type disk maxpiecesize 4G;
BACKUP
FORMAT='$bak_dir/data_%U_%T.dbf'
DATABASE;
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';
BACKUP
ARCHIVELOG ALL FORMAT='$bak_dir/arch_%U_%T.arc';
BACKUP SPFILE FORMAT '$bak_dir/spfile_%U_%T.ora';
BACKUP CURRENT CONTROLFILE FORMAT '$bak_dir/ctl_%U_%T.ctl';
DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-7';
CROSSCHECK BACKUP;
DELETE NOPROMPT EXPIRED BACKUP;
CROSSCHECK ARCHIVELOG ALL;
DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
REPORT OBSOLETE;
delete force noprompt obsolete device type disk;
}
EXIT;
EOF
  1. 创建初始pfile文件
$ vim init.umpay.ora
文件内容:
umpay.__java_pool_size=4194304
umpay.__large_pool_size=4194304
umpay.__oracle_base='/DataBase/app/oracle'#ORACLE_BASE set from environment
umpay.__pga_aggregate_target=167772160
umpay.__sga_target=243269632
umpay.__shared_io_pool_size=0
umpay.__shared_pool_size=176160768
umpay.__streams_pool_size=8388608
*.audit_file_dest='/DataBase/app/oracle/admin/orcl/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/DataBase/app/oracle/oradata/orcl/control01.ctl','/DataBase/app/oracle/flash_recovery_area/orcl/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='orcl'
*.db_recovery_file_dest='/DataBase/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=4070572032
*.diagnostic_dest='/DataBase/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=umpayXDB)'
*.log_archive_dest_1='location=/DataBase/app/oracle/archive'
*.memory_max_target=4966055936
*.memory_target=4966055936
*.open_cursors=300
*.pga_aggregate_target=2475687936
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2475687936
*.shared_pool_size=2147483648
*.undo_tablespace='UNDOTBS1' 【可以从rman备份的spfile文件中获取以上配置信息】
  1. 根据pfile文件,创建对应的文件目录
mkdir /DataBase/app/oracle
mkdir /DataBase/app/oracle/admin/orcl/adump
mkdir /DataBase/app/oracle/oradata/orcl/
mkdir /DataBase/app/oracle/flash_recovery_area/orcl/
mkdir /DataBase/app/oracle/flash_recovery_area
mkdir /DataBase/app/oracle/archive
  1. 使用配置文件启动数据库
sqlplus / as sysdba
shutdown immediate
startup nomount pfile='/home/oracle/init.umpay.ora';
  1. 恢复控制文件
$ rman target /
RMAN> restore controlfile from '/home/oracle/backup/ctl_be2c88dk_1_1_20231124.ctl';
RMAN> alter database mount;
  1. 恢复数据库
RMAN> crosscheck backup;
RMAN> crosscheck archivelog all;
RMAN> delete noprompt expired backup;
RMAN> delete noprompt expired archivelog all;
RMAN> catalog start with '/home/oracle/backup/';
Do you really want to catalog the above files (enter YES or NO)? YES //【输入YES】
cataloging files...
cataloging done
RMAN> crosscheck backup;
RMAN> restore database;
RMAN> recover database;
unable to find archived log
archived log thread=1 sequence=22421
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 11/24/2023 15:51:36
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 22421 and starting SCN of 505305385
【修改命令如下,再次执行。】
RMAN> recover database until scn=505305385;
  1. 启动数据库
export ORACLE_SID=orcl
sqlplus / as sysdba
SQL> alter database open resetlogs;
SQL> shutdown immediate;
SQL> startup mount;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/DataBase/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora'
解决办法:
把可用的pfile文件覆盖报错文件
$ cp /home/oracle/init.umpay.ora /DataBase/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora
SQL> alter database open;
  1. 创建数据库监听文件
$ vim listener.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.133.21)(PORT = 1521))
)
)
ADR_BASE_LISTENER = /DataBase/app/oracle $ vim tnsnames.ora
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.133.21)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
  1. 启动数据库监听进程
lsnrctl start

Linux下Oracle11G数据备份恢复(RMAN)的更多相关文章

  1. linux下的数据备份工具rsync讲解

    linux下的数据备份工具 rsync(remote sync 远程同步)   名词解释: sync(Synchronize,即“同步”)为UNIX操作系统的标准系统调用,功能为将内核文件系统缓冲区的 ...

  2. linux下误删数据文件恢复

    linux下文件被删除能够用非常多工具进行恢复.比如undelete(适合ext2,ext3).giis(不能恢复安装giis之前的文件).ext3grep(仅限ext3).R-linux(支持ext ...

  3. Linux下的Mysql备份/恢复

    数据库逻辑备份 逻辑备份:将数据库的数据以逻辑的SQL语句的方式导出 查看帮助 mysqldump --help 0.数据库开启状态 1.备份某个特定的库: mysqldump -uroot -pro ...

  4. 在linux下进行数据备份

    一.完全备份 完全备份是指把所有需要备份的数据全部备份.当然,完全备份可以备份整块硬盘.整个分区或某个具体的目录.完全备份的好处是数据恢复方便,因为所有的数据都在同一个备份中,所以只要恢复完全备份,所 ...

  5. Linux服务器数据备份恢复策略

    一.Linux 备份恢复基础 1.什么是备份 最简单的讲,备份数据的过程就是拷贝重要的数据到其他的介质之上(通常是可移动的),以保证在原始数据丢失的情况下可以恢复数据.一次备份可能是简单的 cp命令, ...

  6. linux下oracle11G DG搭建(二):环绕主库搭建操作

    linux下oracle11G DG搭建(二):环绕主库搭建操作 环境 名称 主库 备库 主机名 bjsrv shsrv 软件版本号 RedHat Enterprise5.5.Oracle 11g 1 ...

  7. linux下mysql定时备份数据库

    linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈   一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uu ...

  8. linux下Oracle11g RAC搭建(九)

    linux下Oracle11g RAC搭建(九) 八.创建ASM仓储 相同在图形化界面操作 [root@node1 ~]#  su - grid [grid@node1 ~]$ asmca   //创 ...

  9. linux下oracle11G DG搭建(三):环绕备库搭建操作

    linux下oracle11G DG搭建(三):环绕备库搭建操作 环境 名称 主库 备库 主机名 bjsrv shsrv 软件版本号 RedHat Enterprise5.5.Oracle 11g 1 ...

  10. Linux下MySQL的备份与还原

    Linux下MySQL的备份与还原 1. 备份 [root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录) [roo ...

随机推荐

  1. WPF 通过 GetMessageExtraInfo 方法获取当前收到的鼠标消息是否由触摸转换过来

    本文将告诉大家如何在 WPF 或者其他 Win32 应用里面,在收到鼠标消息时,通过 GetMessageExtraInfo 方法获取当前收到的鼠标消息是否由触摸消息提升而来 大家都知道,在不开启 W ...

  2. netcore依赖注入通过反射简化

    aspnetcore里面用到许多的service,好多业务代码都要通过Service.AddScoped.Singleton.Transient等注入进去,类太多了写起来和管理起来都很麻烦,所以借鉴了 ...

  3. C#的基于.net framework的Winform编程 - 编程手把手系列文章

    对于C#,笔者最早接触的是ASP.NET里的开发,后面对Winform程序也有一定的开发,但是真正理解和重新编码是这些年的事,在我的C#标签里有一些例子,记录了winform程序开发的一些功能.此文只 ...

  4. CSS自适应网页(CSS第一篇)

    ​CSS的属性: 用浏览器自带的审查元素对一些页面进行调整,快捷键是F12. 网页允许宽度自适应: 在代码的头部加入一行viewport元标签. <meta name="viewpor ...

  5. saltstack使用

    saltstack中salt-key的用法 介绍: saltstack中master和minion是依靠证书来进行加密通信的.在saltstack中salt-key命令是用来管理证书的 用法: sal ...

  6. 导入使用es

    from django.shortcuts import render, HttpResponsefrom elasticsearch import Elasticsearchfrom elastic ...

  7. GPU简介

    摘自:https://zhidao.baidu.com/question/1765722944085349980.html 其发起者和主导者是baiNVIDIA(英伟达)公司. 1999年,duNVI ...

  8. Linux中默认的shell如何切换为其他类型的shell

    1.一般linux系统会默认使用一种shell,比如我当前系统使用的默认shell是bash,可以使用如下方法查看. [root@node5 ~]# echo $SHELL /bin/bash 2.当 ...

  9. Java 8 中Stream用法

    Stream是Java 8新增的接口,Stream可以认为是一个高级版本的 Iterator. 废话不多说直接上代码 package com.example.demo; import org.juni ...

  10. Inno Setup Dependency Installer 安装包 运行环境安装

    Download and install any dependency such as .NET, Visual C++ or SQL Server during your application's ...