数据备份

物理备份 : 底层数据块

逻辑备份 :exp(export), imp(import) 导入导出工具,提取成dump文件,再将dump文件放入数据库

expdp, impdp 数据蹦

utilities手册里有

exp -help

which exp

exp SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)

expdp dbms_datapump : 支持断点续传

逻辑备份 :速度较物理备份慢, 但更精细

物理备份 :底层数据块的拷贝

LUN —> Storage

oracle凭借什么检查一个块是否物理损坏 :

db block 的结构 :块头SCN,块尾SCN(部分)值是否一致

check sum 值是否一致

oracle凭借什么检查一个块是否逻辑损坏 :

数据文件中的SCN和控制文件中的SCN是否一致

eg :

desc v$database; 描述反应控制文件内容的视图

select current_scn from v$database;

select checkpoint_change# from v$datafile;

select checkpoint_change#, last_change# from v$datafile;

select checkpoint_change# from v$datafile_header;

shu immediate

startup mount

desc v$database; 描述反应控制文件内容的视图

select current_scn from v$database;

select checkpoint_change# from v$datafile;

select checkpoint_change#, last_change# from v$datafile;

select checkpoint_change# from v$datafile_header;

shutdown transactional, immediate, normal 将数据库一致性关闭,以得到一致性SCN

alter database open;

shut abort

startup mount

select current_scn from v$database;

select checkpoint_change# from v$datafile;

select checkpoint_change#, last_change# from v$datafile;

select checkpoint_change# from v$datafile_header;

物理备份

冷备份 :用户管理 (shutdown immediate, cp)

热备份 :用户管理 (begin backup end backup)用户在表空间层面实施备份

alter database open;

desc dba_data_file

select file_id, file_name from dba_data_files;

shu immediate

start up mount

alter database atchivelog;

alter database open;

archive log list;

alter tablespace users begin backup;

note : 要想实现热备份,必须先启动归档模式。用户管理的

eg :

cd /u01/app/oracle/oradata/ENMOEDU/

ls

cp users01.dbf users01.dbf.bak

ls

rm -rf users01.dbf

ls

alter tablespace users end backup;

create table test (id number) tablespace suers;

insert into test values(1);

commit;

select * from test;

shu immediate

cp users01.dbf.bak users01.dbf;

alter database open;

recover datafile 4;

select * from test;

eg :

alter tablespace users begin backup;

insert into test values(2);

commit;

select * from test;

alter system switch logfile;

alter system switch logfile;

/

/

/

/

cd ..

cd fast_recovery_area/ENMOEDU/archivelog

cd 2015_07_25/

alter tablespace users end backup;

alter tablespace users begin backup; :user表空间的文件头被固定住

eg :

alter system switch logfile;

select file#, checkpoint_change# from v$datafiel_header;

alter system switch logfile;

select file#, checkpoint_change# from v$datafiel_header;

(4号文件头不变)

shu immediate

shu abort

startup

alter tablespace users end backup;

alter database open;

Rman : 备份管理工具,替代用户管理

rman

rman -help

rman 在oracle实例处于mount状态下可以做冷备份

rman做热备份 :backup database

SID设置的角色

eg :

rman target sys/oracle@ENMOEDU

backup database;

利旧

rman备份dbv校验

rman : 对datafile备份

archive : 对redolog备份

完全备份 :backup database(full),备份所有数据文件和控制文件

增量备份 :只备份发生改变的数据块(SCN发生变化的块,需检查所有数据块)

11g, 引入block change tracking块改变跟踪文件

差异增量备份 :备份上次备份以来的增量变化,备份块

累积增量备份 :备份到上一次全被的增量变化,恢复快

默认差异增量备份

0级增量备份效果等于全备份

1级增量备份表示

备份集 : 把多个datafile打包到一个tar包里

镜像副本 :拷贝

eg :

cd /u01/app/oracle/oradata/ENMOEDU

ls

cd ..

ls

tar -zcvf ENMOEDU.tar.gz ENMOEDU/

eg : rman 的命令

rman target /

x

show all

list x

list backup;

backup x;

backup database x;

backup database plus x;

backup database plus archivelog x;

backup database plus archivelog delete all input; : 备份数据库,备份归档,删除之前的归档

list backup;

backup database plus archivelog format ‘/u01/app/oracle/%t%f.bak’;

eg :

exit

ls

cd fast_recovery_area/

ls

cd ENMOEDU/

ls

cd archivelog/

ls

cd ..

ls

cd backupset/

ls

show parameter db_recovery

关于rman的手册 :reference ,  guide

常将rman的设置放在一个脚本里

eg :

cd /u01/app/oracle

ls

sqlplus / as sysdba

show parameter db_recovery

show parameter db_fi

只要备份文件有修改,控制文件就自动备份

恢复

还原(restore) :将备份的内容放回数据文件的位置

恢复(recover) :在文件上应用文件日志和归档日志

用户还原 :copy

用户恢复 :recover (sqlplus)

rman还原 :restore

rman恢复 :reciver (rman)

完全恢复 :应用大于当前scn值的所有归档(介质故障,软件故障,

不完全恢复 :

实例恢复 :smon进程在数据库下一次启动时读取online redo

介质恢复 :手工restore, recover

cd /u01/app/oracle/oradata/ENMOEDU/

ls

rm -rf *.dbf

ps -ef |grep smon

kill 9 44095

quit

sqlplus / as sysdba

restore tadabase;

select status from v$instance;

alter database open;

flashback闪回数据库,生产中常不开,影响数据库性能

闪回版本处理

闪回事物处理

eg :

select table_name from dict where table_name like ‘%rec%’;

show recyclebin;

select * from tab;

drop test1;

show recyclebin;

drop table test purge; : 永久删除表

实例恢复checkpoint进程

完全检查点 :alter system checkpoint, shutdown

增量检查点 :

eg :

show parameter control

alter database open resetlogs; :将日志序列号清零

v$log : 日志视图

alter database clear logfile group 1;

list failure;

advise failure;

enmo_day_07的更多相关文章

随机推荐

  1. MVC4 Filter 验证客户端访问类型(移动端、PC端)

    Filter: 1 /// <summary> /// 检测是否是手机访问 /// </summary> public class IsMobileFilter : Actio ...

  2. 批处理命令——for

    [1]for命令简介 先把for循环与for命令类比一下,这样学习理解快. for 循环语句,一般格式如下: for (表达式1;表达式2;表达式3) { 循环体; } 1. 表达式1 一般为初始状态 ...

  3. jQuery 选择器 (基础恶补之二)

    返回 CSS 属性 如需返回指定的 CSS 属性的值,请使用如下语法: css("propertyname"); 下面的例子将返回首个匹配元素的 background-color ...

  4. TCP IP详解(转)

    大学学习网络基础的时候老师讲过,网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 网络七层协议简称OSI.TCP/IP刨除了物理层,并把上三层(会话层.表示层和应用层)统称 ...

  5. [充电]多线程无锁编程--原子计数操作:__sync_fetch_and_add等12个操作

    转自:http://blog.csdn.net/minCrazy/article/details/40791795 多线程间计数操作.共享状态或者统计相关时间次数,这些都需要在多线程之间共享变量和修改 ...

  6. [OGRE]最小ogre程序的流程

    总结一下最小ogre程序的流程: 1 创建Ogre::Root 2 用Ogre::Root加载插件,必须载入的是场景管理器和渲染器 3 调用Ogre::ResourceGroupManager::ge ...

  7. 搭建自己本地yum源

    1.挂载系统光盘(注:medi下的cdrom是我自己创建的,可以挂载在任意目录) [root@liutao ~]# mount /dev/cdrom /media/cdrom/ 2.修改yum配置文件 ...

  8. SC.UI

    IController using Microsoft.Practices.Prism.Events; using Microsoft.Practices.Prism.Regions; using M ...

  9. print函数

    python中print既可以写成print a,也可以写成print(a) >>> a=1 >>> print a 1 >>> print(a) ...

  10. 计算字符串中al_num,spance_num,digit_num,other_num的个数

    def jisuan(x) : al_num = 0 spance_num = 0 digit_num = 0 other_num = 0 for i in x : if i.isdigit() : ...