Oracle Users表空间重命名问题解决
需求:默认无法直接删除Oracle的users表空间,直接尝试删除会有报错如下:
SQL> drop tablespace users including contents and datafiles; drop tablespace users including contents and datafiles * ERROR at line 1: ORA-12919: Can not drop the default permanent tablespace
报错很明确,USERS目前作为数据库目前默认的永久表空间,暂不支持直接删除。
进一步查询,看到有很多用户的确是默认用到了USERS表空间:
SQL> USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- SYSRAC USERS 04-JAN-23 SYSTEM SYSTEM 04-JAN-23 SYSBACKUP USERS 04-JAN-23 AUDSYS USERS 04-JAN-23 SYSKM USERS 04-JAN-23 SYS SYSTEM 04-JAN-23 SYSDG USERS 04-JAN-23 OUTLN SYSTEM 04-JAN-23 GSMADMIN_INTERNAL SYSAUX 04-JAN-23 GSMUSER USERS 04-JAN-23 DIP USERS 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- XS$NULL SYSTEM 04-JAN-23 REMOTE_SCHEDULER_AGENT USERS 04-JAN-23 DBSFWUSER SYSAUX 04-JAN-23 ORACLE_OCM USERS 04-JAN-23 SYS$UMF USERS 04-JAN-23 DBSNMP SYSAUX 04-JAN-23 APPQOSSYS SYSAUX 04-JAN-23 GSMCATUSER USERS 04-JAN-23 GGSYS SYSAUX 04-JAN-23 XDB SYSAUX 04-JAN-23 ANONYMOUS SYSAUX 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- WMSYS SYSAUX 04-JAN-23 OJVMSYS USERS 04-JAN-23 CTXSYS SYSAUX 04-JAN-23 MDSYS SYSAUX 04-JAN-23 ORDSYS USERS 04-JAN-23 ORDDATA USERS 04-JAN-23 ORDPLUGINS USERS 04-JAN-23 SI_INFORMTN_SCHEMA USERS 04-JAN-23 OLAPSYS SYSAUX 04-JAN-23 MDDATA USERS 04-JAN-23 APEX_180200 SYSAUX 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- FLOWS_FILES SYSAUX 04-JAN-23 APEX_PUBLIC_USER USERS 04-JAN-23 APEX_INSTANCE_ADMIN_USER USERS 04-JAN-23 PDBADMIN USERS 04-JAN-23 HR SYSAUX 04-JAN-23 JINGYU USERS 06-JAN-23 TEAM USERS 01-MAR-23 40 rows selected.
但现在XTTS测试,客户现有源端的users表空间也需要迁移(有用户数据,注意我们并不推荐在users存放用户数据)
如果真想删除,也是可以的,就是修改默认表空间,但还需要考虑USERS里面是否有数据要迁移,比较麻烦。
现场实施的兄弟提出能否重命名users表空间,这是个好主意,实测是OK,操作也很简单,一条语句搞定:
SQL> alter tablespace users rename to user1; Tablespace altered.
瞬间执行完成,然后再查用户的默认表空间,也已经从users已经变成user1:
SQL> select USERNAME, DEFAULT_TABLESPACE, CREATED from dba_users order by 3; USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- SYSRAC USER1 04-JAN-23 SYSTEM SYSTEM 04-JAN-23 SYSBACKUP USER1 04-JAN-23 AUDSYS USER1 04-JAN-23 SYSKM USER1 04-JAN-23 SYS SYSTEM 04-JAN-23 SYSDG USER1 04-JAN-23 OUTLN SYSTEM 04-JAN-23 GSMADMIN_INTERNAL SYSAUX 04-JAN-23 GSMUSER USER1 04-JAN-23 DIP USER1 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- XS$NULL SYSTEM 04-JAN-23 REMOTE_SCHEDULER_AGENT USER1 04-JAN-23 DBSFWUSER SYSAUX 04-JAN-23 ORACLE_OCM USER1 04-JAN-23 SYS$UMF USER1 04-JAN-23 DBSNMP SYSAUX 04-JAN-23 APPQOSSYS SYSAUX 04-JAN-23 GSMCATUSER USER1 04-JAN-23 GGSYS SYSAUX 04-JAN-23 XDB SYSAUX 04-JAN-23 ANONYMOUS SYSAUX 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- WMSYS SYSAUX 04-JAN-23 OJVMSYS USER1 04-JAN-23 CTXSYS SYSAUX 04-JAN-23 MDSYS SYSAUX 04-JAN-23 ORDSYS USER1 04-JAN-23 ORDDATA USER1 04-JAN-23 ORDPLUGINS USER1 04-JAN-23 SI_INFORMTN_SCHEMA USER1 04-JAN-23 OLAPSYS SYSAUX 04-JAN-23 MDDATA USER1 04-JAN-23 APEX_180200 SYSAUX 04-JAN-23 USERNAME DEFAULT_TABLESPACE CREATED ------------------------------ ------------------------------ --------- FLOWS_FILES SYSAUX 04-JAN-23 APEX_PUBLIC_USER USER1 04-JAN-23 APEX_INSTANCE_ADMIN_USER USER1 04-JAN-23 PDBADMIN USER1 04-JAN-23 HR SYSAUX 04-JAN-23 JINGYU USER1 06-JAN-23 TEAM USER1 01-MAR-23 40 rows selected.
查询数据库默认永久表空间也都变成了USER1:
SQL> SELECT PROPERTY_VALUE FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME = 'DEFAULT_PERMANENT_TABLESPACE'; 2 3 PROPERTY_VALUE ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ USER1
到此这篇关于Oracle Users表空间重命名的文章就介绍到这了,更多相关Oracle Users表空间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
ORALCE substr函数及substrb与字符集关系详解
这篇文章主要介绍了ORALCE substr函数及substrb与字符集关系,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-07-07
Oracle数据库密码复杂度校验脚本utlpwdmg.sql详细解析
我们都知道密码策略加固的参数一般包括密码长度、复杂度检测、最大最小使用时间、过期警报时间、最大登录失败次数以及锁定时间等设置,下面这篇文章主要给大家介绍了关于Oracle数据库密码复杂度校验脚本utlpwdmg.sql详细解析的相关资料,需要的朋友可以参考下2024-04-04
Oracle使用TRUNCATE TABLE清空多个表的应用实例
在数据库管理中,TRUNCATE TABLE 是一个非常实用的命令,然而,在Oracle数据库中,TRUNCATE TABLE 命令是针对单个表的操作,不直接支持在一个语句中清空多个表,本文探讨如何在Oracle环境中高效地对多个表执行 TRUNCATE TABLE,并提供实际的应用场景示例2024-05-05


最新评论