仓酷云

标题: MYSQL网页编程之oracle进修条记(1)-数据备份与恢复 [打印本页]

作者: 精灵巫婆    时间: 2015-1-16 22:39
标题: MYSQL网页编程之oracle进修条记(1)-数据备份与恢复
每个人都在使用它。MySQL是开源LAMP组合的一个标准组件:Linux、Apache、MySQL和Perl/PHP。根据Evans的调查,LAMP组合的迅速推广很大程度上代表着MySQL的被广泛接受。oracle|备份|条记|恢复|数据
数据备份

不管何种体例,数据库的备份即为datafile/controlfile/redofile此三种文件的备份。
1、exp/imp的备份体例
2、脱机备份体例(offlinebackup)
3、联机备份体例(onlinebackup)
4、standy的运转形式


1、exp/imp的备份体例
(1)命令体例
能够在online的情况下举行。

(2)OEM体例
使用导出备份导游举行导出。

2、脱机备份体例(offlinebackup)
复制相干的文件便可。
(1)封闭数据库;
(2)复制文件,datafile/controlfile/redologfile;
(3)翻开数据库。

3、联机备份体例(onlinebackup)
前提:
(1)数据库不克不及封闭;
(2)数据库必须处于回档形式(archivemode),即redologfile纪录满后,把完全的redologfile保留
在磁盘上;

让数据处于archivemode的办法:
(1)设置archivemode;
在initorcl.ora文件中设置以下参数:
#启动arch背景的处置程序
log_archive_start=true
#设置archivelogfile的寄存中央
log_archive_dest=/home/oradata/orcl/archive
#设置脱机事件日记的文件名
log_archive_format=-s%.arc
(2)mount形态下设置archivemode,翻开数据库;
startupmountpfile=initorcl.ora;
alterdatabasearchivelog;
alterdatabaseopen;

联机备份办法一
(1)设置tablespace为backupmode;
altertablespacetablespace_namebeginbackup;
(2)复制相干的数据表
copysourcefiledestfile
(3)恢复tablespace到一般形态
altertablespacetablespace_nameendbackup;
(4)backupcontrolfile
alterdatabasebackupcontrolfiletocontrol.bk
(5)copyredologfile

4、standy的运转形式
此形式为主从服务器备份形式。
办法:
(1)筹办备份主机
(2)次要数据库的备份
办法以下:
a、fullofflinebackup
b、onlinebackup
c、备份数据库的controlfile
alterdatabasebackupstandbycontrolfileasfilename
(3)断定次要呆板是处于archivelogmode
操纵办法如3所示。
(4)从次要呆板将backupdatafiles/controlfile复制到备份主机。
复制的文件以下:
a、controlfile
b、backupdatafiles;
c、archivedredologs
d、onlieredologs
e、initializationfile
(5)设置次要呆板的initializationparameters
(6)设置备份主机的initializationparameters
?????
大概与(5)设置有所分歧。
(7)翻开备份主机数据库
a、在nomount形态下翻开数据库,然后alter启动standby呆板
startnomountpfile=initstandby.ora;
alterdatabasemountstandbydatabase;
b、standbymode下启动后,暗示备份呆板已可以承受primary数据库的archiveredolog,可用ftp或oracle
供应的办法由oracle主动获得数据。
(8)启动备份数据库
alterdatabaserecovermanagedstandbydatabase;



数据恢复

1、脱机备份的恢复(会丧失数据)
(1)断定数据库封闭
(2)复制相干备份文件到相干地位(controlfile,redologfile,datafiles)
(3)启动数据库
2、archivemode恢复
(1)completerecovery
a、封闭数据库;
shutdown;
b、在mount阶段翻开数据库
startupmount;
c、举行数据库恢复
setautorecoveryon;
recoverdatabase;
d、完成recovery后,翻开数据库
alterdatabaseopen;
(2)对单一文件或数据表recovery;
a、让必要恢复的tablespace脱机
altertablespaceappdataofflineimmediate;
b、用好的备份文件代替破坏文件
c、断定要恢复的archivelogfile存在
d、入手下手recovery;
recovertablespaceappdata;
recoverdatafileuser01.dbf;
e、完成后,alter让tablespace联机
altertablespaceappdataonline;

(3)incompleterecovery
假如事件日记文件破坏,则要注重datafilesandcontrolfile纪录的logsequencenumber是不不异的,则为不完整恢复。
mount阶段要把logsequencenumber置为1,如许数据库才干翻开。

利用cancel恢复到某一工夫点
a、mount翻开数据库
startupmount;
b、恢复
recoverdatabaseuntilcancel;
c、完成以后,翻开数据库(openmode),从头设置controlfileanddatafiles的logsequencenumber的设置为1;
alterdatabaseopenresetlogs;


利用指准时间
a、mount翻开数据库
startupmount;
b、恢复
recoverdatabaseuntiltime2001-09-10:18:00:00;
c、完成以后,翻开数据库(openmode),从头设置controlfileanddatafiles的logsequencenumber的设置为1;
alterdatabaseopenresetlogs;
列举选择MySQL的理由的最困难的地方在于,如何对这些理由进行排序。MySQL学习教程这就如同我们经常争论的故事:先有鸡还是先有蛋?
作者: 简单生活    时间: 2015-1-18 05:22
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
作者: 山那边是海    时间: 2015-1-21 10:59
SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.
作者: 变相怪杰    时间: 2015-1-30 16:11
我个人认为就是孜孜不懈的学习
作者: 只想知道    时间: 2015-2-6 13:59
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
作者: 若天明    时间: 2015-2-16 09:51
这就引发了对varchar和char效率讨论的老问题。到底如何分配varchar的数据,是否会出现大规模的碎片?
作者: 乐观    时间: 2015-3-5 03:35
记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。
作者: 小女巫    时间: 2015-3-19 15:57
大家注意一点。如下面的例子:
作者: 灵魂腐蚀    时间: 2015-3-28 21:20
现在是在考虑:如果写到服务器端,我一下搞他个10个存储过程导过去,那久之服务器不就成垃圾箱了吗?即便优化了我的中间层.




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2