首页  电脑故障排除  病毒安全 电脑基础知识  硬件知识  软件应用知识  操作系统知识  编程程序

美国编程网址 日本编程网址 法国编程网址 德国编程网址 韩国编程网址 香港编程网址 台湾编程网址

您的位置:首页>>编程程序>>Oracle

oracle数据库备份与恢复 a piece of cake (3)

 
oracle数据库备份与恢复 a piece of cake (3)
oracle数据库备份与恢复 a piece of cake (3)
oracle数据库备份与恢复 a piece of cake (3)http://www.chinaunix.net作者:Ganku发表于:2003-08-26 10:49:53oracle数据库在线备份:(windows平台) 1.检查你的数据库是否运行在Archive模式下。 以system连接数据库运行以下的查询语句。 SQL>selectname,log_modefromv$database; NAMELOG_MODE --------------------- DEMOARCHIVELOG 如果你的log_mode显示为archivelog,OK你的数据库可以进行在线的备份。否则参考文档修改数据为archivemode。 2.建立教本管理目录C:\oracle\admin\adminscript 3.建立数据库备份的脚本 在上面建立的目录下建立如下的两个脚本。 3.1建立执行备份任务的脚本(批处理文件) 文件内容如下: @echoOFF Rem=========================================================================== RemNAME-Open_Backup_Run.bat RemFUNCTION-CreatesabackupscriptforaUserManagedbackup RemNOTES-ThisscriptwillcreateascriptandrunOScopycommands Remonclosed(cold)database RemMODIFIED-TianliangGuo02/08/12 Rem=========================================================================== RemForWindows,setenvironmentvariablesfortherootpath. setORACLE_SID=TSTDB setORACLE_CONNECTSTRING=tstdb setORACLE_BASE=c:\oracle setORACLE_HOME=%ORACLE_BASE%\ora81 setORACLE_DATA=%ORACLE_BASE%\oradata\%ORACLE_SID% setORACLE_ADMIN=%ORACLE_BASE%\admin\%ORACLE_SID% %ORACLE_HOME%\bin\sqlplus/nolog@Open_Backup.sql>Open_Backup.sql.log 3.2建立完成备份认为的命令文件(sqlplus内执行的sql脚本) 文件内容如下: Rem===================================================================================== RemNAME-Open_Backup.sql RemFUNCTION-CreatesabackupcommandfileforaUserManagedOpendatabasebackup RemNOTES-ThisscriptwillcreateascriptandrunOScopycommands Remonanopen(hot)database.Thedatafilebackupswillbeinconsistent. RemMODIFIED-Mr.TianliangGuo2002/08/11 Rem===================================================================================== Rem RemSetSQL*Plusvariablestomanipulateoutput Rem setheadingoff setpagesize0 setlinesize600 setverifyoff settrimspoolon setfeedbackoff RemSetSQL*Plususervariablesusedinscript defineadm='sys' definepwd='oracle8i' RemWindowsUservariables definedir='C:\oracle\admin\TSTDB\backup' definefil='open_backup_commands.sql' definespo='open_backup_output.lst' definectl='&dir\control.ctl' definecpy='ocopy' Remlogindatabase connect&adm/&pwdassysdba; RemCreateafilecontainingallthefilecopycommandsneededforopenusermanagedbackup setserveroutputon spool&fil promptspool&spo promptarchiveloglist;; promptaltersystemswitchlogfile;; promptaltersystemarchivelogall;; DECLARE CURSORcur_tablespaceIS SELECTtablespace_name FROMdba_tablespaces; CURSORcur_datafile(tnVARCHAR)IS SELECTfile_name FROMdba_data_files WHEREtablespace_name=tn; BEGIN FORctINcur_tablespaceLOOP dbms_output.put_line('altertablespace'||ct.tablespace_name||'beginbackup;'); FORcdINcur_datafile(ct.tablespace_name)LOOP dbms_output.put_line('host&cpy'||cd.file_name||'&dir'); ENDLOOP; dbms_output.put_line('altertablespace'||ct.tablespace_name||'endbackup;'); ENDLOOP; END; / promptaltersystemswitchlogfile;; promptalterdatabasebackupcontrolfileto'&ctl'REUSE;; promptalterdatabasebackupcontrolfiletotrace;; promptarchiveloglist;; promptspooloff spooloff; RemRunthecopyfilecommandsfromtheoperatingsystem @& exit; 4.修改教本定义的变量 在运行教本中定义的一些变量,将其改为本地数据库安装环境的变量。 需要修改的变量有, 在close_Backup_run.bat脚本中: setORACLE_SID=TSTDB setORACLE_CONNECTSTRING=tstdb setORACLE_BASE=c:\oracle setORACLE_HOME=%ORACLE_BASE%\ora81 在close_backup.sql脚本中: defineadm='sys' definepwd='oracle8i' definedir='C:\oracle\admin\TSTDB\backup' definectl='&dir\control.ctl' 5.执行数据库备份任务 在$ORACLE_BASE\admin\admin_script目录下运行open_Backup_run.bat 6.执行自动备份 在windows系统中添加计划任务,定期运行open_Backup_run.bat 如果你有问题可以联系: 站内的短信:ganku mail:peter_guo@pub.szedi.com.cn guo_tianliang@yahoo.com

查看上一页  返回分类首页 返回96PC首页  查看下一页

  版权所有:电脑知识大全 网站备案:粤ICP备07031496号  联系我们

友情链接:母婴知识  外贸商务网  娱乐频道  汽车维修知识  股票入门知识  游戏攻略秘籍  本站空间由安信网络提供