当前位置: 首页 > article >正文

达梦数据库-收缩数据库表空间步骤及示例记录总结

1达梦数据库-收缩数据库表空间步骤及示例记录总结注收缩表空间如果空闲空间都在尾部可以直接收缩成功如果尾部不空闲中部空闲则需要移走使用尾部的表后再收缩生产环境如果需要移动表才能收缩那么不要在业务使用时操作可能会严重影响业务系统使用特别是移动大表。1.1查询表空间情况SELECT TOTAL_SIZE*PAGE_SIZE/1024/1024,FREE_SIZE*PAGE_SIZE/1024/1024,PATH,CLIENT_PATH FROM V$DATAFILE;SELECT path,free_page_no*1.0*page()/1024/1024 FROM SYS.V$DATAFILESELECT Upper(F.TABLESPACE_NAME) 表空间名,D.TOT_GROOTTE_MB 表空间大小(M),D.TOT_GROOTTE_MB - F.TOTAL_BYTES 已使用空间(M),To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), 990.99)|| % 使用比,F.TOTAL_BYTES 空闲空间(M),F.MAX_BYTES 最大块(M)FROM (SELECT TABLESPACE_NAME,Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTESFROM SYS.DBA_FREE_SPACEGROUP BY TABLESPACE_NAME) F,(SELECT DD.TABLESPACE_NAME,Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MBFROM SYS.DBA_DATA_FILES DDGROUP BY DD.TABLESPACE_NAME) DWHERE D.TABLESPACE_NAME F.TABLESPACE_NAMEORDER BY 2 desc;1.2收缩表空间ALTER tablespace TEST RESIZE DATAFILE /data/dmdata/DAMENG/BOOKSHOP.DBF to xxx;如果报错无法回收簇是因为表空间尾部有有效数据如下示例1.3查询目标表空间数据文件(示例main表空间)尾部的表可以逐步重复查询移动表尝试收缩操作。select distincto.owner,e.USED,e.extent_id,case o.object_type when INDEX THEN (select i.table_namefrom DBA_INDEXES iwhere i.INDEX_NAMEo.object_name limit 1)when TABLE THEN o.object_name else null endas table_namefrom v$extents ejoin V$SEGMENT_INFOS son e.seg_ids.seg_idjoin dba_objects oon o.object_ids.obj_idleft join dba_indexes ion o.object_namei.index_namewhere e.ts_id(select t.id from v$tablespace t where nameMAIN)order by e.extent_id desc limit 10;1.4查询表大小和条数--可查询表大小和条数大致预估移动时间SELECT OWNER,TABLE_NAME,TABLE_USED_PAGES(OWNER,TABLE_NAME)*PAGE()/1024.0/1024.0 SIZE_MB,SF_GET_TABLE_COUNT(A.OWNER, A.TABLE_NAME) TAB_COUNTFROM DBA_TABLES AWHERE A.OWNER IN (xx) AND TABLE_NAME表名;1.5新建普通表空间create tablespace TBS_TEMP_YD datafile TBS_TEMP_YD01.DBF size 128 CACHE NORMAL;1.6移动表到新建普通表空间alter table 模式名.表名 MOVE TABLESPACE TBS_TEMP_YD;1.7查已经移动到表空间TBS_TEMP_YD的表和索引SELECT * FROM DBA_TABLES WHERE TABLESPACE_NAMETBS_TEMP_YD;SELECT * FROM DBA_INDEXES WHERE TABLESPACE_NAMETBS_TEMP_YD;1.8根据需要临时设置UNDO_RETENTION参数SP_SET_PARA_DOUBLE_VALUE (1,UNDO_RETENTION,90);1.9使用表空间收缩命令进行空间回收--示例收缩MAIN 命令ALTER TABLESPACE MAIN RESIZE DATAFILE MAIN.DBF TO XXMB;1.10操作示例测试环境--DM v8 --03134284368-20260306-316451-20149 Pack62 Kylin 10 x86_64需求示例把用户表从main表空间中移动到新建自定义表空间TEST,并收缩main表空间。操作步骤(1)创建测试表使用默认main表空间create table t1(id int,info VARCHAR2(100));create table t2(id int,info VARCHAR2(100));create table t3(id int,info VARCHAR2(100));create table t4(id int,info VARCHAR2(100));(2)对表t1t2t3t4分别插入测试DECLAREi NUMBER : 1;BEGINWHILE i 1000000 LOOPinsert into 具体表名(ID, info) VALUES(i, 在这里为要插入的测试数据sdsdsdsdsds||i);i : i 1;END LOOP;END;commit;(3)表空间情况查询SELECT Upper(F.TABLESPACE_NAME) 表空间名,D.TOT_GROOTTE_MB 表空间大小(M),D.TOT_GROOTTE_MB - F.TOTAL_BYTES 已使用空间(M),To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), 990.99)|| % 使用比,F.TOTAL_BYTES 空闲空间(M),F.MAX_BYTES 最大块(M)FROM (SELECT TABLESPACE_NAME,Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTESFROM SYS.DBA_FREE_SPACEGROUP BY TABLESPACE_NAME) F,(SELECT DD.TABLESPACE_NAME,Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MBFROM SYS.DBA_DATA_FILES DDGROUP BY DD.TABLESPACE_NAME) DWHERE D.TABLESPACE_NAME F.TABLESPACE_NAME ORDER BY 2 desc;SELECT path,free_page_no*1.0*page()/1024/1024 FROM SYS.V$DATAFILE;SELECT TOTAL_SIZE*PAGE_SIZE/1024/1024,FREE_SIZE*PAGE_SIZE/1024/1024,PATH,CLIENT_PATH FROM V$DATAFILE;(4)查询表空间尾部表删除部分测试表数据制造中部空闲空间select distincto.owner,e.USED,e.extent_id,case o.object_type when INDEX THEN (select i.table_namefrom DBA_INDEXES iwhere i.INDEX_NAMEo.object_name limit 1)when TABLE THEN o.object_name else null endas table_namefrom v$extents ejoin V$SEGMENT_INFOS son e.seg_ids.seg_idjoin dba_objects oon o.object_ids.obj_idleft join dba_indexes ion o.object_namei.index_namewhere e.ts_id(select t.id from v$tablespace t where nameMAIN)order by e.extent_id desc limit 10;--asc,查询--desc,查询出尾部使用空间是表t3详细步骤--查询尾部对象SELECT * FROM v$extentsWHERE ts_id(select id from v$tablespace where nameMAIN) order by extent_id desc limit 5;--通过seg_id查询具体obj_id名称SELECT * FROM V$SEGMENT_INFOS WHERE seg_id IN (2374);--通过obj_id查询对象名称SELECT * FROM dba_objects WHERE OBJECT_ID IN (33555494);--通过INDEX33555494查询所属表名称select * from dba_indexes where index_nameINDEX33555494;--truncate删除数据查询空间情况truncate table t2;truncate table t4;ALTER TABLESPACE MAIN RESIZE DATAFILE MAIN.DBF TO 408;ALTER TABLESPACE MAIN RESIZE DATAFILE MAIN.DBF TO 176;main表空间总大小500M,free_page_no查询408M所以第一次尝试收缩到408M。查询空闲324M,真正使用空间500-324176M,收缩报错是因为main表空间数据文件尾部有使用。(5)新建自定义表空间TBS_TEMP_YD并移动t1t3表到表空间TBS_TEMP_YD。create tablespace TBS_TEMP_YD datafile TBS_TEMP_YD01.DBF size 128 CACHE NORMAL;SELECT OWNER,TABLE_NAME,TABLE_USED_PAGES(OWNER,TABLE_NAME)*PAGE()/1024.0/1024.0 SIZE_MB,SF_GET_TABLE_COUNT(A.OWNER, A.TABLE_NAME) TAB_COUNTFROM DBA_TABLES AWHERE A.OWNER IN (SYSDBA) AND TABLE_NAMET3;alter table sysdba.t3 MOVE TABLESPACE TBS_TEMP_YD;alter table sysdba.t1 MOVE TABLESPACE TBS_TEMP_YD;SELECT * FROM DBA_TABLES WHERE TABLESPACE_NAMETBS_TEMP_YD;SELECT * FROM DBA_INDEXES WHERE TABLESPACE_NAME TBS_TEMP_YD;(6)再次尝试收缩成功收缩ALTER TABLESPACE MAIN RESIZE DATAFILE MAIN.DBF TO xxx;更多达梦数据库运维指南、在线文档、相关资料、社区在线提问以及技术分享访问 https://eco.dameng.com/

相关文章:

达梦数据库-收缩数据库表空间步骤及示例记录总结

1达梦数据库-收缩数据库表空间步骤及示例记录总结 注:收缩表空间,如果空闲空间都在尾部,可以直接收缩成功,如果尾部不空闲,中部空闲,则需要移走使用尾部的表后再收缩,生产环境,如果…...

抖音内容批量下载神器:douyin-downloader 完全使用指南

抖音内容批量下载神器:douyin-downloader 完全使用指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback supp…...

从show version到设备‘体检报告’:新手也能看懂的思科路由器健康状态自查指南

从show version到设备‘体检报告’:新手也能看懂的思科路由器健康状态自查指南 当你第一次面对思科路由器的命令行界面,输入show version后看到满屏密密麻麻的信息,是不是感觉像拿到了一份天书般的体检报告?别担心,今天…...

迷拟极速飞车——极致竞速新体验,重塑线下轻娱新标杆

随着国内文旅休闲、商业游乐行业的快速发展,消费者的线下娱乐审美与体验标准持续升级。传统游乐项目模式固化、玩法单一,同质化问题愈发突出,千篇一律的休闲设施早已无法满足全年龄段游客的多元化游玩需求。无论是城市商业综合体、城郊文旅景…...

避坑指南:Gurobi在MATLAB中配置成功后,为什么optimize函数求解结果不对?

Gurobi与MATLAB联合作战:当optimize函数结果异常时的全维度排错手册 当你终于完成了Gurobi的安装配置,看到yalmiptest显示"Found"时,那种成就感就像调试通过了第一个"Hello World"。但现实很快给你上了一课——optimize函…...

Geist字体实战手册:现代数字产品的瑞士设计解决方案

Geist字体实战手册:现代数字产品的瑞士设计解决方案 【免费下载链接】geist-font 项目地址: https://gitcode.com/gh_mirrors/ge/geist-font 在数字产品界面中,字体选择往往成为视觉体验的瓶颈。Geist字体家族以其瑞士设计理念,为开发…...

Nodejs后端服务接入Taotoken OpenAI兼容API的详细步骤

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Nodejs后端服务接入Taotoken OpenAI兼容API的详细步骤 本文面向使用Node.js构建后端服务的开发者,旨在提供一份清晰的指…...

Wifite2 终极指南:快速掌握无线网络安全审计工具

Wifite2 终极指南:快速掌握无线网络安全审计工具 【免费下载链接】wifite2 Rewrite of the popular wireless network auditor, "wifite" 项目地址: https://gitcode.com/gh_mirrors/wi/wifite2 Wifite2 是一款功能强大的无线网络安全审计工具&…...

避开Keil开发大坑:从一次CANFD驱动调试,总结C语言数组操作的5个常见陷阱

避开Keil开发大坑:从一次CANFD驱动调试,总结C语言数组操作的5个常见陷阱 调试嵌入式系统的CANFD驱动时,一个看似简单的数组越界问题让我熬了整整三个通宵。当逻辑分析仪终于捕捉到那个幽灵般的非法内存写入时,我才意识到——在Kei…...

Chrome画中画扩展终极指南:一键实现多任务视频播放

Chrome画中画扩展终极指南:一键实现多任务视频播放 【免费下载链接】picture-in-picture-chrome-extension 项目地址: https://gitcode.com/gh_mirrors/pi/picture-in-picture-chrome-extension Chrome画中画扩展是一款基于原生Picture-in-Picture API开发的…...

通过curl命令直接调试Taotoken大模型接口的完整指南

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过curl命令直接调试Taotoken大模型接口的完整指南 对于开发者而言,直接使用curl命令调用HTTP API是一种基础且强大的…...

手把手教你用WSL搞定RAX3000M路由器的SSH配置修改(Win10/Win11适用)

在Windows系统下通过WSL高效配置RAX3000M路由器的完整指南 对于习惯Windows操作系统的技术爱好者来说,想要修改路由器配置文件常常面临一个尴尬的处境——大多数高级配置工具和教程都默认用户已经熟悉Linux环境。本文将彻底解决这个痛点,教你如何在不安装…...

别再只盯着交叉熵了:用PyTorch的TripletMarginLoss搞定人脸识别和商品推荐

超越交叉熵:PyTorch TripletMarginLoss在人脸识别与商品推荐中的实战指南 在深度学习的世界里,交叉熵损失函数长期占据着分类任务的主导地位。然而,当我们需要衡量样本之间的相对距离而非绝对类别时,一种更为强大的工具正在悄然改…...

别再只记cat和空格了:一份给CTF新手的Linux命令执行绕过速查表(含通配符、编码、拼接)

CTF命令执行绕过实战手册:从基础技巧到高阶组合技 在CTF竞赛和安全测试中,命令执行漏洞是最常见的攻击面之一。许多新手面对各种过滤规则时,往往陷入"知道有绕过方法但记不住具体用法"的困境。本文将系统梳理Linux命令执行绕过的完…...

MoE混合专家架构:揭秘大模型参数激活率与真实算力开销

1. 这不是“参数越多越强”的简单故事:拆解大模型里那个被悄悄藏起来的“开关”你肯定见过这类标题:“GPT-4 参数高达1.8万亿!”、“DeepSeek-R1 拥有6710亿参数!”——光是数字本身就像一记重锤,砸得人头晕目眩。但真…...

Unity UGUI血条蓝条从零实现:Canvas层级、RectTransform锚点与FillAmount原理

1. 这不是“拖拽控件就完事”的UI课,而是让你真正理解UGUI底层逻辑的起点 很多人学Unity UI,上来就是打开Canvas、拖个Button、改个颜色、加个OnClick事件——看起来5分钟就能做出个界面,结果一到要做血条、要动态更新、要适配不同分辨率、要…...

【Appium 系列】第20节-测试项目结构设计 — 从脚本到工程

对应代码:配套代码/test/ 完整目录结构说明:本节讲解如何组织一个中大型 Appium 测试项目,从目录结构到文件职责,从脚本到工程的演进。这节讲什么测试项目从小到大会经历三个阶段:阶段 1:脚本阶段test_logi…...

HTTPS抓包失败原因与Burp CA证书信任配置全指南

1. 为什么HTTPS抓包总卡在“连接失败”?——这不是网络问题,是证书信任链没打通你打开Burp Suite,配置好代理,浏览器也设成127.0.0.1:8080,一访问https://example.com,页面直接报“您的连接不是私密连接”&…...

【Appium 系列】第19节-Allure 报告与 Bug 管理 — 测试结果的可视化

对应代码:utils/allure_helper.py、utils/bug_reporter.py、utils/bug_allure_helper.py说明:本节代码来自一个真实的移动端自动化测试项目,已做模糊化处理,可直接复用。1. 为什么需要报告体系?测试跑完之后&#xff0…...

3DS GBA硬件直通终极指南:用open_agb_firm获得原生游戏体验

3DS GBA硬件直通终极指南:用open_agb_firm获得原生游戏体验 【免费下载链接】open_agb_firm open_agb_firm is a bare metal app for running GBA homebrew/games using the 3DS builtin GBA hardware. 项目地址: https://gitcode.com/gh_mirrors/op/open_agb_fir…...

告别手动计算!用Biopython+DSSP批量分析蛋白质溶剂可及性(附完整脚本)

告别手动计算!用BiopythonDSSP批量分析蛋白质溶剂可及性(附完整脚本) 蛋白质溶剂可及性(RSA)是结构生物学中的关键参数,它量化了氨基酸残基在蛋白质表面暴露于溶剂的程度。传统手动计算方式在面对大规模PD…...

在自动化客服系统中集成多模型API以提升回答稳定性与成本可控性

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在自动化客服系统中集成多模型API以提升回答稳定性与成本可控性 对于需要7x24小时稳定运行的智能客服系统而言,单一模型…...

2026 高炉炼铁智能化技术全景与演进路径~系列文章03:高炉工业数据治理标准化与全生命周期血缘体系

第4期:高炉工业数据治理标准化与全生命周期血缘体系 导言:数据治理不是"清洗数据"那么简单。本期我们将站在工程实践的角度,系统阐述高炉数据从采集到应用的全生命周期管理方法论,重点解决"数据质量如何评价"…...

告别手动配IP!用STM32CubeMX快速实现LwIP DHCP客户端,连接路由器即插即用

告别手动配IP!用STM32CubeMX快速实现LwIP DHCP客户端 每次为嵌入式设备配置静态IP都像在玩一场"猜谜游戏"——子网掩码输错一位、网关地址填错,整个网络就瘫痪了。更糟的是,当设备需要部署到不同网络环境时,还得重新烧…...

树莓派Linux命令行实战指南:从基础操作到系统运维

1. 项目概述:为什么你需要一份树莓派命令手册如果你刚拿到一块树莓派,兴奋地接上电源和显示器,看着熟悉的桌面系统,感觉和一台迷你电脑没什么两样。但当你真正想用它做点“正经事”——比如让它24小时运行一个网站、自动备份文件到…...

暗黑2存档修改终极指南:5分钟学会免费d2s文件编辑器

暗黑2存档修改终极指南:5分钟学会免费d2s文件编辑器 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 暗黑破坏神2的d2s存档编辑器是一款专为玩家设计的强大工具,让你能够轻松修改角色属性、管理装备和调整…...

处理跨时区订单与日志?LocalDateTime时区转换与序列化的避坑指南

跨时区业务中的LocalDateTime实战:从订单处理到日志存储的全链路解决方案 凌晨三点,东京用户的订单触发了系统告警,而纽约团队查看日志时却发现时间对不上——这是许多全球化业务开发者常见的噩梦。时区问题如同暗礁,往往在系统运…...

SSE流式响应:从Reactor Flux到生产级AI聊天的工程实践——5分钟超时、线程隔离、背压处理全解析

大家好,我是程序员小策。 首先给大家去一个例子:凌晨两点,P0 告警炸了。 AI 聊天接口全部超时,用户消息发出去转圈转了 120 秒然后报错。你打开监控一看:Tomcat 线程池满了,200 个工作线程全部卡在"…...

Nintendo Switch大气层系统完整教程:从零开始掌握自制系统

Nintendo Switch大气层系统完整教程:从零开始掌握自制系统 【免费下载链接】Atmosphere-stable 大气层整合包系统稳定版 项目地址: https://gitcode.com/gh_mirrors/at/Atmosphere-stable 你是否曾想过,让手中的Nintendo Switch拥有无限可能&…...

选型必读丨高温定向传感器采购与使用的真实成本分析

在定向钻井设备采购决策中,价格往往不是唯一的考量因素。很多用户关注的是高温定向传感器的全生命周期总成本(TCO, Total Cost of Ownership)以及最终能带来怎样的投资回报(ROI)。本文将从专业角度,系统分析…...