oracle 11g手工热备-表空间

手工热备必须在归档模式下进行,只读表空间不能做热备,临时表空间不需要做热备。

[email protected]> archive log list;——开启了归档
Database log mode          Archive Mode
Automatic archival         Enabled
Archive destination        /u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch
Oldest online log sequence     1
Next log sequence to archive   1
Current log sequence           1
[email protected]>
[email protected]> create table t8(id number) tablespace users;——创建表并插入数据提交
Table created.
[email protected]> insert into t8 values(88);
1 row created.
[email protected]> commit;
Commit complete.
[email protected]> select * from t8;
    ID
----------
    88
[email protected]> alter tablespace users begin backup;——开始热备users表空间
Tablespace altered.
[[email protected] ~]$ cp users01.dbf /home/oracle/——备份用户表空间数据文件
[email protected]> alter tablespace users end backup; ——结束备份users表空间
Tablespace altered.

关闭数据库,删除users数据文件,然后再启动数据库

[email protected]> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
删除users数据文件
[[email protected] PROD]$ rm -rf users01.dbf

[email protected]> startup
ORACLE instance started.
Total System Global Area  835104768 bytes
Fixed Size          2257840 bytes
Variable Size         536874064 bytes
Database Buffers      289406976 bytes
Redo Buffers            6565888 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: ‘/u01/app/oracle/oradata/PROD/users01.dbf‘——报错,找不到数据文件

拷贝备份好的users数据文件到数据库原目录

 mv /home/oracle/users01.dbf /u01/app/oracle/oradata/PROD ——拷贝数据文件
 [email protected]> select open_mode from v$database;
OPEN_MODE
--------------------
MOUNTED
[email protected]> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 4 needs media recovery
ORA-01110: data file 4: ‘/u01/app/oracle/oradata/PROD/users01.dbf‘
--------查询users数据文件的id为4-----------
select file_name,file_id,tablespace_name from dba_data_files where tablespace_name=‘USERS‘;
FILE_NAME                         FILE_ID TABLESPACE_NAME
-------------------------------------------------- ---------- ------------------------------
/u01/app/oracle/oradata/PROD/users01.dbf            4 USERS

[email protected]> recover datafile 4;——恢复数据文件4号
Media recovery complete.
[email protected]> alter database open;——打开数据文件
Database altered.
[email protected]> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE
[email protected]> select * from t8;
    ID
----------
    88

原文地址:http://blog.51cto.com/12185273/2064838

时间: 2024-11-10 07:33:04

oracle 11g手工热备-表空间的相关文章

oracle 11g 手工热备-数据库

查看数据库是否处于归档模式,开启数据库热备模式,拷贝操作系统数据库数据文件到备份目录 [email protected]> archive log list Database log mode Archive Mode Automatic archival Enabled Archive destination /u01/app/oracle/product/11.2.0/dbhome_1/dbs/arch Oldest online log sequence 2 Next log sequen

oracle 11g 手工冷备

查看数据库是否处于非归档模式关闭数据库shutdown immediate备份控制文件和数据文件(没有备份日志文件,建议一起备份) [[email protected] PROD]$ ll total 2014624 -rw-r----- 1 oracle oinstall 9748480 Jan 24 21:49 control01.ctl -rw-r----- 1 oracle oinstall 9748480 Jan 24 21:49 control02.ctl -rw-r----- 1

Oracle 10g AND Oracle 11g手工建库案例--Oracle 10g

Oracle 10g AND Oracle 11g手工建库案例--Oracle 10g 系统环境: 操作系统: RedHat EL6 Oracle:  Oracle 10g and Oracle 11g 手工建库相对来说非常easy实现,本案例是从10g和11g,通过手工建库的方式做一个简单的对照,能够看出11g和10g之间的一个简单的差异! 案例一: 在Oracle 10g 环境下手工建库 DB_NAME='cuug' INSTANCE_NAME='cuug' 1.建立Instance的初始化

解决 Oracle 11g 不能导出空表的问题

--解决 Oracle 11g 不能导出空表的问题 --执行下面语句,查询数据库中的空表,同时产生分配空间.把生成的结果复制出来并执行. select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 --如果以上方法不行,可改用下面方法 select 'alter table '||table_name||' allocate extent(size 64k);' from tab

orcale 11g安装,创建表空间,用户,授权用户

一.卸载旧oracle 用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢?那就是直接注册表清除,步骤如下: 1. 开始->设置->控制面板->管理工具->服务     停止所有Oracle服务. 2. 开始->程序->Oracle - OraDb11g_home1->Oracle安装产品-> Universal Installer     卸装所有Oracle产品,但Universal I

oracle 11g下冷备数据库

1.关闭数据库 [email protected]>shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down. 2.退出[email protected]>exitDisconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning,

【转】Oracle - 数据库的实例、表空间、用户、表之间关系

[转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区. 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘

Oracle - 数据库的实例、表空间、用户、表之间关系

完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区. 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件.Oracle有一个很大的内存快,成为全局区(SGA

oracle 查询表的大小,表空间的使用情况,默认表空间

oracle 查询表的大小,表空间的使用情况,默认表空间 oracle 查询表的大小,表空间的使用情况,默认表空间 --查看某张表占用磁盘空间大小 ( 表名大写 ) Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name having Segment_Name='表名'; 查看用户默认表空是那个 select username,default_tablespace from dba_user