Oracle重建表空间操作实例
2017-10-22 11:59
399 查看
由于环境维护或者性能测试需要,经常需要对表空间进行重建操作。重建表空间操作主要分3中情况介绍,分别是业务表空间、临时表空间和回滚段表空间的重建。
1、备份当前需要使用的数据库,可以使用Oracle自带的expdp或者exp命令。
2、删除业务数据库。
3、停掉ORACLE监听,重启ORACLE实例,确保断开已有的连接和新连接的建立。
4、删除业务表空间
5、新建业务表空间
6、使用impdp/imp命令导入备份的数据库,还原业务数据库。
2、创建新的undo表空间
3、修改使用新建的回滚表空间
4、查看所有在UNDOTBS1的undo segment都已offline。
5、步骤4中的状态全部offline后,将旧的回滚表空间udotbs1状态修改为offline。
6、删除旧的undo表空间
7、操作完成。
2、查看用户使用的默认临时表空间
3、创建新的temp表空间
4、修改默认表空间为新创建的临时表空间temp2
5、offline旧的临时表空间temp
6、删除旧的临时表空间temp
7、操作完成
重建业务表空间
由于业务规划要求,重建后的业务表空间名需要与原有的一致。操作上和重建临时表空间和重建回滚段表空间有不同。1、备份当前需要使用的数据库,可以使用Oracle自带的expdp或者exp命令。
2、删除业务数据库。
3、停掉ORACLE监听,重启ORACLE实例,确保断开已有的连接和新连接的建立。
4、删除业务表空间
5、新建业务表空间
6、使用impdp/imp命令导入备份的数据库,还原业务数据库。
重建undo表空间
1、查看当前使用undo表空间和对应数据文件路径SQL> show parameter undo SQL> select file_name,tablespace_name from dba_data_files where tablespace_name='UNDOTBS1';
2、创建新的undo表空间
SQL> create undo tablespace undotbs2 datafile '/home/oracle/oradata/undotbs2.dbf' size 1024M;
3、修改使用新建的回滚表空间
SQL> alter system set undo_tablespace='undotbs2' scope=both;
4、查看所有在UNDOTBS1的undo segment都已offline。
SQL> select SEGMENT_NAME ,STATUS ,TABLESPACE_NAME from dba_rollback_segs where TABLESPACE_NAME='UNDOTBS1' and STATUS='OFFLINE';
5、步骤4中的状态全部offline后,将旧的回滚表空间udotbs1状态修改为offline。
SQL> alter tablespace undotbs1 offline;
6、删除旧的undo表空间
SQL> drop tablespace undotbs1 including contents and datafiles;
7、操作完成。
重建temp表空间
1、查看当前使用的temp表空间相关信息SQL> select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files; SQL> select name,bytes/1024/1024 file_size,status,enabled from v$tempfile;
2、查看用户使用的默认临时表空间
SQL> select username,temporary_tablespace from dba_users;
3、创建新的temp表空间
CREATE TEMPOARY TABLESPACE TEMP1 TEMPFILE '/home/oracle/oradata/TEMP1.dbf' SIZE 1024M;
4、修改默认表空间为新创建的临时表空间temp2
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP1;
5、offline旧的临时表空间temp
ALTER DATABASE TEMPFILE '/home/oracle/oradata/TEMP.dbf' OFFLINE;
6、删除旧的临时表空间temp
DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES;
7、操作完成
相关文章推荐
- oracle 创建表用户/空间/临时表空间设置用户默认表空间 为用户授权操作实例
- ORACLE 表空间基本操作
- Oracle - 数据库的实例、表空间、用户、表之间关系
- Oracle/SQLPlus 相关操作(表空间,用户,权限,字符集等设置)
- 【oracle】 表名,表字段,表空间等的操作
- oracle笔记整理16——表空间利用率、锁表、锁包、dbms_job操作
- Oracle:SQL语句--对表空间的操作——删除表空间
- Oracle spatial 空间数据SQL查询操作相关实例
- Oracle - 数据库的实例、表空间、用户、表之间关系
- oracle 的表空间实例详解
- Oracle - 数据库的实例、表空间、用户、表之间关系
- Oracle操作实例总结
- Oracle中字符操作函数实例
- ORACLE中的日期加减操作实例介绍
- Oracle 表空间基本操作
- java操作oracle空间信息介绍
- oracle命名空间和用户的基本操作
- Oracle中大文本操作实例
- oracle 10G中临时表空间组的操作和使用
- Oracle体系结构之-数据库、表空间、实例简介