需求:默认无法直接删除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表空间重命名的更多相关文章

  1. oracle数据库表空间及归档

    --表空间(TableSpace)是Oracle的开创性理念.表空间使得数据库管理更加灵活,而且极大地提高了数据库性能. --作用 :1.避免磁盘空间突然耗竭的风险 2.规划数据更灵活 3.提高数据库 ...

  2. [转帖]Oracle报错ORA-26563--当重命名表时碰到物化视图

    Oracle报错ORA-26563--当重命名表时碰到物化视图 https://www.toutiao.com/i6739137279115133447/ 原创 波波说运维 2019-09-26 00 ...

  3. 在oracle表中增加、修改、删除字段,表的重命名,字段顺序调整

    增加字段语法:alter table tablename add (column datatype [default value][null/not null],….); 说明:alter table ...

  4. 转 关于oracle 分区表 表空间以及索引的总结

    关于oracle的表空间,分区表,以及索引的总结关键字: oracle, 表空间, 分区表, 索引 上周第一次做数据库测试碰到了很多问题特此总结: 表空间: Oracle的UNDOTBS01.DBF文 ...

  5. oracle数据库表空间追加数据库文件方法

    oracle数据库表空间追加数据库文件方法   针对非大文件方式表空间,允许追加文件进行表空间的扩展,单个文件最大大小是32G  第一种方式:表空间增加数据文件    www.2cto.com   1 ...

  6. Oracle 设置表空间自增长

    Oracle修改表空间大小 使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入数据表时发生错误: 查了很多资料发现原来是Oracle表空间限制,导致无法继续导入数据 ...

  7. Oracle Temp表空间切换

    来源于:  http://www.2cto.com/database/201507/418564.html 一.TEMP表空间作用 临时表空间主要用途是在数据库进行排序运算.管理索引.访问视图等操作时 ...

  8. Oracle基础表空间建立,以及练习

    Oracle的表空间创建,可以采用网页的https://127.0.0.1:1158/em来进入oracle的页面进行创建表空间. 利用plsqldev.exe程序在表空间里添加数据: 首先要在use ...

  9. [转载]Oracle修改表空间大小

    Oracle修改表空间大小 使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入数据表时发生错误: 查了很多资料发现原来是Oracle表空间限制,导致无法继续导入数据 ...

  10. Oracle建立表空间和用户

    Oracle建立表空间和用户 建立表空间和用户的步骤: 用户 建立:create user 用户名 identified by "密码"; 授权:grant create sess ...

随机推荐

  1. 最强分布式搜索引擎——ElasticSearch

    最强分布式搜索引擎--ElasticSearch 本篇我们将会介绍到一种特殊的类似数据库存储机制的搜索引擎工具--ES elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以 ...

  2. 在线编写Markdown

    部署 editor.md 实现在线编写MD 安装Nginx服务 apt install nginx yum install nginx 修改Nginx配置 root@cby:~# vim /etc/n ...

  3. Terraform 系列-Terraform Cloud 比 Terraform OSS 有哪些增强?

    系列文章 Terraform 系列文章 前言 最近在使用 Terraform Cloud 来置备 OCI 的 Always Free Tier, 发现它非常好用,相比 Terraform OSS, 用 ...

  4. Pytorch实现分类器

    本文实现两个分类器: softmax分类器和感知机分类器 Softmax分类器 Softmax分类是一种常用的多类别分类算法,它可以将输入数据映射到一个概率分布上.Softmax分类首先将输入数据通过 ...

  5. 如何根据需求选择合适的数据库管理工具?Navicat OR DBeaver

    1.写在前面 在阅读本文之前,糖糖给大家准备了Navicat和DBeaver安装包,在公众号内回复"Navicat"或"DBeaver"或"数据库管理 ...

  6. springCloud Alibaba服务的注册与发现之eureka搭建

    1.创建eureka微服务模块.导入maven依赖. <dependency> <groupId>org.springframework.cloud</groupId&g ...

  7. OpenCV-Python 中文教程

    OpenCV-Python 中文教程 目录 I 走进 OpenCV 关于 OpenCV-Python 教程 在 Windows 上安装 OpenCV-Python 在 Fedora 上安装 OpenC ...

  8. intellij IDEA安装JDBC报错 No suitable driver found for jdbc:mysql://localhost:3306

    项目场景: 本地尝试使用intellij IDEA加载JDBC连接MySQL,尝试实现增删改查,本来想做一个小Demo. 问题描述 报错: java.lang.ClassNotFoundExcepti ...

  9. 关于在 springboot 中使用 @Autowired 注解来对 TemplateEngine 进行自动装配时,无法注入的问题。

    前言 本文是基于江南一点雨的 Spring Boot+Vue 系列视频教程第 三 章的第三节,详情参考Spring Boot+Vue系列视频教程 在观看学习这一节时,发现当进行手动渲染 Thymele ...

  10. C语言快速入门教程1快速入门 2指令 3条件选择

    快速入门 什么是C语言? C是一种编程语言,1972年由Dennis Ritchie在美国AT & T的贝尔实验室开发.C语言变得很流行,因为它很简单,很容易使用.今天经常听到的一个观点是-- ...