oracle如何冷备,oracle冷备份和热备份

oracle10g如何冷备份

linux下冷备份相对简单得多

创新互联公司专注于沙坪坝企业网站建设,成都响应式网站建设公司,成都做商城网站。沙坪坝网站建设公司,为沙坪坝等地区提供建站服务。全流程按需设计,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务

1、把oracle关停,如果有数据不断进来,你打包的oracle会有数据同步问题(如果没有读写数据不关停,也能冷备份,但是有失败的可能)

2、把oracle安装路径和数据文件各打个包,比如

tar ora10g.gz /u02/oracle

tar data.gz /data/oracle

3、你再安装个新的linux系统,像安装oracle步骤一样配置好环境变量,创建相同路径,解压缩你冷备份的文件,启动即可。

linux环境下oracle数据库冷备份问题

1. 复制旧的数据库文件

(1) 用SQLPlus连接数据库:sqlplus 用户名/密码 as sysdba

(2) 关闭DB :shutdown immediate;

(3) 复制文件到其他地方存储实现备份

1)复制三个文件夹admin;oradata(datafile, controlfile,redo【注:数据文件, 控制文件,redo】);flash_recovery_area三个文件夹。2)dbhome_1下的内容database(PWDfile、pfile);dbs(spfile);NETWORK/ADMIN(listener.ora、tnsnames.ora)。

2. Oracle重新建库恢复

(1)创建一个和原来一样的数据库。(安装路径和数据库名必须和原来一致)

(2)停止数据库shutdown immediate;

(3)复制安装目录下的admin、oradata、flash_recovery_area覆盖,复制database(PWDfile、pfile) 覆盖

(4)启动数据库 startup;

备注:

无归档模式:将备份文件拷贝回原来的目录即可,然后启动数据库。

归档模式:

①将数据文件、控制文件拷贝回原来目录

②SQLstartup mount;

SQLrecover database using backup controlfile;

③将相应的归档日志和联机日志拖到CMD命令窗口进行跑日志。

④SQLalter database open resetlogs;

3. 软件重装恢复

此时,操作系统重装,如果做冷备恢复,要保证相同操作系统,相同的数据库版本。形势如同异机恢复。

A、不创建实例:(源机上的数据库名字为orcl)

(1) 恢复oradata/orcl目录

在目标机上的oradata目录下建立orcl文件夹,然后进行数据覆盖。

包括数据文件、参数文件、控制文件、日志文件、pwd文件,放在与原系统相同的目录。如果目录有所改变,则需要另外建立控制文件,修改pfile。 (2) 恢复admin/orcl目录在目标机上的admin目录下建立orcl文件夹,然后在orcl里面再建立adump、bdump、cdump、udump、dpdump、pfile六个文件夹

(3) 建立服务把源机的密码文件拷贝到目标机的database目录下。使用oradim命令在cmd下oradim -new -sid orcl 表示建立一个服务,sid为orcl(最好名字和源机备份的数据库名字一致,就不需要重建密码文件)。如果是在linux下,不需要此步。 (4) 重建创建参数文件、控制文件拷贝源机的pfile到目标机的一个目录下,修改pfile里面相关文件的路径。然后通过SQLcreate spfile from pfile=‘文件路径'来创建参数文件。重建控制文件命令:SQLalter database backup controlfile to trace; 然后会在udump文件夹下产生一个追踪文件,打开文件找到如下一段,复制到文本中,修改相应路径然后保存为:createctl.sql文件(sql脚本文件),复制到目标机上。注意:SQLalter database backup controlfile to trace as 'F:/DB_RECOVERY/CONTROL_FILE_TRACE.TXT';复制的原始导出txt中的,相应代码片段如下: View Code

(5)  数据库设置SID和启动服务

12345678    c:\set ORACLE_SID=orclc:\sqlplus "/as sysdba" SQLcreate spfile from pfile='c:\pfile.txt';SQL@c:\createctl.sql;SQLshutdown immediate;SQLstartup;SQLalter database open resetlogs;  

备注:

如果(4)、(5)不好用,可以用下面的方法修改这些路径不一致的问题(反正笔者电脑上冷备份恢复时,上面的两个步骤就不好用):

1)SQL下执行如下语句,恢复控制文件

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  ARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

2)修改日志、DBF的路径

修改oracle_home\oradata\orcl下及相关文件的路径

(6) TNSNAMES设置在network\admin下的tnsnames.ora中添加如下片段

123456789    ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))  

(7) 建立监听用net configuration为orcl实例新建监听 至此,冷备份恢复成功。即使你现在用oem打开数据库时发现提示找不到sid ,但实际上你已经成功了,此时只需要重启一下的你的服务器就可以。

B、创建实例方式(实例SID与源机数据库SID一致)

(1) 替换和覆盖oradata\orcl目录删除目标机的oradata\orcl底下的所有文件,把源机的所有data文件、redo文件拷贝到此目录下

(2) 密码文件覆盖删除目标机的密码文件,拷贝源机密码文件到目标机下。

(3) 控制文件恢复在源机上重建目标机的控制文件:SQLalter database backup controlfile to trace;然后会在udump文件夹下产生一个追踪文件,打开文件找到上面那段,复制到文本中,修改相应路径然后保存为:createctl.sql文件(sql脚本文件),复制到目标机上。

复制代码代码如下:

12345    c:\sqlplus "/as sysdba"SQL@c:\createctl.sql;SQLshutdown immediate;SQLstartup;SQLalter database open resetlogs;  

(4)  在network\admin下的tnsnames.ora中添加如下片段

复制代码代码如下:

123456789    ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))  

(5) 用net configuration为orcl实例新建监听

若是初学Linux的话建议看看《Linux就该这么学》这本书。

Oracle冷备份谁教教我怎么做??网上看了半天,错误老是有,我想知道具体步骤

冷备份 最简单的一种方法就是

1. 把库正常关掉

2. copy所有 datafile , control file 和 所有的 redo log file到别的路径下

3. 可以startup 使用数据库了

不过冷备很危险哦~ 万一哪天数据库崩溃了 使用冷备份文件恢复数据库 可是会丢数据的。

两台Oracle服务器,怎么实现双机冷备

1、数据量不大的话,比如整体小于10G,你可以在主机访问量小时或者shutdown时将oracle打包。例如:tar zcf /opt/u02.gz /u02,然后将u02.gz文件scp到备机。

2、如果数据量很大,你可以用rsync同步到备机

3、配置主备无密码互访

4、添加计划任务

crontab -e

0 4 * * * /opt/rsync_ora.sh;

rsync_ora.sh内容:

#!/bin/sh

rsync -av '-e ssh -p 22' /u02/oracle oracle@172.16.1.2:/u02

rsync -av '-e ssh -p 22' /data1/oracle oracle@172.16.1.2:/data1


网站标题:oracle如何冷备,oracle冷备份和热备份
当前地址:http://hbruida.cn/article/hceigh.html