enmo_day_07
数据备份
物理备份 : 底层数据块
逻辑备份 :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的更多相关文章
随机推荐
- MVC4 Filter 验证客户端访问类型(移动端、PC端)
Filter: 1 /// <summary> /// 检测是否是手机访问 /// </summary> public class IsMobileFilter : Actio ...
- 批处理命令——for
[1]for命令简介 先把for循环与for命令类比一下,这样学习理解快. for 循环语句,一般格式如下: for (表达式1;表达式2;表达式3) { 循环体; } 1. 表达式1 一般为初始状态 ...
- jQuery 选择器 (基础恶补之二)
返回 CSS 属性 如需返回指定的 CSS 属性的值,请使用如下语法: css("propertyname"); 下面的例子将返回首个匹配元素的 background-color ...
- TCP IP详解(转)
大学学习网络基础的时候老师讲过,网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 网络七层协议简称OSI.TCP/IP刨除了物理层,并把上三层(会话层.表示层和应用层)统称 ...
- [充电]多线程无锁编程--原子计数操作:__sync_fetch_and_add等12个操作
转自:http://blog.csdn.net/minCrazy/article/details/40791795 多线程间计数操作.共享状态或者统计相关时间次数,这些都需要在多线程之间共享变量和修改 ...
- [OGRE]最小ogre程序的流程
总结一下最小ogre程序的流程: 1 创建Ogre::Root 2 用Ogre::Root加载插件,必须载入的是场景管理器和渲染器 3 调用Ogre::ResourceGroupManager::ge ...
- 搭建自己本地yum源
1.挂载系统光盘(注:medi下的cdrom是我自己创建的,可以挂载在任意目录) [root@liutao ~]# mount /dev/cdrom /media/cdrom/ 2.修改yum配置文件 ...
- SC.UI
IController using Microsoft.Practices.Prism.Events; using Microsoft.Practices.Prism.Regions; using M ...
- print函数
python中print既可以写成print a,也可以写成print(a) >>> a=1 >>> print a 1 >>> print(a) ...
- 计算字符串中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() : ...