- 博客(66)
- 资源 (11)
- 收藏
- 关注
原创 ORACLE数据库巡检SQL脚本--20、性能最差的SQL语句
摘要:该脚本用于识别Oracle数据库中磁盘读次数最高的前10条SQL语句,帮助定位高IO消耗的性能瓶颈。通过查询V$SQLAREA视图并按DISK_READS降序排序,可获取执行用户、次数、排序、命令类型等关键信息。高磁盘读SQL会导致数据库性能下降、资源竞争和稳定性风险。建议通过SQL优化、执行计划调整、存储优化等措施改善性能,并建立监控机制定期巡检。典型优化手段包括添加索引、拆分大SQL、增大缓存等,适用于性能排查、日常巡检和优化验证场景。
2026-02-06 18:54:00
371
原创 ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
摘要:该脚本用于查询Oracle数据库中磁盘读(DISK_READS)次数最高的前5条SQL语句,通过分析V$SQLAREA视图并按DISK_READS降序排序。主要应用于性能优化、故障排查和日常巡检,可快速定位导致磁盘IO过载的高消耗SQL。关键字段包括SQL_TEXT(SQL文本)和DISK_READS(磁盘读取次数)。当核心业务SQL的DISK_READS值过高或占比较大时,表明存在性能问题,需进行SQL优化、索引调整或存储优化等处理。该工具对预防数据库性能下降和稳定性风险具有重要意义。(149字)
2026-02-06 18:53:22
84
原创 ORACLE数据库巡检SQL脚本--18、检查扩展异常的对象
该SQL脚本用于监控Oracle数据库中段对象(表、索引等)的扩展使用情况,通过计算当前扩展数与最大扩展数的百分比,预警可能达到扩展上限的对象。脚本筛选出扩展使用率≥95%的段对象,按百分比降序排列。结果中出现记录即表示存在存储风险,可能导致业务操作失败(如ORA-01631错误)。建议处理措施包括调整MAX_EXTENTS参数、重组对象或启用表空间自动扩展。该脚本适用于日常巡检、故障排查和容量规划,可有效预防因段对象无法扩展导致的业务中断问题。
2026-02-05 10:15:43
583
原创 ORACLE数据库巡检SQL脚本--17、检查所有回滚段的运行状态
摘要:该SQL脚本用于检查Oracle数据库回滚段状态,通过查询DBA_ROLLBACK_SEGS视图获取各回滚段名称和状态信息。主要应用于日常巡检、故障排查、变更验证等场景,确保回滚段处于正常ONLINE状态。异常状态(如OFFLINE、INVALID等)会影响事务回滚和读一致性功能,特别是系统回滚段异常可能导致数据库无法启动。建议定期监控回滚段状态,优先采用自动Undo管理模式,发现异常时及时处理恢复。
2026-02-05 10:15:02
438
原创 ORACLE数据库巡检SQL脚本--16、数据库所有数据文件的运行状态
本文介绍了用于检查Oracle数据库数据文件状态的SQL脚本。脚本通过查询V$DATAFILE和DBA_DATA_FILES两个视图,分别从实例层面和存储层面检查数据文件状态。主要应用于日常巡检、故障排查、变更验证等场景。正常状态下应显示为"ONLINE"和"AVAILABLE",若出现"OFFLINE"、"RECOVER"或"INVALID"等异常状态,可能导致业务中断。文中提供了常见异常状态的处理建议,包
2026-02-04 20:38:42
628
原创 ORACLE数据库巡检SQL脚本--15、表空间的运行状态
摘要:该SQL脚本用于检查Oracle数据库表空间状态,核心功能是查询DBA_TABLESPACES视图获取表空间名称和运行状态(ONLINE/OFFLINE/READ ONLY等)。主要用于日常巡检、故障排查和变更验证,确保业务数据可访问。异常状态会直接影响业务功能,如OFFLINE导致数据不可访问,READ ONLY限制写入操作。针对不同异常状态,提供了ALTER TABLESPACE恢复命令建议,并强调需特别关注系统表空间和核心业务表空间状态。
2026-02-04 20:38:08
431
原创 ORACLE数据库巡检SQL脚本--14、数据库实例的核心运行状态
该SQL脚本用于检查Oracle数据库实例的核心运行状态,适用于日常巡检、故障排查等场景。通过查询V$INSTANCE视图,可获取实例名称、主机名、启动时间、运行状态等关键信息。正常状态下,STATUS应为OPEN,DATABASE_STATUS应为ACTIVE。若发现状态异常(如SHUTDOWN、SUSPENDED等)或启动时间不符预期,表明实例存在问题,可能影响业务访问。脚本还提供了常见异常的处理建议,如执行ALTER DATABASE OPEN命令打开数据库、检查告警日志排查重启原因等。该检查是确保数
2026-02-03 19:58:23
305
原创 ORACLE数据库巡检SQL脚本--13、临时表空间使用率
该SQL脚本用于监控Oracle数据库临时表空间使用情况,包含空间容量、使用率等关键指标。通过查询V$TEMP_SPACE_HEADER视图,可获取表空间名称、总容量、已用/空闲块数等数据,用于日常巡检和空间不足问题排查。当使用率超过90%、空闲空间耗尽或自动扩展达到上限时,可能导致排序、哈希连接等操作失败。处理建议包括清理临时对象、扩容表空间或优化SQL语句。脚本适用于多表空间负载均衡分析和扩容效果验证场景。
2026-02-03 19:57:38
698
原创 ORACLE数据库巡检SQL脚本--12、磁盘中的排序
摘要:该脚本用于定位Oracle数据库中执行磁盘排序的会话,通过查询V$SESSTAT和V$STATNAME视图,找出磁盘排序次数(A.VALUE)大于0的会话。主要字段包括会话ID(SID)和磁盘排序次数(VALUE),数值越大表示排序消耗资源越多。若发现大量磁盘排序(如超过1000次),会导致SQL响应变慢、系统IO延迟升高等问题。建议优化相关SQL语句、增加排序区内存或终止异常会话。脚本可帮助DBA快速识别排序性能问题的具体源头会话。
2026-02-02 09:42:25
353
原创 ORACLE数据库巡检SQL脚本--11、内存中的排序
摘要:本文介绍了检查Oracle数据库排序操作统计的方法,通过查询V$SYSSTAT视图获取内存和磁盘排序次数。重点关注SORTS (DISK)数值,若较大或占比超5%则表明存在性能问题。磁盘排序会导致IO消耗增加、执行时间延长等影响。建议优化SQL语句、增大排序区内存、添加索引或拆分大事务来改善性能。该检查适用于排查查询响应慢、磁盘IO高等问题场景。
2026-02-02 09:41:45
394
原创 ORACLE数据库巡检SQL脚本--10、数据库缓存命中率
摘要:本文介绍Oracle数据库库缓存命中率的检查方法,该指标反映SQL执行计划和PL/SQL代码的缓存复用效率。通过查询V$LIBRARYCACHE视图计算命中率(HIT RATIO),正常值应大于95%。命中率过低会导致硬解析增加、响应变慢及内存碎片问题。建议措施包括:调整共享池大小、使用绑定变量、开启预编译缓存和定期清理共享池碎片。该脚本适用于数据库性能巡检场景,是共享池监控的核心指标之一。
2026-02-01 11:32:09
310
原创 ORACLE数据库巡检SQL脚本--9、数据字典命中率
摘要:Oracle数据库数据字典命中率反映元数据缓存效率,通过V$ROWCACHE视图的GETMISSES和GETS计算,应保持在95%以上。命中率过低会导致SQL解析变慢、共享池资源紧张等问题。优化建议包括增大共享池、使用绑定变量、定期清理碎片及减少表结构变更。命中率低于95%需立即处理,以提高数据库整体性能。
2026-02-01 11:30:47
163
原创 ORACLE数据库巡检SQL脚本--8、缓冲区命中率
摘要:该SQL脚本用于计算Oracle数据库的缓冲区命中率,通过统计V$SYSSTAT视图中的物理读次数、DB块获取次数和一致性获取次数,评估内存缓存效率。命中率低于90%表明缓存效率低下,会导致磁盘IO频繁、性能下降。优化建议包括增大缓冲区内存、优化SQL语句、减少硬解析和定期收集统计信息。脚本包含安全处理,避免分母为零的错误。
2026-01-31 10:53:54
481
原创 ORACLE数据库巡检SQL脚本--7、检查不起作用的约束
摘要:该SQL脚本用于识别数据库中处于禁用状态的主键约束,这类约束会导致数据完整性风险。脚本通过查询DBA_CONSTRAINTS视图,筛选CONSTRAINT_TYPE为'P'(主键)且STATUS为'DISABLE'的记录,获取约束所属用户、名称、对应表名等信息。禁用主键会导致数据重复、外键失效等问题,建议先检查数据有效性后重新启用约束。启用命令示例:ALTER TABLE SCOTT.EMP ENABLE CONSTRAINT PK_EMP;
2026-01-31 10:52:56
512
原创 ORACLE数据库巡检SQL脚本--5、查看是否有僵死进程
摘要: 本文介绍了一种通过SQL脚本识别Oracle数据库中无对应会话的“孤儿进程”(僵死进程)的方法。脚本通过左连接V$PROCESS和V$SESSION视图,筛选出SID为NULL且PNAME非后台进程的记录作为僵死进程。关键字段包括进程地址(ADDR)、操作系统进程ID(SPID)、进程名称(PNAME)及会话ID(SID)。后台进程(如PMON、SMON)即使无会话也不视为僵死。发现僵死进程后,可通过操作系统命令(如kill -9或taskkill)终止,并建议优化连接池配置以减少资源占用。脚本适用
2026-01-31 08:00:00
563
原创 ORACLE数据库巡检SQL脚本--6、检查是否有失效索引
摘要: 本文提供了两个Oracle数据库脚本,分别用于检测普通非分区索引和分区索引的失效情况(状态为UNUSABLE)。脚本1检查普通索引,输出索引所属用户、名称、类型和重建语句;脚本2针对分区索引,显示分区名称、表空间和分区级重建语句。关键字段STATUS标识无效索引,OWNER和PARTITION_NAME帮助定位问题源。无效索引会导致查询性能下降、DML异常和空间浪费,建议通过ALTER INDEX REBUILD或REBUILD PARTITION命令修复。分区索引可单独重建失效分区以提升效率。
2026-01-31 08:00:00
692
原创 ORACLE数据库巡检SQL脚本--4、检查锁阻塞
本文介绍了一个用于排查数据库锁等待问题的SQL脚本。该脚本通过查询V$LOCK视图,能够识别出数据库中的"阻塞者"(持有锁资源的会话)和"等待者"(被阻塞的会话)。脚本输出包含会话标识、锁资源信息、锁模式和类型等关键字段,帮助DBA快速定位锁冲突源。文章还提供了锁问题的判断标准和处理建议,包括如何查询阻塞会话执行的SQL语句以及终止阻塞会话的方法。该脚本对于诊断和解决数据库性能问题具有实用价值,特别是在处理事务锁(TX)和表锁(TM)导致的阻塞问题时尤为有效。
2026-01-30 15:59:31
344
原创 ORACLE数据库巡检SQL脚本--3、检查在线日志是否存在小于50M的及状态不正常
摘要:本文介绍了检查Oracle数据库在线日志状态的SQL脚本及分析要点。脚本查询日志组号、状态、大小(MB)、文件路径和归档状态,重点关注日志组大小是否小于50M(生产环境建议100M以上)以及状态是否异常(应为ACTIVE/INACTIVE/CURRENT)。异常情况包括日志组过小导致频繁切换、状态显示UNUSED/INVALID等。正常标准要求日志大小合理、状态正确且归档模式开启(显示YES)。该检查有助于确保数据库日志配置合理运行正常。
2026-01-30 15:55:34
494
原创 ORACLE数据库巡检SQL脚本--2、检查是否有 offline 状态的表空间
摘要:本文介绍通过数据文件状态判断表空间是否离线的方法。核心SQL查询DBA_DATA_FILES视图,重点关注ONLINE_STATUS字段:OFFLINE表示数据文件离线,间接反映表空间部分离线;RECOVER表示需恢复;SYSTEM为系统文件。建议结合DBA_DATA_FILES.TABLESPACE_NAME确认所属表空间状态。另提供直接查询离线表空间的SQL,通过DBA_TABLESPACES视图筛选STATUS='OFFLINE'的记录。两种方法结合可全面监控表空间状态。
2026-01-29 10:23:54
50
原创 ORACLE数据库巡检SQL脚本--1、检查表空间使用情况
查询各表空间的管理属性、空间总量、空闲量及使用率,用于巡检表空间是否存在空间不足风险。
2026-01-28 21:23:01
197
原创 Oracle数据库操作深入研究:备份、数据删除与性能优化
Oracle数据库操作最佳实践:备份、删除与性能恢复 本研究报告针对Oracle数据库管理中的三大核心挑战提出解决方案。在备份策略方面,推荐采用增量永远备份、数据泵(expdp)和表空间传输等2025年最新技术,显著提升备份效率15-50%。数据删除策略部分比较了DELETE、TRUNCATE和DROP TABLE方法的优劣,提出分批次删除、分区表优化和并行删除等大数据量处理方案。数据删除后的性能恢复则重点介绍了表收缩操作、分区表处理和表重建等存储空间释放技术。研究为DBA提供了从数据安全备份到高效删除再到
2025-08-14 00:54:09
794
原创 Oracle表数据维护全流程指南:备份、删除与性能优化
Oracle表数据维护完整指南:备份、删除与优化 本文系统介绍了Oracle数据库表数据维护的三个关键环节: 数据备份:详细讲解了5种备份方法,包括完整表复制、部分字段复制、仅复制结构等,特别强调了CREATE TABLE AS SELECT和INSERT SELECT的用法差异及注意事项,并补充了expdp/exp工具的使用说明。 数据删除:提供了4种删除策略,重点说明truncate的高效性、临时表过渡法的适用场景,以及并行删除和分批删除的优化技巧,特别提醒外键约束检查的重要性。 空间释放:深入解析了s
2025-08-14 00:50:32
1624
原创 ORACLE物化视图快速刷新失败原因查找
最近在维护Oracle数据库时,发现创建的物化视图没法按预期自动刷新,跟大家分享下整个过程,也希望能给遇到类似问题的朋友一点参考。
2025-08-08 15:46:12
878
原创 ORACLE看当前连接数的方法
序号语句统计对象核心用途1v$session总计数会话(逻辑连接)查看所有连接到数据库的会话总数2v$process总计数进程(物理进程)查看数据库使用的系统进程总数3活跃会话监控当前数据库的实际工作负载通过这三个指标的组合,可以全面了解数据库的连接状态(如总连接数、资源占用、繁忙程度等)。在实际操作中,可根据具体需求选择合适的查询语句。比如,监控系统负载时,查看并发连接数和总连接数能帮助了解数据库当前的繁忙程度;
2025-08-08 14:50:37
1482
原创 docker连接宿主机redis,提示Connection refused
然后执行auth输入密码,连接成功,执行ping命令,回复PONG,说明配置文件读取都没有问题。发现redis 服务正常,然后用本机使用redis工具连接是否可以连接,测试发现本机的连接工具可以正常远程连接redis。服务器重启后docker连接宿主机redis,提示Connection refused。4、服务器防火墙关闭,如果时云服务器保证redis端口(一般为6379)可以正常访问。2、确定redis读取正确的配置文件redis.conf。8、宿主机本机可以正常连接redis。
2024-08-21 13:35:44
1198
原创 ORCLE删除数据库文件
在实际操作中很少会去删除数据库文件,但是凡事都有例外,由于一些特殊原因,例如存储方式变化、磁盘空间不够等,需要调整和删除一些无效的数据库文件,本文介绍一下实践出来的一种删除数据库文件的操作方式。
2024-05-28 14:40:47
1829
原创 IDEA利用maven生成javadoc,控制台中文乱码
刚开始在pom文件中没有添加configuration指定编码,添加编码后,重新执行,还是乱码,错误依旧。
2024-03-08 10:30:23
1579
2
原创 软考:信息系统项目管理师(高项)第4版49个过程
软考高项第4版已经更新,5大过程组,10大知识领域,49个过程。其实每个过程没必要什么口诀,只要记住10知识域就行了,把下图做一个表格Excel表格,然后49个过程空出来,打印成纸质或者电子版的,每天默写一遍,一个星期就记住了。
2023-10-26 17:14:42
1253
原创 ORACLE的分区(一)
随着时间的发展,一个表的数据会越来越多,当数据量增大的时候我们一般采取建立索引优化索引的方式提高查询速度,但是数据量再次增大即使是索引也无法提高速度,这时候我们可以选择表分区,当然也可以通过分表、分库的方式,但是分表、分库会导致程序上的更改,代价比较大,当然也有其他的优化方式,本文不做讨论,本文主要来说一下分区。中,基于分区键的哈希值来确定如何映射到各区上的,因此,分区的数量会直接影响数据的分布,所以使用哈希分区时,需要指定分区数量。每个分区是一个独立的对象,具有其自己的名称和存储特征(可选的)。
2023-09-08 18:00:33
2721
原创 微信小程序字符串转时间的坑
刚开始以为是日期字符串不完整,导致获取时间失败,就把value改成了 2023-09-01 12:30:00,打印结果还是一样。在微信开发工具上测试正常,在XR真机上测试也正常,但是在同事的苹果11手机上测试很多次都不行。使用微信开发工具的预览功能,并开启调试窗口,从控制台打印的数据看到。解决办法开头已经介绍了,但是这个问题有点怪,微信版本都一样,按道理来说小程序运行的容器也应该一样,同样的程序却有不同的结果,有点坑。这个正则表达式是替换字符串的“-”,突然醒悟,会不会是格式的问题,会不会是格式的问题?
2023-09-01 12:50:43
1161
1
原创 Nginx反向代理提示413 Request Entity Too Large
属性是用来配置客户端请求体的最大值,这个属性可以配置在http节点下(http全局),也可以配置在server节点下(server全局),也可以配置在location节点下(单应用)。要注意的是,这个属性的默认值是1m,也就是限制了请求实体的大小为1m。从提示信息看,原因是请求体太大。配置后重新Nginx。
2023-07-05 10:32:15
1299
原创 MySql常见错误及处理方案
刚开始以为是DOS窗口权限的问题,后来改为管理员权限运行依然是这个问题,仔细查看发现提示信息盘符后面的\没有了,怀疑可能是分隔符的问题。如果生成的临时密码包含
2022-10-24 09:25:25
2319
2
原创 CentOS离线安装MySQL
MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。先设置mysql目录,编辑/mnt/software/mysql/support-files/mysql.serve,修改basedir和datadir,大概在46行的位置。删除 /mnt/data/mysql/data目录即可。创建文件夹/mnt/data/mysql。............
2022-10-24 08:48:47
4658
原创 CentOS离线安装Tomcat
找到jdk安装目录下lib/security(/mnt/software/jdk8/jre/lib/security)文件夹下的java.security文件,将securerandom.source=file:/dev/random。把解压后的文件夹移动到/mnt/software目录下,并重命名为tomcat-8.5.82-gtmall。将下载的安装包上传到服务器上,例如上传到/mnt/software/tools文件夹下。目录下都对应一个脚本,新建一个服务也即新建一个脚本在该目录下。
2022-10-24 08:47:51
1369
原创 CentOS磁盘挂载
在购买云服务的时候,一般都会自带一块40G的系统盘,然后自己在选购数据盘,如果是windows系统,购买的数据盘会作为一个分区存在,比如D盘、E盘等,可以直接使用,但是在Linux必须进行挂载才能正常使用。使用环境:centos 7.9。.........
2022-10-24 08:44:56
23371
1
原创 Nginx SSL+tomcat,request.getScheme() 取到的协议不正确
您的服务器访问日志包含在服务器和负载平衡器之间使用的协议,但不包括客户端和负载平衡器之间使用的协议。要确定客户端和负载平衡器之间使用的协议,没有使用Nginx时,直接通通过tomcat访问,https://xxxx,系统可以正常访问。这个方法注释写着可以返回http, https, or ftp,并且在没有Nginx的时候是可以正常访问的,说明Nginx转发时并没有带上协议进行转发。现象:使用Nginx代理tomcat,使用https访问,在火狐浏览器下无法访问。...
2022-10-24 08:42:30
2360
Eclipse3.5集成 Myeclipse8.5
2011-04-21
struts项目搭建
2012-06-20
ActiveMQ入门教程
2012-06-20
ALCOR_U2_MP_v19.04.01.00.zip
2020-05-08
ChipGenius_v4_19_0319.zip
2020-05-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅