现在的位置: 首页 > 数据库 > Oracle > 正文
Oracle冷备份与恢复
2013年01月08日 Oracle ⁄ 共 1799字 暂无评论 ⁄ 被围观 8,877 views+

说明:在现在这家公司以前,旺旺从来没有接触过oracle数据库,但现在的公司没有DBA,开发人员也对Oracle的管理不熟悉,所以也只能赶鸭子上架,边学边用,从安装到建库等!前段时间被Oracle内存管理折腾得够呛(24G的物理内存,跑了两个开发测试环境下的oracle就被占满,还出现死机的情况),不过还好,终于搞定,也没有在出现过情况。现在基本的运行没有问题了,则需要考虑进一步的问题了,备份与恢复!如下的操作我结合网上资料进行的测试,欢迎大家指正:

这里我主要记录这两天测试的冷备份:

一、冷备份(环境:Windows+oracle 10g):

方法一:管理数据库的情况下备份

备份脚本:

--connect database

connect sys/你设定的密码 as sysdba;

--shutdown database

shutdown immediate;

--Copy Data file

Host xcopy d:\Oracle\product\10.2.0\oradata\orcl\*.dbf d:\DbBakup;

--Copy Control file

Host xcopy d:\Oracle\product\10.2.0\oradata\orcl\*.ctl d:\DbBakup;

--Copy Log file

Host xcopy d:\Oracle\product\10.2.0\oradata\orcl\*.log d:\DbBakup;

--startup database

startup;

注:以上代码拷贝到记事本中保存为*.sql即为冷备份脚本。其中控制文件(*.ctl),数据文件(*.dbf),日志文件(*.log)的路径依自己的路径修改。“d:\DbBakup”为备份路径,可以自己修改。要备份所有的数据文件,可能有的dbf并不是都在一个目录中,这个就要在EM中查看一下所有的数据文件路径了。

冷备份操作步骤:

1.在运行中输入cmd。

2.在cmd界面中输入sqlplus/nolog进入sql*plus。

3.以dba身份连接数据库conn sys/你设定的密码 as sysdba。

4.执行冷备份操作。@冷备份角本路径。

方法二:不关闭数据库的冷备份

网上的资料都说进行冷备份需要关闭数据库,但我在实际测试中,直接进入目录d:\Oracle\product\10.2.0\拷贝admin和oradata进行备份,恢复后居然也正常。求解!

二、恢复

场景一、本地完全恢复:

应用场景:原来数据库主机硬件故障导致数据库无法使用,需要恢复一台完全一样的数据库。此方法主要适合小型应用,特别是只有一台数据库服务器而没有集群的情况。

恢复时间:我在虚拟化环境下测试,数据库文件在10GB左右,恢复时间20分钟。

恢复方法:

1.建立一台与原数据库服务器完全一样的服务器,IP、计算机名等都使用原数据库的。

2.建立跟原来SID一样的数据库(实例)。

3.将上述备份方法二中的备份的admin和oradata文件夹复制对应路径下,覆盖原来的文件。

4.重新启动服务器,使用sqlplus等测试连接。如果连接不上,多半是服务没有启动的缘故。

场景二、异地恢复

注:把备份的文件拷贝到另一台机器上(确保与备份机器安装的是同一版本oracle,并且安装目录相同)。

正常恢复步骤:

1.在运行中输入cmd。

2.在cmd界面中输入sqlplus/nolog进入sql*plus。

3.以dba身份连接数据库conn sys/你设定的密码 as sysdba。

4.输入:shutdown immediate。

5.把备份的文件手工逆拷贝到相对应的oracle目录中。

6.在命令窗口中sql>光标处输入:startup。

注:如无法登录EM,请重启oracle服务。以上为正常本机恢复过程。如果异地恢复只执行以上步骤,数据库的主机连接字符串则会是备份机器的主机名。所以我们在异地恢复时除了正常恢复步骤还要重建EM。

重建EM步骤:

建议关闭下EM服务。

1.删除EM

A.在cmd命令窗口输入:emca -repos drop

B.在接下来的信息中按自己的数据库信息输入。

2.创建EM

A.在cmd命令窗口输入:emca -repos create

B.在接下来的信息中按自己的数据库信息输入。

3.配置EM

A.在cmd命令窗口输入:emca -config dbcontrol db

B.在接下来的信息中按自己的数据库信息输入。

给我留言

留言无头像?


×