`
281107072
  • 浏览: 14890 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

DROP TABLESPACE时数据文件是否会自动删除

阅读更多
                      DROP TABLESPACE时数据文件是否会自动删除

OMF和非OMF管理的数据文件在DROP TABLESPACE时是否会自动删除,做了测试:

SQL> alter system set db_create_file_dest='/oradata/data/standby' scope=both;

System altered.

SQL> show parameter db_create

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /oradata/data/standby
db_create_online_log_dest_1          string
db_create_online_log_dest_2          string
db_create_online_log_dest_3          string
db_create_online_log_dest_4          string
db_create_online_log_dest_5          string
SQL> create tablespace t3 datafile size 10m;

Tablespace created.

SQL> select * from v$tablespace;

       TS# NAME                           INC
---------- ------------------------------ ---
         0 SYSTEM                         YES
         1 UNDOTBS1                       YES
         2 TEMP                           YES
         3 INDX                           YES
         4 USR                            YES
         5 KONG                           YES
         6 TEST                           YES
         9 T1                             YES
         8 LOGMNRTS                       YES
        10 T2                             YES
        11 T3                             YES

11 rows selected.

SQL> select name from v$datafile
  2  where ts# = 11;

NAME
--------------------------------------------------------------------------------
/oradata/data/standby/o1_mf_t3_464smo7s_.dbf

SQL> create table t100 (id int) tablespace t3;

Table created.

SQL> drop tablespace t3;
drop tablespace t3
*
ERROR at line 1:
ORA-01549: tablespace not empty, use INCLUDING CONTENTS option


SQL> drop tablespace t3 including contents
  2  ;

Tablespace dropped.

SQL> !ls -l /oradata/data/standby/o1_mf_t3_464smo7s_.dbf
ls: 0653-341 The file /oradata/data/standby/o1_mf_t3_464smo7s_.dbf does not exist.

看到在DROP TABLESPACE时,就算没有加上 and datafiles是选项,ORACLE也会自动删除数据文件;

SQL> create tablespace t3 datafile '/oradata/data/standby/data/t3.dbf' size 10m;

Tablespace created.

SQL> create table t100 (a int) tablespace t3;

Table created.

SQL> drop tablespace t3 ;
drop tablespace t3
*
ERROR at line 1:
ORA-01549: tablespace not empty, use INCLUDING CONTENTS option


SQL> drop tablespace t3  including contents;

Tablespace dropped.

SQL> !ls -l /oradata/data/standby/data/t3.dbf
-rw-r-----   1 oracle   dba        10493952 Jun 25 23:42 /oradata/data/standby/data/t3.dbf

没有加上and datafiles参数时,oracle不会自动删除datafiles。

SQL> create tablespace t3 datafile '/oradata/data/standby/data/t4.dbf' size 10m;

Tablespace created.

SQL> create table t100 (a int) tablespace t3;

Table created.

SQL> drop tablespace t3  including contents and datafiles;

Tablespace dropped.

SQL> !ls -l /oradata/data/standby/data/t4.dbf
ls: 0653-341 The file /oradata/data/standby/data/t4.dbf does not exist.

加上and datafiles参数时,oracle会自动删除datafiles。

SQL> alter system set db_create_file_dest='' scope=both;

System altered.

SQL> create tablespace t3 datafile '/oradata/data/standby/data/t4.dbf' size 10m;

Tablespace created.

SQL> create table t100 (a int) tablespace t3;

Table created.

SQL> drop tablespace t3  including contents and datafiles;

Tablespace dropped.

SQL> !ls -l /oradata/data/standby/data/t4.dbf
ls: 0653-341 The file /oradata/data/standby/data/t4.dbf does not exist.

SQL>

分享到:
评论

相关推荐

    oracle表空间和数据文件的详细操作(纯手工)

    删除数据文件时需要注意,如果是表空间中的最后一个数据文件,则删除操作会自动删除整个表空间。 ```sql ALTER TABLESPACE DATA01 DROP DATAFILE 'D:\DATA01C.DBF'; ``` #### 8. 查看数据文件的信息 可以通过查询...

    表空间及临时文件的操作

    在这个例子中,“sales”是我们新创建的表空间的名字,“C:\1.txt”指定了数据文件的位置,初始大小为10MB,并且设置自动扩展,每次增加1MB,最大不超过100MB。 #### 二、添加数据文件到现有表空间 有时候我们需要...

    create delete tablespace user

    4. **设定自动扩展**:可选择是否允许数据文件自动扩展,以及扩展的大小和次数。 5. **设定表空间的属性**:例如,是否为只读,以及存储参数(如初始化参数、段空间管理等)。 接下来,我们讨论**删除表空间**...

    oracle10g表空间操作命令

    在Oracle 10g数据库管理中,表空间(Tablespace)是重要的逻辑存储结构单元,用于组织和管理数据库中的数据文件。本文将详细介绍如何通过Oracle 10g SQL命令进行表空间的操作,包括创建、调整大小、删除等,并提供...

    ORACLE_表空间操作(图)

    在Oracle数据库管理中,表空间(Tablespace)是数据逻辑存储结构的重要组成部分,它由一个或多个数据文件组成,用于存储数据库对象如表、索引等。本文将深入解析Oracle表空间的操作,包括通过图形界面和SQL命令进行...

    oracle数据库存储管理

    删除数据文件可以使用 DROP TABLESPACE 语句,例如删除名为 mytbs 的表空间: DROP TABLESPACE mytbs INCLUDING CONTENTS AND DATAFILES; 修改数据文件可以使用 ALTER DATABASE 语句,例如修改名为 mytbs 的数据...

    专题资料(2021-2022年)09表空间和数据文件的管理.ppt

    - **删除数据文件**:使用`ALTER DATABASE DROP DATAFILE`命令,但需谨慎操作,以免丢失数据。 - **查看数据文件**:利用`DBA_DATA_FILES`、`USER_DATA_FILES`视图查看数据文件详情。 4. **管理策略**: - 表...

    专题资料(2021-2022年)7 表空间和数据文件管理.ppt

    当内存排序区不足以处理排序操作时,Oracle会自动使用临时表空间。创建临时表空间的语句如下: ```sql CREATE TEMPORARY TABLESPACE temp1 TEMPFILE 'D:\oracle\oradata\student\user4.dbf' SIZE 5M; ``` 7.3 表...

    Oracle的UNDOTBS01.DBF文件太大的解决办法

    这可以通过关闭数据文件的自动扩展属性来实现。具体操作如下: ```sql ALTER DATABASE DATAFILE 'full_path\undotbs01.dbf' AUTOEXTEND OFF; ``` 其中`full_path\undotbs01.dbf`需要替换为实际的UNDOTBS01.DBF文件...

    oracle 9i UNDO表空间数据文件丢失恢复

    当UNDO表空间的数据文件丢失时,可能会导致数据库无法正常运行,甚至引发数据丢失的风险。本文将详细介绍Oracle 9i环境下UNDO表空间数据文件丢失后的恢复步骤及注意事项。 #### 二、准备工作 1. **登录到Oracle...

    Oracle导入dmp文件最安全步骤

    1. **创建表空间**:根据需求设定,如`CREATE TABLESPACE "DB_QQTB" ...`,注意应指定数据文件的路径、大小和管理方式。 2. **创建用户并授权**:创建新用户,如`CREATE USER FZCX identified by "FZCX" ...`,并...

    oracle快速删除表空间

    最后,记得检查操作系统层面是否已经删除了物理数据文件。在某些情况下,Oracle可能不会自动从文件系统中删除这些文件。 7. **安全考虑** 删除表空间是不可逆的,因此一定要谨慎操作。在执行删除操作之前,最好创建...

    SQL语句之ALTER TABLESPACE 语句详解.pdf

    这些功能包括但不限于添加和删除数据文件、重命名表空间、设置自动扩展大小以及启用或禁用数据加密等。熟练掌握这些操作对于确保数据库性能和安全至关重要。对于不同的存储引擎(如NDB和InnoDB),某些操作的支持...

    Oracle 表空间建立方法

    - `DROP DATAFILE`: 删除指定的数据文件。 ##### 表空间离线与在线 表空间可以设置为离线或在线状态。 ```sql ALTER TABLESPACE tablespace_name OFFLINE; ALTER TABLESPACE tablespace_name ONLINE; ``` - `...

    ORACLE表空间操作

    ### ORACLE表空间操作知识点详解 #### 一、表空间创建与管理 ...- 在更改数据文件位置时,需注意新位置的磁盘空间是否足够,并确认目标路径的有效性。 以上就是关于Oracle表空间操作的详细介绍,希望对您有所帮助。

    oracl创建表空间

    这些数据通常在事务结束时自动被清除。创建一个名为`ndgl_isc_temp`的临时表空间的命令如下: ```sql CREATE TEMPORARY TABLESPACE ndgl_isc_temp TEMPFILE 'E:\app\Administrator\oradata\orcl\ndgl_isc_temp.dbf' ...

    Oracle数据库用户角色、表空间创建、删除命令

    如果在删除表空间之前误删了对应的数据文件,可能会导致数据库无法正常启动和关闭。此时可通过以下步骤恢复: 1. **连接到数据库**: ```sql SQLPLUS / AS SYSDBA ``` 2. **如果数据库已启动,则先执行**: ``...

Global site tag (gtag.js) - Google Analytics