热备笔记实验

早上突然断电。本来笔记本的插头就忘记插了,电池没用多久就熄火

最纳闷的是接入电源后本机数据库竟然挂掉了,嘿嘿,正好试一试前几天应用的热备回复

以下是我的全程

C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 5月 29 15:39:32 2008
Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
SQL> conn /as sysdba
已连接。
SQL>
SQL> alter tablespace system begin backup;
*
ERROR 位于第 1 行:
ORA-01123: 无法启动联机备份;未启用介质恢复
SQL> alter database archivelog;
alter database archivelog
*
ERROR 位于第 1 行:
ORA-01126: 对于此操作,数据库必须以 EXCLUSIVE 模式安装且未打开
SQL> archive log list;
数据库日志模式             非存档模式
自动存档             禁用
存档终点            D:\oracle\ora92\RDBMS
最早的概要日志序列     94
当前日志序列           96
SQL> shutdown immedi
SP2-0717: 非法的 SHUTDOWN 选项
SQL> shutdown;
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area  135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
数据库装载完毕。
SQL> alter database archivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
以下语句设置为自动存档
SQL> alter system set log_archive_start=true(false) scope=spfile;
系统已更改。
SQL> archive log list;
数据库日志模式            存档模式
自动存档             禁用
存档终点            D:\oracle\ora92\RDBMS
最早的概要日志序列     94
下一个存档日志序列   96
当前日志序列           96
//查询表空间对应的数据文件,一般表空间名跟对应数据文件名是相同的,可以跳过这一步。
SQL> select v$tablespace.name,v$datafile.name from v$tablespace,v$datafile where
 v$tablespace.ts#=v$datafile.ts#;
//将表空间设为备份状态.
SQL> alter tablespace system begin backup;
表空间已更改。
//将数据文件备份到目录d:\oracle\backup下.
SQL> host copy D:\ORACLE\ORADATA\SINITEK\GSJJ.DBF D:\oracle\backup\
已复制         1 个文件。
SQL> alter tablespace system end backup;
表空间已更改。
alter database noarchivelog;(设置数据库为归档日志模式)
做这样的操作必须先SQL> shutdown;
再SQL> startup mount 启动数据库实例到mount状态,但不要打开。
SQL> $ copy D:\oracle\backup\GSJJ.DBF D:\oracle\oradata\sinitek\
已复制         1 个文件。
SQL> recover datafile 'D:\oracle\oradata\sinitek\GSJJ.DBF';
ORA-12571: TNS: 包写入程序失败
SQL> conn /as sysdba
已连接。
SQL> recover datafile 'D:\oracle\oradata\sinitek\GSJJ.DBF';
完成介质恢复。
SQL> startup;
ORA-01081: 无法启动已在运行的 ORACLE --- 请首先关闭
SQL> shutdown;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup;
ORACLE 例程已经启动。
总结:
1.热备份必须在数据库归档模式下进行
2.在备份的同时,数据库的用户可以进行操作,数据库对应的物理文件的内容是不断变化的
3.归档日志必须是备份后的所有日志才可以实现数据库的完全恢复
4.可以备份除临时文件以外的所有数据文件,如果在恢复过程中,发现损坏多个数据文件,可以一个一个数据文件的恢复
5.这是我本机,默认安装oracle的时候是非archivelog模式,所以要修改的,中间会关闭数据库切换模式,如果是正式机就不能再这样操作,但是首先保证正式机器一直运行在归档模式
6.另外老试的逻辑备份还是很土,中间很容易丢失其他信息,导来导去的数据库容易莫名的产生字段空格(XX项目遇到1次).
 
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10586440/viewspace-324211/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10586440/viewspace-324211/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值