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>
分享到:
相关推荐
删除数据文件时需要注意,如果是表空间中的最后一个数据文件,则删除操作会自动删除整个表空间。 ```sql ALTER TABLESPACE DATA01 DROP DATAFILE 'D:\DATA01C.DBF'; ``` #### 8. 查看数据文件的信息 可以通过查询...
在这个例子中,“sales”是我们新创建的表空间的名字,“C:\1.txt”指定了数据文件的位置,初始大小为10MB,并且设置自动扩展,每次增加1MB,最大不超过100MB。 #### 二、添加数据文件到现有表空间 有时候我们需要...
4. **设定自动扩展**:可选择是否允许数据文件自动扩展,以及扩展的大小和次数。 5. **设定表空间的属性**:例如,是否为只读,以及存储参数(如初始化参数、段空间管理等)。 接下来,我们讨论**删除表空间**...
在Oracle 10g数据库管理中,表空间(Tablespace)是重要的逻辑存储结构单元,用于组织和管理数据库中的数据文件。本文将详细介绍如何通过Oracle 10g SQL命令进行表空间的操作,包括创建、调整大小、删除等,并提供...
在Oracle数据库管理中,表空间(Tablespace)是数据逻辑存储结构的重要组成部分,它由一个或多个数据文件组成,用于存储数据库对象如表、索引等。本文将深入解析Oracle表空间的操作,包括通过图形界面和SQL命令进行...
删除数据文件可以使用 DROP TABLESPACE 语句,例如删除名为 mytbs 的表空间: DROP TABLESPACE mytbs INCLUDING CONTENTS AND DATAFILES; 修改数据文件可以使用 ALTER DATABASE 语句,例如修改名为 mytbs 的数据...
- **删除数据文件**:使用`ALTER DATABASE DROP DATAFILE`命令,但需谨慎操作,以免丢失数据。 - **查看数据文件**:利用`DBA_DATA_FILES`、`USER_DATA_FILES`视图查看数据文件详情。 4. **管理策略**: - 表...
当内存排序区不足以处理排序操作时,Oracle会自动使用临时表空间。创建临时表空间的语句如下: ```sql CREATE TEMPORARY TABLESPACE temp1 TEMPFILE 'D:\oracle\oradata\student\user4.dbf' SIZE 5M; ``` 7.3 表...
这可以通过关闭数据文件的自动扩展属性来实现。具体操作如下: ```sql ALTER DATABASE DATAFILE 'full_path\undotbs01.dbf' AUTOEXTEND OFF; ``` 其中`full_path\undotbs01.dbf`需要替换为实际的UNDOTBS01.DBF文件...
当UNDO表空间的数据文件丢失时,可能会导致数据库无法正常运行,甚至引发数据丢失的风险。本文将详细介绍Oracle 9i环境下UNDO表空间数据文件丢失后的恢复步骤及注意事项。 #### 二、准备工作 1. **登录到Oracle...
1. **创建表空间**:根据需求设定,如`CREATE TABLESPACE "DB_QQTB" ...`,注意应指定数据文件的路径、大小和管理方式。 2. **创建用户并授权**:创建新用户,如`CREATE USER FZCX identified by "FZCX" ...`,并...
最后,记得检查操作系统层面是否已经删除了物理数据文件。在某些情况下,Oracle可能不会自动从文件系统中删除这些文件。 7. **安全考虑** 删除表空间是不可逆的,因此一定要谨慎操作。在执行删除操作之前,最好创建...
这些功能包括但不限于添加和删除数据文件、重命名表空间、设置自动扩展大小以及启用或禁用数据加密等。熟练掌握这些操作对于确保数据库性能和安全至关重要。对于不同的存储引擎(如NDB和InnoDB),某些操作的支持...
- `DROP DATAFILE`: 删除指定的数据文件。 ##### 表空间离线与在线 表空间可以设置为离线或在线状态。 ```sql ALTER TABLESPACE tablespace_name OFFLINE; ALTER TABLESPACE tablespace_name ONLINE; ``` - `...
### ORACLE表空间操作知识点详解 #### 一、表空间创建与管理 ...- 在更改数据文件位置时,需注意新位置的磁盘空间是否足够,并确认目标路径的有效性。 以上就是关于Oracle表空间操作的详细介绍,希望对您有所帮助。
这些数据通常在事务结束时自动被清除。创建一个名为`ndgl_isc_temp`的临时表空间的命令如下: ```sql CREATE TEMPORARY TABLESPACE ndgl_isc_temp TEMPFILE 'E:\app\Administrator\oradata\orcl\ndgl_isc_temp.dbf' ...
如果在删除表空间之前误删了对应的数据文件,可能会导致数据库无法正常启动和关闭。此时可通过以下步骤恢复: 1. **连接到数据库**: ```sql SQLPLUS / AS SYSDBA ``` 2. **如果数据库已启动,则先执行**: ``...