【菜鸟入职篇】单实例下数据库备份操作(—)

测试环境:

OS版本:Red Hat Enterprise Linux Server release 5.4 (Tikanga)

DB版本:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

全库冷备份:

需要备份的文件包括:数据文件、控制文件、日志文件、参数文件

1.查看要备份文件的位置

SQL> select name from v$datafile union all select name from v$controlfile

2  union all select member from v$logfile;

NAME

--------------------------------------------------------------------------------

/u01/oracle/oradata/orcl/system01.dbf

/u01/oracle/oradata/orcl/undotbs01.dbf

/u01/oracle/oradata/orcl/sysaux01.dbf

/u01/oracle/oradata/orcl/users01.dbf

/u01/oracle/oradata/orcl/control01.ctl

/u01/oracle/oradata/orcl/control02.ctl

/u01/oracle/oradata/orcl/control03.ctl

/u01/oracle/oradata/orcl/redo03.log

/u01/oracle/oradata/orcl/redo02.log

/u01/oracle/oradata/orcl/redo01.log

10 rows selected.

SQL> show parameter spfile;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

spfile                               string      /u01/oracle/db_1/dbs/spfileorcl.ora

2.创建备份文件存放的目录

[[email protected] oracle]$ mkdir orcl_bk

3.关闭数据库,将需要备份的文件拷贝到指定目录

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

[[email protected] orcl]$ pwd

/u01/oracle/oradata/orcl

[[email protected] orcl]$ ll

total 944856

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:39 control01.ctl

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:39 control02.ctl

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:39 control03.ctl

-rw-r----- 1 oracle oinstall  52429312 Oct 22 23:39 redo01.log

-rw-r----- 1 oracle oinstall  52429312 Oct 22 22:39 redo02.log

-rw-r----- 1 oracle oinstall  52429312 Oct 22 22:50 redo03.log

-rw-r----- 1 oracle oinstall 251666432 Oct 22 23:39 sysaux01.dbf

-rw-r----- 1 oracle oinstall 503324672 Oct 22 23:39 system01.dbf

-rw-r----- 1 oracle oinstall  20979712 Jul 23 22:00 temp01.dbf

-rw-r----- 1 oracle oinstall  26222592 Oct 22 23:39 undotbs01.dbf

-rw-r----- 1 oracle oinstall   5251072 Oct 22 23:39 users01.dbf

[[email protected] orcl]$ cp * /u01/oracle/orcl_bk/

[[email protected] orcl_bk]$ cp /u01/oracle/db_1/dbs/spfileorcl.ora /u01/oracle/orcl_bk/

[[email protected] orcl]$ cd /u01/oracle/orcl_bk/

[[email protected] orcl_bk]$ ll

total 944856

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:40 control01.ctl

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:40 control02.ctl

-rw-r----- 1 oracle oinstall   7061504 Oct 22 23:40 control03.ctl

-rw-r----- 1 oracle oinstall  52429312 Oct 22 23:40 redo01.log

-rw-r----- 1 oracle oinstall  52429312 Oct 22 23:40 redo02.log

-rw-r----- 1 oracle oinstall  52429312 Oct 22 23:40 redo03.log

-rw-r----- 1 oracle oinstall      2560 Oct 22 23:42 spfileorcl.ora

-rw-r----- 1 oracle oinstall 251666432 Oct 22 23:41 sysaux01.dbf

-rw-r----- 1 oracle oinstall 503324672 Oct 22 23:41 system01.dbf

-rw-r----- 1 oracle oinstall  20979712 Oct 22 23:41 temp01.dbf

-rw-r----- 1 oracle oinstall  26222592 Oct 22 23:41 undotbs01.dbf

-rw-r----- 1 oracle oinstall   5251072 Oct 22 23:41 users01.dbf

热备份:

1.设置数据库处于归档模式下

[[email protected] oracle]$ mkdir arch_dir     --创建归档路径

[[email protected] oracle]$ mkdir orcl_bk2     --创建备份路径

[[email protected] oracle]$ pwd

/u01/oracle

SQL> alter system set log_archive_dest_1=‘location=/u01/oracle/arch_dir‘ scope=both;

System altered.

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount;

ORACLE instance started.

Total System Global Area  167772160 bytes

Fixed Size                  1218316 bytes

Variable Size              71305460 bytes

Database Buffers           92274688 bytes

Redo Buffers                2973696 bytes

Database mounted.

SQL> alter database open;

Database altered.

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            /u01/oracle/arch_dir

Oldest online log sequence     3

Next log sequence to archive   5

Current log sequence           5

SQL> alter system switch logfile;

System altered.

2.备份所需文件

SQL> alter database begin backup;    --告知数据库即将进行热备

Database altered.

1)备份数据文件,联机日志文件

[[email protected] orcl]$ cp *.log /u01/oracle/orcl_bk2/

[[email protected] orcl]$ cp *.dbf /u01/oracle/orcl_bk2/

2)备份控制文件(有两种方式)

生成备份的trace文件:

SQL> alter database backup controlfile to trace as ‘/u01/oracle/orcl_bk2/control.trace‘ reuse;

Database altered.

生成的备份的二进制文件:

SQL> alter database backup controlfile to ‘/u01/oracle/orcl_bk2/control.bak‘ reuse;

Database altered.

3)备份参数文件

SQL> create pfile=‘/u01/oracle/orcl_bk2/initorcl.ora‘ from spfile;

File created.

SQL> alter database end backup;    --告知数据库热备结束

Database altered.

批注:如果是备份表空间,先将表空间置于OFFLINE状态

RMAN备份:

备份脚本:

[[email protected] rman_sh]$ cat bkfull.sh

#!/bin/bash

# name:bkfull.sh

# date:2014/10/23

# desc: backup incremental level 0 database with rman

#this script will execute in the end of each Sunday

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=/u01/oracle/db_1

export ORACLE_SID=orcl

export PATH=$ORACLE_HOME/bin:$PATH

export LANG=en_US

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

rman target/ << EOF_RMAN

run{

configure retention policy to recovery window of 7 days;

configure controlfile autobackup on;

allocate channel c1 type disk;

backup incremental level 0 tag ‘db0‘ format

‘/u01/oracle/rman_bk/db_file/db0_%d_%T_%s‘ database skip inaccessible

include current controlfile;

backup archivelog all format ‘/u01/oracle/rman_bk/log/log_%u‘ delete all input;

crosscheck backup;

delete noprompt expired backup;

delete noprompt obsolete;

release channel c1;

}

#end

时间: 2024-10-09 23:59:01

【菜鸟入职篇】单实例下数据库备份操作(—)的相关文章

baidu实习日志(入职篇)

从拿到offer到入职,有种已经毕业了的感觉. 同学朋友兄弟知道我即将离开重庆去北京后,都感慨伤怀起来.吃饭喝酒唱k.有疯狂,有发泄,有祝福,有陪伴,有问候,有离别.或许,正是因为那些预料不到的变化才让生活变得如此多彩吧. 离开重庆是毕业.今天的入职就算是毕业典礼吧. 发生在眼前的,是以前只能在电视中看到的,或许是自己的见识太少,反正我是觉得很棒,超乎我的预期. it的职场氛围是相对轻松的,但我依然看到了条理,看到了纪律.看到了热心友好,也看到了各种萌萌哒.今天是我一次性见到程序猿最多的一天,所

python框架之Flask基础篇(二)-------- 数据库的操作

1.flask连接数据库的四步: 倒入第三方数据库扩展包:from flask_sqlalchemy import SQLAlchemy 配置config属性,连接数据库: app.config["SQLALCHEMY_DATABASE_URI"] = "mysql://root:[email protected]/first_flask"app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False 创

mariadb 使用mysqldump 二进制数据库备份操作

实验内容 时间    数据库.表    表内容(id)    操作内容 8点    db1.t1      1,2,3         进行全备份 9点    db1.t1      4,5(新增加)    增加数据 10点    db1.t1     delete db1     删除db1 11点发现数据库内容有误,要求回复正常的数据 8点数据全备份 mysqldump -uroot -ppassword --all-databases --single-transaction --mast

mongodb 数据库备份操作

mongodb  数据库备份 mongodump --host mongodb.example.net --port 27017 备份路径选择 mongodump --out /data/backup/ 选择要备份的数据库和集合 mongodump --collection myCollection --db test 创建非本地数据库备份 mongodump --host mongodb1.example.net --port 3017 --username user --password "

linux 中,mysql数据库备份操作

1.新建一个sh脚本(可以先建一个txt文本,然后改为sh文件). 代码如下: #!/bin/bash #设置mysql备份目录 folder=/**/** cd $folder day=`date +%Y%m%d` rm -rf $day mkdir $day cd $day #数据库服务器 ip=IP地址 #数据库端口号 host=数据库端口 #用户名 user=root #密码 password=数据库root的密码 #要备份的数据库 db=数据库名称 #数据要保留的天数 days=7 m

Oracle数据库备份操作

1.以管理员身份登录 导出表 2.exp system/Oracle11g buffer=64000 file=D:exp_full.dmp full=y;完全导出 3.用户模式 exp scott/Oracle11g buffer=64000 file=D:scott_emp.dmp owner=scott 注意:命令末尾不能有分号,否则报错“scott为无效的用户名”. 4.表模式 exp system/Oracle11g buffer=64000 file=D:exp_scott_emp.

【RAC】将单实例备份集恢复为rac数据库

[RAC]将单实例备份集恢复为rac数据库 BLOG文档结构图 前言部分 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 单实例环境的备份集如何恢复到rac环境(重点) ② rman恢复数据库的一般步骤 ③ rac环境的简单操作 注意:本篇BLOG中代码部分需要特别关注的地方我都用***背景和红色字体来表示,比如下边的例子中,thread 1的最大归档日志号为33,thread 2的最大归档日志号为43是需要特别关注的地方.

【RAC】rac环境下的数据库备份与还原

[RAC]rac环境下的数据库备份与还原 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① rac环境下的数据库备份与还原 ② rman恢复数据库的一般步骤 ③ rac环境的简单操作 注意:本篇BLOG中代码部分需要特别关注的地方我都用***背景和红色字体来表示,比如下边的例子中,thread 1的最大归档日志号为33,thread 2的最大归档日志号为43是需要特别关注

【RAC】将RAC备份集恢复为单实例数据库

[RAC]将RAC备份集恢复为单实例数据库 BLOG文档结构图 前言部分 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① rac数据库的备份集是如何恢复到单实例的数据库 ② ASM文件系统到OS文件系统的转换 ③ 一般的备份恢复过程 本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力. 实验环境介绍 源库:11.2.0.1 rac库 2个节点 目标库:11.2.0.1 RHEL6