oracle 备份

一:多元化控制文件步骤
	1:确定已经存在的控制文件,
		select name from v$controlfile;
		存在control01.ctl控制文件。
	2: 修改初始化参数control_files,
		alter system set control_files='../control01.ctl','../control02.ctl' scope=spfile;
	3: 关闭数据库并复制控制文件,此时第二个控制文件不存在。并复制控制文件
		shutdown immediate
		host copy ../control01.ctl ../control02.ctl
	4; 启动数据库,证实存在两个控制文件,
		startup
		select name from v$controlfile;
		
二:多元化重做日志文件--添加日志成员
	1:确定原有日志成员的位置,
	SQL>select group#,member from v$logfile;
	2: 添加日志成员
	SQL>alter database add logfile member
	   '../RED001_2.LOG' to group 1;
	   
三:启动归档日志模式
	1:查询日志模式
	SQL>select log_mod from v$database
	2: 关闭数据,然后装在数据库,日志模式只能是在mount状态下进行,关闭时不能使用shutdown abort
	SQL>shutdown immediate
	SQL>startup mount
	3:改变日志操作模式
	SQL>alert database archivelog
	SQL>alter database open
	
四:配置归档参数
	1:归档日志文件名称
		SQL>alter system set log_archive_format='%s_%t_%r.log' scope=spfile
		需要重启数据库,默认日志房子快速恢复区中,此时不采用log_archive_log格式
	2:log_archive_dest_n配置归档位置,n是1和10之间的整数。可以制定远程和本地位置
		SQL>alter system set
			log_archive_dest_1='location=c:\demo\archive mandatory';
		包含三个参数,optional mandatory reopen
	3:当归档位置磁盘损坏,可以禁用相应的位置(defer),可以再次打开(enable)
		SQL>alter system set
			log_archive_dest_state_2=defer;
	4: 控制归档进程
		SQL>alter system set
			log_archive_max_processes=3;
	5: 控制本地最小归档成功数
		SQL>alter system set
			log_archive_min_succeed_dest=2;
	
五:显示归档日志信息
	1:使用archive log list命令
	2:显示日志操作模式
		SQL>select name,log_mode from v$database;
	3: 显示归档日志信息
		SQL>select name,sequence#,first_change#,from v$archived_log;
		sequence#:归档日志对应的序列号
		first_change#:归档日志起始的scn值
	4:显示归档日志的位置
		SQL>select dest_name,destination,status from v$archive_dest;
	5: 显示日志历史信息:
		SQL>select * from v$loghist
	6: 显示归档进程信息
		SQL>select * from v$archive_processes;
		
六:用户管理--备份数据库(数据文件,控制文件,参数文件,口令文件)
	1:数据库一致备份(需要关闭数据库,两种日志模式都可以)
		a:找出要备份的数据文件
			SQL>select name from v$database
				union
				select name from v$controlfile;
		b:	关闭数据库,复制文件到备份目录,启动数据库,ok!
	2:数据库非一致性备份,是在open状态,且值适应archivelog状态
		a: 找出要备份的数据文件
			SQL>select name from v$database
		b: 开始备份前,要把数据库设置为备份模式。
			SQL>alter databse begin backup
		c: 可以是用物理的方式复制文件到备份目录下
		d: 结束备份,归档当前日志组
			SQL>alter database end backup;
			SQL>alter system archive log current;

七:用户管理--备份表空间。
		即备份表空间的数据文件,只适用archivelog
	1:脱机备份
		指表空间处于offline状态下,备份表空间所有的数据文件或单个数据文件的过程,
		由于系统表空间和正在使用的undo表空间不能脱机,所以不使用
		a:确定表空间所包含的数据文件
			SQL>select file_name from dba_data_files where tablespace_name='uesrs'
		b: 使表空间脱机状态
			SQL>alter tablespace users offline;
		c:备份文件,复制到备份目录下,使表空间联机
			SQL>alter tablespace users online
	2: 联机备份
		a:确定表空间所包含的数据文件
			SQL>select file_name from dba_data_files where tablespace_name='uesrs'
		b: 使表空间为备份模式
			SQL>alter tablespace users begin backup;
		c:备份文件,复制到备份目录下,使表空间为正常模式
			SQL>alter tablespace users end backup;
	3: 联机备份失败处理
		联机备份时,出现实例失败,再次startup数据库时,会出现错误,处理如下:
		a: 装载数据库
			SQL>startup force mount
		b: 确定处于联机备份状态所有的数据文件
			SQL>select file# from v$backup where status='ACTIVE';
		c: 结束联机备份状态,两种方式:
			SQL>alter database end backup;
			或
			SQL>recove datafile 4
		d: 打开数据库
			SQL>alter database open;
			
七:用户管理--备份控制文件。
	1 载在数据库open状态下,控制文件副本的建立
		SQL>alter database backup controlfile to '..\demo.ctl' reuse;

你可能感兴趣的:(oracle,sql,C++,c,配置管理)