RMAN在非归档模式下的增量备份和恢…

本文详细介绍了在非归档模式下利用RMAN进行数据库的一致备份(冷备份)和恢复的过程,包括备份、模拟提交事务、恢复控制文件、装载数据库、恢复数据文件和数据库的步骤。
<wbr><h3><span><a href="http://blog.youkuaiyun.com/ilovemilk/article/details/4700736">RMAN在非归档模式下的增量备份和恢复</a></span></h3> <div> <span>分类: <a href="http://blog.youkuaiyun.com/ilovemilk/article/category/289067">数据库技术</a></span> <span>2009-10-19 22:50</span> <span title="阅读次数">527人阅读</span> <span title="评论次数"><a href="http://blog.youkuaiyun.com/ilovemilk/article/details/4700736#comments">评论</a>(0)</span> <span><a title="收藏">收藏</a></span> <span><a title="举报" href="http://blog.youkuaiyun.com/ilovemilk/article/details/4700736#report">举报</a></span> </div> <div> <div>转自:<a href="http://happyhou.blog.sohu.com/111692887.html">http://happyhou.blog.sohu.com/111692887.html</a><br> </div> <div><br></div> <div>非归档模式的RMAN备份和恢复以前用的较少,以下为测试过程</div> <div>非归档模式的RMAN 备份必须在mount状态下,mount下的RMAN备份为一致备份即冷备份<br> ---------------------------备份过程------------------------------<br> 0级备份<br> run {<br> allocate channel d1 type disk;<br> allocate channel d2 type disk;<br> allocate channel d3 type disk;<br> allocate channel d4 type disk;<br> allocate channel d5 type disk;<br> backup incremental level=1 database format 'd:/incr1_%d_%s_%p_%T.bak';<br> }</div> <div>备份完成后模拟提交一个事物<br> insert into test1 values (3);<br> commit;</div> <div> <br> 1级备份<br> run {<br> allocate channel d1 type disk;<br> allocate channel d2 type disk;<br> allocate channel d3 type disk;<br> allocate channel d4 type disk;<br> allocate channel d5 type disk;<br> backup incremental level=1 database format 'd:/incr1_%d_%s_%p_%T.bak';<br> }</div> <div> ----------------------------恢复过程------------------------------------<br> 删除所有的数据文件、控制文件、redo日志文件</div> <div>RMAN&gt; startup nomount</div> <div>Oracle 实例已启动</div> <div>系统全局区域总计 612368384 字节</div> <div>Fixed Size 1250452 字节<br> Variable Size 251661164 字节<br> Database Buffers 356515840 字节<br> Redo Buffers 2940928 字节</div> <div>RMAN&gt; restore controlfile from 'd:/INCR1_TEST_103_1_20080331.BAK';</div> <div>启动 restore 于 31-3月 -08<br> 使用目标数据库控制文件替代恢复目录<br> 分配的通道: ORA_DISK_1<br> 通道 ORA_DISK_1: sid=156 devtype=DISK</div> <div>通道 ORA_DISK_1: 正在复原控制文件<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:03<br> 输出文件名=D:/3.ORACLE/APP/ORADATA/TEST/CONTROL01.CTL<br> 输出文件名=D:/3.ORACLE/APP/ORADATA/TEST/CONTROL02.CTL<br> 输出文件名=D:/3.ORACLE/APP/ORADATA/TEST/CONTROL03.CTL<br> 完成 restore 于 31-3月 -08</div> <div>RMAN&gt; alter database mount<br> 2&gt; ;</div> <div>数据库已装载<br> 释放的通道: ORA_DISK_1</div> <div>RMAN&gt; restore database;</div> <div>启动 restore 于 31-3月 -08<br> 分配的通道: ORA_DISK_1<br> 通道 ORA_DISK_1: sid=156 devtype=DISK</div> <div>通道 ORA_DISK_1: 正在开始恢复数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 正将数据文件00005恢复到D:/3.ORACLE/APP/ORADATA/TEST/TEST01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_94_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_94_1_20080331.BAK 标记 = TAG20080331T003426<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:02<br> 通道 ORA_DISK_1: 正在开始恢复数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 正将数据文件00004恢复到D:/3.ORACLE/APP/ORADATA/TEST/USERS01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_95_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_95_1_20080331.BAK 标记 = TAG20080331T003426<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01<br> 通道 ORA_DISK_1: 正在开始恢复数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 正将数据文件00003恢复到D:/3.ORACLE/APP/ORADATA/TEST/SYSAUX01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_93_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_93_1_20080331.BAK 标记 = TAG20080331T003426<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:25<br> 通道 ORA_DISK_1: 正在开始恢复数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 正将数据文件00001恢复到D:/3.ORACLE/APP/ORADATA/TEST/SYSTEM01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_91_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_91_1_20080331.BAK 标记 = TAG20080331T003426<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:55<br> 通道 ORA_DISK_1: 正在开始恢复数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 正将数据文件00002恢复到D:/3.ORACLE/APP/ORADATA/TEST/UNDOTBS01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_92_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_92_1_20080331.BAK 标记 = TAG20080331T003426<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:46<br> 完成 restore 于 31-3月 -08</div> <div>RMAN&gt; recover database;</div> <div>启动 recover 于 31-3月 -08<br> 使用通道 ORA_DISK_1<br> 通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 数据文件 00001 的恢复目标: D:/3.ORACLE/APP/ORADATA/TEST/SYSTEM01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_98_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_98_1_20080331.BAK 标记 = TAG20080331T003928<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01<br> 通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 数据文件 00002 的恢复目标: D:/3.ORACLE/APP/ORADATA/TEST/UNDOTBS01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_99_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_99_1_20080331.BAK 标记 = TAG20080331T003928<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01<br> 通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 数据文件 00003 的恢复目标: D:/3.ORACLE/APP/ORADATA/TEST/SYSAUX01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_100_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_100_1_20080331.BAK 标记 = TAG20080331T003928<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01<br> 通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 数据文件 00005 的恢复目标: D:/3.ORACLE/APP/ORADATA/TEST/TEST01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_101_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_101_1_20080331.BAK 标记 = TAG20080331T003928<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:02<br> 通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集<br> 通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件<br> 数据文件 00004 的恢复目标: D:/3.ORACLE/APP/ORADATA/TEST/USERS01.DBF<br> 通道 ORA_DISK_1: 正在读取备份段 D:/INCR1_TEST_102_1_20080331.BAK<br> 通道 ORA_DISK_1: 已恢复备份段 1<br> 段句柄 = D:/INCR1_TEST_102_1_20080331.BAK 标记 = TAG20080331T003928<br> 通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01</div> <div>正在开始介质的恢复</div> <div>无法找到存档日志<br> 存档日志线程 =1 序列=1</div> <div>RMAN-00571: ===========================================================<br> RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============<br> RMAN-00571: ===========================================================<br> RMAN-03002: recover 命令 (在 03/31/2008 00:47:09 上) 失败<br> RMAN-06054: 介质恢复正请求未知的日志: 线程 1 seq 1 lowscn 1139364</div> <div>RMAN&gt; alter database open resetlogs;</div> </div> </wbr>
### ESP01烧录教程及相关指南 ESP01 是一款基于 ESP8266 的 Wi-Fi 模块,广泛应用于物联网设备开发中。以下是关于如何成功完成 ESP01 固件烧录的过程说明。 #### 工具准备 为了实现 ESP01 的固件刷入操作,需准备好以下工具和材料: - **硬件部分**:USB 转串口模块(支持 CH340 或 CP2102)、ESP01 模块、杜邦线若干。 - **软件部分**:电脑端安装驱动程序(CH340 驱动或 CP2102 驱动),以及用于固件烧写的工具 `esptool.py`[^1]。 #### 环境配置与连接设置 在开始之前,请确认 USB 转串口模块已正确识别,并分配有对应的 COM 口编号。随后按照如下方式连接 ESP01 和 USB-TTL 模块: | ESP01 Pin | USB-TTL Pin | |-----------|-------------| | GND | GND | | TX | RX | | RX | TX | | VCC | 3.3V (切勿接5V!) | 注意,在实际烧写过程中还需要短接 GPIO0 至 GND 来进入下载模式[^2]。 #### 使用 esptool 进行固件烧录 确保 Python 环境已经搭建完毕之后,可以通过 pip 安装最新版本的 esptool 库: ```bash pip install --upgrade esptool ``` 执行擦除芯片命令前先清空原有数据以防冲突发生: ```bash esptool.py --port COMX erase_flash ``` 接着上传目标固件文件至指定地址(通常为偏移量 0x0000),假设本地路径下存在名为 firmware.bin 的二进制镜像,则运行下面这条语句即可完成整个流程: ```bash esptool.py --chip esp8266 --port COMX write_flash 0x0000 firmware.bin ``` 以上步骤均应严格按照官方文档指示逐步实施以减少失败几率。 #### 常见问题排查技巧 如果遇到诸如“Failed to connect”之类的提示信息时,可以尝试调整波特率参数或者重新插拔设备来改善接触状况;另外也要留意供电电压是否稳定充足等问题。 对于希望进一步了解 MQTT 协议通信机制的朋友来说,可参考另一份资料学习如何利用 AT 指令集构建简单的发布订阅模型实例[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值