【原】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; 
相关文章
|
10月前
|
数据库
GreenPlum ALTER DATABASE
alter database命令更改了数据库的属性。
56 0
|
数据库
alter database和alter system和alter session的区别
alter database 数据文件、表空间、日志文件等等,和物理上的文件有关系的一些变更,也就是对数据库的更改,一般改变的是物理上的,通过alter database操作时会触发co...
1001 0
|
28天前
|
Oracle 关系型数据库
19c 开启Oracle Database Vault
19c 开启Oracle Database Vault
17 1
|
12天前
|
人工智能 Oracle 关系型数据库
一篇文章弄懂Oracle和PostgreSQL的Database Link
一篇文章弄懂Oracle和PostgreSQL的Database Link
|
28天前
|
SQL Oracle 安全
Oracle Database Vault Access Control Components
Oracle Database Vault Access Control Components
10 0
|
28天前
|
Oracle 安全 关系型数据库
What Is Oracle Database Vault?
The Oracle Database Vault security controls protect application data from unauthorized access, and helps you to comply with privacy and regulatory requirements. You can deploy controls to block privileged account access to application data and control sensitive operations inside the database using
11 0
|
2月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2
服务器Centos7 静默安装Oracle Database 12.2
99 0
|
5月前
|
Oracle 关系型数据库 数据库
windows Oracle Database 19c 卸载教程
打开任务管理器 ctrl+Shift+Esc可以快速打开任务管理器,找到oracle所有服务然后停止。 停止数据库服务 在开始卸载之前,确保数据库服务已经停止。你可以使用以下命令停止数据库服务: net stop OracleServiceORCL Universal Installer 卸载Oracle数据库程序 一般情况运行Oracle自带的卸载程序,如使用Universal Installer 工具卸载。 点击开始菜单找到Oracle,然后点击Oracle安装产品,再点击Universal Installer。 点击之后稍等一会然后会进入进入下图界面,点击卸载产品。 选中要删除的Orac
131 1
|
6月前
|
存储 Oracle 关系型数据库
windows 使用 Oracle Database 19c
Oracle数据库是由美国Oracle Corporation(甲骨文公司)开发和提供的一种关系型数据库管理系统,它是一种强大的关系型数据库管理系统(RDBMS)。它使用表格(表)组织和存储数据,通过SQL语言进行数据管理。数据以表格形式存储,表之间可以建立关系。支持事务处理、多版本并发控制、安全性和权限控制。具有高可用性、容错性,支持分布式数据库和可扩展性。Oracle Corporation提供全面的支持和服务,使其成为企业级应用的首选数据库系统。
61 0
|
11月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2(下)
服务器Centos7 静默安装Oracle Database 12.2(下)
243 0

热门文章

最新文章