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的更多相关文章
随机推荐
- win8win10以管理员身份运行cmd方法
win8win10以管理员身份运行cmd方法 Win7/8下提示OpenSCManager failed 拒绝访问Maven nexus 安装nexus : wrapper | OpenSCManag ...
- DataTable模拟
DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("timestep", Type.GetType(&qu ...
- a标签样式
.a{ cursor:pointer; color: blue; text-decoration:none; }
- mfc通过消息传递参数进行程序间通信
这样的程序主要实现windows平台下两个应用程序间的通信. 最简单的单元分为两个部分,一个是引用的程序,一个是被引用的程序. 一.如果引用他人,需要传递参数找到运行的程序,并且传递消息过去 void ...
- 远程读取json数据并写入数据库
参考:http://www.jb51.net/article/39937.htm $curlPost = 'a=1&b=2';//模拟POST数据$ch = curl_init();curl_ ...
- nginx简单的rewrite配置
假设当前已存在location /test/,希望配置一个短连接/ts/与之相同,就需要用到rewrite 直接配置到server段 rewrite ^/ts/(.*) /test/$1; 或者放到l ...
- (转)MySQL命令行--导入导出数据库
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Se ...
- DAL、DAO、ORM、Active Record辨析
转自:http://blog.csdn.net/suiye/article/details/7824943 模型 Model 模型是MVC中的概念,指的是读取数据和改变数据的操作(业务逻辑).一开始我 ...
- js获取url中的参数值
在博客园看家一片不错的文章:http://www.cnblogs.com/EnderH/p/5398409.html 在这里记下对自己比较有用的三种: 1.正则 function GetQuerySt ...
- 深入浅出设计模式——工厂方法模式(Factory Method)
介绍在简单工厂模式中,我们提到,工厂方法模式是简单工厂模式的一个延伸,它属于Gof23中设计模式的创建型设计模式.它解决的仍然是软件设计中与创建对象有关的问题.它可以更好的处理客户的需求变化. 引入我 ...