oracle用户创建的对象默认表空间是,Oracle用户默认表空间的问题

偶尔发现的,后续变更的时候需要注意下。

一个用户默认的表空间被Drop掉之后,通过DBA_USERS查询, 用户默认的表空间依然是先前的表空间,虽然相关的表空间已经不存在了。需要手工进行相关用户默认表空间的修改。

现网环境是9i的,存在这样的问题,刚刚在10g/11g/12c都测试了,也存在类似的问题。

具体过程如下:

应用搬迁扩容后,需要删除旧的表空间。

-- 删除前首先确认相关表空间中是否还有segment存在,防止误删

SQL> select owner,segment_name,segment_type from dba_segments where tablespace_name='XX_D02_D30_B';

no rows selected

SQL> select owner,segment_name,segment_type from dba_segments where tablespace_name='XX_D02_I30_B';

no rows selected

-- 删除相关表空间。使用“INCLUDING CONTENTS AND DATAFILES”的选项(具体原因见上一篇文章:Oracle Standby环境ORA-01274 01119 27038报错处理

SQL> DROP TABLESPACE XX_D02_D30_B INCLUDING CONTENTS AND DATAFILES;

Tablespace dropped.

SQL> DROP TABLESPACE XX_D02_I30_B INCLUDING CONTENTS AND DATAFILES;

Tablespace dropped.

--查询发现其中个别用户的默认表空间有问题,需要更改。

SQL> select username,default_tablespace from dba_users;

USERNAME                       DEFAULT_TABLESPACE

------------------------------ ------------------------------

SYS                            SYSTEM

SYSTEM                         SYSTEM

DBSNMP                         SYSTEM

CXX038                         XX_D03_D30_B

OSS                            XX_D02_D30_B

PERFSTAT                       PERFSTAT

IDIP                           XX_D02_D30_B

DBSRVT                         XX_D02_D30_B

WEB                            XX_D02_D30_B

OUTLN                          SYSTEM

WMSYS                          SYSTEM

11 rows selected.

SQL> alter user & 1 default tablespace XX_D03_D30_B;

Enter value for 1: OSS

old   1: alter user & 1 default tablespace XX_D03_D30_B

new   1: alter user OSS default tablespace XX_D03_D30_B

User altered.

.....

引申讨论下Oracle不同版本用户默认表空间的变迁

Oracle 8i:如果创建用户的时候没有指定DEFAULT TABLESPACE,则用户的默认表空间是SYSTEM表空间。

Oracle 9i:同8i,同样是SYSTEM表空间;增加DEFAULT_TEMP_TABLESPACE设置,具体信息可查询DATABASE_PROPERTIES。

Oracle 10g/11g/12c:DB 创建时增加DEFAULT TABLESPACE设置,可以用于设置DB级别用户的默认表空间,如果未设置,则默认还是SYSTEM表空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值