Oracle系列---【表空间常用命令】

1.创建表空间

sql 复制代码
#创建大小为30G且开启自增的表空间
CREATE TABLESPACE TEST_COM_SDM_FRONT DATAFILE '/oradata/ORA19/datafile/TEST_COM_SDM_FRONT_01.dbf' SIZE 30024M AUTOEXTEND ON;

2.查看表空间使用情况

SQL 复制代码
#表空间数据文件维度使用率查询
SELECT 
    b.TABLESPACE_NAME,
    b.FILE_NAME,
    SUBSTR(b.BYTES/1024/1024/1024,1,5) 总大小G,
    SUBSTR(b.BYTES-SUM(NVL(a.BYTES,0)))/1024/1024/1024,1,5) 已使用G,
    SUBSTR(b.BYTES-SUM(NVL(a.BYTES,0)))/b.BYTES*100,1,5) 使用率
FROM
    SYS.DBA_FREE_SPACE a
INNER JOIN
    SYS.DBA_DATA_FILES b
ON 
    a.FILE_ID = b.FILE_ID
GROUP BY 
    b.TABLESPACE_NAME,b.FILE_NAME,b.BYTES
ORDER BY SUBSTR((b.BYTES-SUM(NVL(a.BYTES,0)))/b.BYTES*100,1,5) DESC;

#表空间维度
SELECT 
    b.TABLESPACE_NAME,
    SUBSTR(b.BYTES/1024/1024/1024,1,5) 总大小G,
    SUBSTR((b.BYTES-SUM(NVL(a.BYTES,0)))/1024/1024/1024,1,5) 已使用G,
    SUBSTR((b.BYTES-SUM(NVL(a.BYTES,0)))/b.BYTES*100,1,5) 使用率
FROM
    SYS.DBA_FREE_SPACE a
INNER JOIN
    SYS.DBA_DATA_FILES b
ON 
    a.FILE_ID = b.FILE_ID
GROUP BY
    SUBSTR((b.BYTES-SUM(NVL(a.BYTES,0)))/b.BYTES*100,1,5) DESC;

3.表空间新增数据文件

SQL 复制代码
ALTER tablespace AFP_COM_ASC
ADD DATAFILE '/oradata/ORA19/datafile/TEST_COM_SDM_FRONT_02.dbf'
SIZE 20480M
AUTOEXTEND ON NEXT 5000M;

ALTER DATABASE DATAFILE '/oradata/ORA19/datafile/TEST_COM_SDM_FRONT_01.dbf'
AUTOEXTEND ON NEXT 500M;

4.用户表空间查询

sql 复制代码
SELECT 
    DISTINCT a.TABLESPACE_NAME
FROM 
    DBA_TABLES a
LEFT JOIN DBA_TABLESPACES b ON
    a.TABLESPACE_NAME = b.TABLESPACE_NAME
WHERE
    OWNER LIKE 'AFP_%';

5.关闭表空间自增

sql 复制代码
#查看已开启自增的表空间
SELECT FILE_NAME,
       TABLESPACE_NAME,
       AUTOEXTENSIBLE,
       'ALTER DATABASE DATAFILE '''||FILE_NAME||''' AUTOEXTEND OFF;',
FROM DBA_DATA_FILES
WHERE
       AUTOEXTENSIBLE ='YES'
       AND TABLESPACE_NAME LIKE 'AFP%';

#关闭表空间自增
ALTER DATABASE DATAFILE '/oradata/ORA19/datafile/TEST_COM_SDM_FRONT_01.dbf' AUTOEXTEND OFF;

6.删除oracle用户

SQL 复制代码
DROP USER YOUR_USERNAME CASCADE;
ALTER TABLESPACE YOUR_TABLESPACE_NAME SHRINK SPACE;

7.修改表中表分区的表空间

sql 复制代码
ALTER TABLE `TEST_NEW_DS.BANK_OPER` MOVE PARTITION `SYS_P1706` TABLESPACE `TEST_NEW_DS`;
相关推荐
睡觉的时候不会困5 小时前
Redis 主从复制详解:原理、配置与主从切换实战
数据库·redis·bootstrap
程序员的世界你不懂7 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
自学也学好编程7 小时前
【数据库】Redis详解:内存数据库与缓存之王
数据库·redis
JAVA不会写8 小时前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)8 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
ChinaRainbowSea8 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
小马学嵌入式~9 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
Java小白程序员9 小时前
MyBatis基础到高级实践:全方位指南(中)
数据库·mybatis
Monly219 小时前
人大金仓:merge sql error, dbType null, druid-1.2.20
数据库·sql
不宕机的小马达10 小时前
【Mysql|第一篇】Mysql的安装与卸载、Navicat工具的使用
数据库·mysql