【原】alter database & alter tablespace

简介: 作者:david_zhang@sh 【转载时请以超链接形式标明文章】 链接:http://www.cnblogs.com/david-zhang-index/archive/2012/03/20/2408844.

作者:david_zhang@sh 【转载时请以超链接形式标明文章】

链接:http://www.cnblogs.com/david-zhang-index/archive/2012/03/20/2408844.html?updated=1

DataFile脱机或联机两种方法:

① ALTER DATABASE 语句修改单独的DataFile

② ALTER TABLESPACE 语句修改所有的DataFile

1.在NOARCHIVELOG模式下使DataFile脱机

1 SQL>alter database datafile '/u01/app/oracle/oradata/oracle/users01.dbf' offline drop/offline for drop;

该命令不会删除数据文件,只是将数据文件的状态更改为recover,offline drop与offlline for drop没有区别,offline之后都需要进行recover才可以online,offline drop命令相当于把一个数据文件至于离线状态,并且需要恢复,数据文件的相关信息还会存在数据字典和控制文件中

2.在ARCHIVRLOG模式下使DataFile脱机

1 alter database datafile '/u01/app/oracle/oradata/oracle/users01.dbf' offline
example:

SQL>alter database datafile '/u01/app/oracle/oradata/oracle/users01.dbf' offline;

SQL>alter database datafile '/u01/app/oracle/oradata/oracle/users01.dbf' online;

3.修改TableSpace中所有DataFile

SQL>alter tablespace users offline;

当表空间脱机时,表空间里所有的数据文件将自动脱机,当表空间联机时,数据文件自动联机,无需介质恢复,数据文件脱机,但再联机时需要介质恢复,datafile被offline 时不会触发文件检查点,tablespace被offline时会触发文件检查点,当触发文件检查点时,数据文件scn号才会一致,这也是为什么online datafile需要media recovery而online tablespace不需要的原因。

注:修改某TableSpace中的所有数据文件,但是TableSpace本身的状态不改变

二 使用ALTER TABLESPACE命令删除表空间的数据文件

1 SQL>alter tablesapce users drop datafile '/u01/app/oracle/oradata/oracle/users01.dbf';

Oracle 10G R2开始,该语句可以来删除一个数据文件,并且相应的数据字典信息控制文件和磁盘上的文件也会清除,删除之后的原数据文件序列号可以重用

example:

SQL>select file_name,online_status from dba_data_files;

FILE_NAME                                                    ONLINE_STATUS

/u01/app/oracle/oradata/oracle/users01.dbf                   recovery
1 SQL>alter tablespace users drop datafile '/u01/app/oracle//oracle/users01.dbf';
2 
3 ERROR at line 14 
5 ORA-03263: cannot drop the first file of tablespace users

因为数据文件被offline,所以才报错

注:该语句只能是datafile online的时候才可以使用,如果说对应的数据文件已经是offline for drop,那么仅针对 dictionary managed tablespaces 可用

三 删除表空间

SQL> drop tablespace users including contents and datafiles; 
相关文章
|
9月前
|
数据库
GreenPlum ALTER DATABASE
alter database命令更改了数据库的属性。
56 0
|
数据库
alter database和alter system和alter session的区别
alter database 数据文件、表空间、日志文件等等,和物理上的文件有关系的一些变更,也就是对数据库的更改,一般改变的是物理上的,通过alter database操作时会触发co...
998 0
|
1月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2
服务器Centos7 静默安装Oracle Database 12.2
82 0
|
4月前
|
Oracle 关系型数据库 数据库
windows Oracle Database 19c 卸载教程
打开任务管理器 ctrl+Shift+Esc可以快速打开任务管理器,找到oracle所有服务然后停止。 停止数据库服务 在开始卸载之前,确保数据库服务已经停止。你可以使用以下命令停止数据库服务: net stop OracleServiceORCL Universal Installer 卸载Oracle数据库程序 一般情况运行Oracle自带的卸载程序,如使用Universal Installer 工具卸载。 点击开始菜单找到Oracle,然后点击Oracle安装产品,再点击Universal Installer。 点击之后稍等一会然后会进入进入下图界面,点击卸载产品。 选中要删除的Orac
113 1
|
5月前
|
存储 Oracle 关系型数据库
windows 使用 Oracle Database 19c
Oracle数据库是由美国Oracle Corporation(甲骨文公司)开发和提供的一种关系型数据库管理系统,它是一种强大的关系型数据库管理系统(RDBMS)。它使用表格(表)组织和存储数据,通过SQL语言进行数据管理。数据以表格形式存储,表之间可以建立关系。支持事务处理、多版本并发控制、安全性和权限控制。具有高可用性、容错性,支持分布式数据库和可扩展性。Oracle Corporation提供全面的支持和服务,使其成为企业级应用的首选数据库系统。
59 0
|
10月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2(下)
服务器Centos7 静默安装Oracle Database 12.2(下)
238 0
|
10月前
|
Oracle 安全 关系型数据库
服务器Centos7 静默安装Oracle Database 12.2(上)
服务器Centos7 静默安装Oracle Database 12.2(上)
92 0
|
10月前
|
存储 Oracle 关系型数据库
|
机器学习/深度学习 存储 Oracle
Oracle win32_11gR2_database在Win7下的安装与卸载
Oracle win32_11gR2_database在Win7下的安装与卸载
144 0

热门文章

最新文章