oracle删除索引释放空间,oracle 索引迁移,释放磁盘空间[通俗易懂]

oracle删除索引释放空间,oracle 索引迁移,释放磁盘空间[通俗易懂]索引文件迁移步骤:准备工作:1)备份GBOS用户表索引:通过plsqlDevelop工具将GBOS用户表索引全部导出,以做备份。1.查看索引表空间具有那些数据文件selectfile_id,file_name,tablespace_name,bytes/1024/1024M,blocksfromdba_data_fileswhereTABLESPACE_NAME=’USERINDEX…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

索引文件迁移步骤:

准备工作:

1)备份GBOS用户表索引:通过plsqlDevelop工具将GBOS用户表索引全部导出,以做备份。

1.查看索引表空间 具有那些数据文件

select file_id,file_name,tablespace_name,bytes/1024/1024 M,blocks from dba_data_files

where  TABLESPACE_NAME=’USERINDEX’order by 1;

FILE_ID FILE_NAME                                          TABLESPACE          M     BLOCKS

——— ————————————————– ———- ———- ———-

19 D:\ORACLE\ORADATA\INNETDB\USERINDEX01.DBF          USERINDEX       10240    1310720

20 D:\ORACLE\ORADATA\INNETDB\USERINDEX02.DBF          USERINDEX       10240    1310720

21 D:\ORACLE\ORADATA\INNETDB\USERINDEX03.DBF          USERINDEX       10240    1310720

22 D:\ORACLE\ORADATA\INNETDB\USERINDEX04.DBF          USERINDEX       10240    1310720

23 D:\ORACLE\ORADATA\INNETDB\USERINDEX05.DBF          USERINDEX       10240    1310720

39 D:\ORACLE\ORADATA\INNETDB\USERINDEX06.DBF          USERINDEX        6500     832000

40 D:\ORACLE\ORADATA\INNETDB\USERINDEX07.DBF          USERINDEX        6500     832000

41 D:\ORACLE\ORADATA\INNETDB\USERINDEX08.DBF          USERINDEX        6500     832000

42 D:\ORACLE\ORADATA\INNETDB\USERINDEX09.DBF          USERINDEX        6300     806400

43 D:\ORACLE\ORADATA\INNETDB\USERINDEX10.DBF          USERINDEX        6300     806400

62 D:\ORACLE\ORADATA\INNETDB\USERINDEX11.DBF          USERINDEX        1400     179200

63 D:\ORACLE\ORADATA\INNETDB\USERINDEX12.DBF          USERINDEX        1400     179200

2.创建新的索引表空间,添加索引数据文件

CREATE SMALLFILE TABLESPACE “INDEXTBS” DATAFILE ‘D:\ORACLE\ORADATA\INNETDB\INDEXTBS\INDEX001.DBF’

SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 2000M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

ALTER TABLESPACE “INDEXTBS” ADD DATAFILE ‘D:\ORACLE\ORADATA\INNETDB\INDEXTBS\INDEX003.DBF’

SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 4000M ;

3.查找属于gbos用户的表索引,(除去clob类型的索引,clob索引存放在user表空间)

(分区索引存放在dba_segments表里,普通索引信息放在dba_indexes表里)

SELECT ‘alter index  gbos.’||index_name||’  rebuild tablespace INDEXTBS’

FROM dba_INDEXES T where t.table_owner=’GBOS’

and index_name not like ‘%SYS_%’

and t.tablespace_name=’USERINDEX’

SELECT ‘alter index  gbos.’||index_name||’  rebuild tablespace INDEXTBS’

FROM dba_INDEXES T where t.tablespace_name=’USERINDEX’ and t.table_owner=’GBOS’

普通索引迁移

alter index  gbos.INDEX_T_B_FAULT_LIST_STATUS  rebuild tablespace INDEXTBS;

alter index  gbos.INDEX_T_B_FAULT_L_OCCUR_TIME  rebuild tablespace INDEXTBS;

alter index  gbos.INDEX_T_B_FAULT_L_TERMINALID  rebuild tablespace INDEXTBS;

alter index  gbos.IDX_CAR_INFO_COL  rebuild tablespace INDEXTBS;

alter index  gbos.IX_T_O_OPEN_DOOR_REC_CLCT_DATE  rebuild tablespace INDEXTBS;

alter index  gbos.IX_T_O_OPEN_DOOR_REC_TERM_ID  rebuild tablespace INDEXTBS;

alter index  gbos.IX_T_O_OPEN_DOOR_REC_TICK  rebuild tablespace INDEXTBS;

分区索引迁移

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P61 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P62 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P63 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P64 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P65 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P66 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P67 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P68 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P69 tablespace INDEXTBS;

Alter index gbos.IDX_O_PERIOD_INFO_COLS rebuild partition SYS_P70 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P41 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P42 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P43 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P44 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P45 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P46 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P47 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P48 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P49 tablespace INDEXTBS;

Alter index gbos.INDEX_T_O_PERIOD_INFO rebuild partition SYS_P50 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P51 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P52 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P53 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P54 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P55 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P56 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P57 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P58 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P59 tablespace INDEXTBS;

Alter index gbos.Ix_T_O_Period_Info_Tick rebuild partition SYS_P60 tablespace INDEXTBS;

4.执行以上语句将索引从USERINDEX空间迁移到INDEXTBS空间。

5.将索引空间数据文件脱机(非归档模式下 需要drop)

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX01.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX02.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX03.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX04.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX05.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX06.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX07.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX08.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX09.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX10.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX11.DBF’    offline;

alter database datafile ‘D:\ORACLE\ORADATA\INNETDB\USERINDEX12.DBF’    offline;

6.删除USERINDEX表空间及相关联文件,再观察磁盘是否是否空间

drop tablespace USERINDEX

including contents and datafiles cascade constraints;

7.编译oracle相关服务是否有存储错误,用gbos账号登陆 是否能正常查询表,

启动相关服务。

注意:分别查看表索引对应的数据文件

select TABLE_NAME,SEGMENT_NAME,TABLESPACE_NAME,INDEX_NAME from dba_lobs where OWNER=’GBOS’;

select header_file,segment_name,tablespace_name,header_block from dba_segments

where segment_name=’SYS_C0036848′;

select INDEX_NAME,TABLE_NAME from  dba_indexes where owner=’GBOS’ ;

select header_file,segment_name,tablespace_name,header_block from dba_segments

where segment_name=’T_O_MENUSET_PK’;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197353.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python3异常可直接抛出_python自定义异常

    python3异常可直接抛出_python自定义异常python抛出异常的方法发布时间:2020-08-1411:10:34来源:亿速云阅读:89作者:小新这篇文章主要介绍python抛出异常的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!异常是Python对象,表示一个错误。当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。python学习网,大量的免费python视频教程,欢迎在线学习!常见异常#…

    2022年10月18日
    0
  • Ora:12154 PLsql连接报错

    Ora:12154 PLsql连接报错新入职公司,需要安装一些软件,安装了oracle客户端和plsql,结果发现plsql的database是空白,没有可选。找了度娘,查看安装路径,是oracle安装路径:d:/oracle/product/11.2.0/client_1/admin文件夹下少了两个文件,listener.ora和tnsnames.ora,于是卸载重装,折腾了几次,连注册表都删了,还是不行。解决方法:在admin路径栏敲cmd,netca,根据提示新建一个监听。admin文件夹下就会多一个listener.ora文件(可能

    2022年7月19日
    12
  • 用java打印空心菱形_java打印空心直角三角形

    用java打印空心菱形_java打印空心直角三角形打印菱形尤其是空心菱形对于初学者来说有一定难度,熟练掌握了for循环后,还是可以打印出来的分析:1.先打印上半部分,再打印下半部分      2.找准空格与星号之间的关系,然后再打印      3.上半部分每一行数目分别为1、3、5、7、9、7、5、3、1      4.找准关系2*i-1     //练习二:打印菱形与空心菱…

    2022年9月29日
    0
  • 矩阵范数与向量范数关系_矩阵范数的定义

    矩阵范数与向量范数关系_矩阵范数的定义范数是距离在向量和矩阵上的推广,在研究收敛性、判断矩阵非奇异等方面有广泛应用。本节包括以下内容:(1)向量范数;(2)矩阵范数;(3)从属范数;(4)谱半径;(5)矩阵的非奇异条件。1向量范数从向量到实数的映射/函数。定义(1)条件:非负性、齐次性、三角不等式(∥x+y∥≤∥x∥+∥y∥\|x+y\|\leq\|x\|+\|y\|)。

    2022年9月19日
    0
  • 非禁用validateRequest=false使用Page_Error()错误处理

    非禁用validateRequest=false使用Page_Error()错误处理ASP.Net1.1后引入了对提交表单自动检查是否存在XSS(跨站脚本攻击)的能力。当用户试图用之类的输入影响页面返回结果的时候,ASP.Net的引擎会引发一个HttpRequestValidationExceptioin。默认情况下会返回如下文字的页面:以下是引用片段:ServerErrorin”/YourApplicationPath”Applicat

    2022年6月7日
    30
  • 集合类型python_python编程例子

    集合类型python_python编程例子集合集合的特点:是一种可迭代的、无序的、不能包含重复元素的数据结构去重b=[10,5,6,1,9,1]c=set(b)print(c)>>>{1,5

    2022年7月28日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号