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

Oracle 服务器日常巡检

文章目录

    • 1、数据库基本状况检查
    • 2、数据库相关资源使用情况检查
    • 3、检查Oracle数据库性能
    • 4、数据库服务器CPU、MEM、I/O性能
    • 5、数据库服务器安全检查

Oracle数据库的日常巡检内容包括:

(1)Oracle数据库基本状况检查;

(2)Oracle相关资源的使用情况检查;

(3)Oracle数据库性能检查;

(4)数据库服务器cpu、mem和I/O性能检查;

(5)数据库服务器安全性及其他事项检查。

1、数据库基本状况检查

###(1)数据库实例状况检查

select instance_name,host_name,startup_time,status,database_status from v$instance;
说明:其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。

###(2)数据库表空间状态检查

select tablespace_name,status from dba_tablespaces;
说明:输出结果中STATUS应该都为“ONLINE”。

###(3)数据库数据文件检查

select FILE_NAME,TABLESPACE_NAME,BYTES/1024/1024,STATUS from dba_data_files;
说明:输出结果中“STATUS”应该都为“AVAILABLE”。

###(4)数据库在线日志检查

col MEMBER for a60
select group#,status,type,member from v$logfile;
说明:输出结果应该有3条或3条以上记录,“STATUS”应该为非“INVALID”,非“DELETED”。“STATUS”的值为空表示正常。

###(5)数据库回滚段检查

select segment_name,status from dba_rollback_segs;
说明:输出结果中所有回滚段的“STATUS”应该为“ONLINE”。

2、数据库相关资源使用情况检查

###(1)检查Oracle初始化文件中相关参数值

select resource_name,max_utilization,initial_allocation, limit_value from v$resource_limit;说明:若字段值【LIMIT_VALU】-【MAX_UTILIZATION】<=5,则表明与RESOURCE_NAME相关的Oracle初始化参数需要调整。可以通过修改Oracle初始化参数文件$ORACLE_BASE/admin/orcl/pfile/initORCL.ora来修改。

###(2)检查数据库连接情况

select sid,serial#,username,program,machine,status from v$session;说明:STATUS 当前这个会话的状态,ACTIVE表示会话正在执行某些任务,INACTIVE表示当前会话没有执行任何操作;如果建立了过多的连接,会消耗数据库的资源,同时,对一些“挂死”的连接可能需要手工进行清理。

###(3)检查表空间使用情况

select f.tablespace_name,a.total,f.free,round((f.free / a.total)*100) "% Free"from (select tablespace_name, sum(bytes / (1024 * 1024)) totalfrom dba_data_filesgroup by tablespace_name) a,(select tablespace_name, round(sum(bytes / (1024 * 1024))) freefrom dba_free_spacegroup by tablespace_name) fWHERE a.tablespace_name = f.tablespace_name(+)order by "% Free";说明:如果空闲率【%Free】小于10%以上,则注意要增加数据文件来扩展表空间而不是用数据文件的自动扩展功能。

###(4)检查system表空间内的内容

select distinct (owner)from dba_tableswhere tablespace_name = 'SYSTEM'and owner != 'SYS'and owner != 'SYSTEM'
union
select distinct (owner)from dba_indexeswhere tablespace_name = 'SYSTEM'and owner != 'SYS'and owner != 'SYSTEM';说明:如果记录返回,则表明system表空间内存在一些非system和sys用户的对象。应该进一步检查这些对象是否与我们应用相关。如果相关请把这些对象移到非System表空间,同时应该检查这些对象属主的缺省表空间值。

###(5)检查一些扩展异常的对象

select Segment_Name,Segment_Type,TableSpace_Name,(Extents / Max_extents) * 100 PercentFrom sys.DBA_SegmentsWhere Max_Extents != 0and (Extents / Max_extents) * 100 >= 95order By Percent;说明:如果有记录返回,则这些对象的扩展已经快达到它定义时的最大扩展值。对于这些对象要修改它的存储结构参数。

###(6)检查对象的下一扩展值与表空间的最大扩展值

select a.table_name, a.next_extent, a.tablespace_namefrom all_tables a,(select tablespace_name, max(bytes) as big_chunkfrom dba_free_spacegroup by tablespace_name) fwhere f.tablespace_name = a.tablespace_nameand a.next_extent > f.big_chunk
union
select a.index_name, a.next_extent, a.tablespace_namefrom all_indexes a,(select tablespace_name, max(bytes) as big_chunkfrom dba_free_spacegroup by tablespace_name) fwhere f.tablespace_name = a.tablespace_nameand a.next_extent > f.big_chunk;说明:如果有记录返回,则表明这些对象的下一个扩展大于该对象所属表空间的最大扩展值,需调整相应表空间的存储参数。

3、检查Oracle数据库性能

###(1)检查数据库的等待事件

set pages 80 
set lines 120
col event for a40
select sid, event, p1, p2, p3, WAIT_TIME, SECONDS_IN_WAIT from v$session_wait where event not like 'SQL%' and event not like 'rdbms%';说明:如果数据库长时间持续出现大量像latch free,enqueue,buffer busy waits,db file sequential read,db file scattered read等等待事件时,需要对其进行分析,可能存在问题的语句。

###(2)等待时间最多的5个系统等待事件

SELECT *FROM (SELECT *FROM V$SYSTEM_EVENTWHERE EVENT NOT LIKE 'SQL%'ORDER BY TOTAL_WAITS DESC)WHERE ROWNUM <= 5;

###(3)查找前十条性能差的sql

SELECT *FROM (SELECT PARSING_USER_ID EXECUTIONS,SORTS,COMMAND_TYPE,DISK_READS,SQL_TEXTFROM V$SQLAREAORDER BY DISK_READS DESC)WHERE ROWNUM < 10;

###(4)Disk Read最高的SQL语句的获取

SELECT SQL_TEXTFROM (SELECT * FROM V$SQLAREA ORDER BY DISK_READS)WHERE ROWNUM <= 5;

###(5)检查死锁及处理

select sid,serial#,username,SCHEMANAME,osuser,MACHINE,terminal,PROGRAM,owner,object_name,object_type,o.object_idfrom dba_objects o, v$locked_object l, v$session swhere o.object_id = l.object_idand s.sid = l.session_id;

4、数据库服务器CPU、MEM、I/O性能

###(1)CPU查询指令

# top

###(2)内存查询指令

# free -m

###(3)I/O查询指令

# iostat -k 1 3

###(4)系统负载情况查询指令

# uptime

###(5)僵尸进程查询指令

select spid from v$process where addr not in (select paddr from v$session);

###(6)日志缓冲区查询指令

select name,value from v$sysstat where name in ('redo entries','redo buffer allocation retries');说明:如果【redo buffer allocation retries】/【redo entries】的值超过1%,则需要增大log_buffer。

5、数据库服务器安全检查

###(1)系统安全日志检查

检查登录成功日志的查询指令为 
# grep -i accepted /var/log/secure检查登录失败日志的查询指令为 
# grep -i inval /var/log/secure &&grep -i failed /var/log/secure

###(2)crontab任务检查

Oracle Job是否有失败任务的查询select job,what,last_date,next_date,failures,broken from dba_jobs Where schema_user='system';

###(3)检查失效的索引

select index_name, table_name, tablespace_name, status From dba_indexes Where owner = 'system' And status <> 'VALID';说明:分区表上的索引status为空是正常的,如有失效索引则对该索引做rebuild。其指令为alter index INDEX_NAME rebuild tablespace TABLESPACE_NAME;

相关文章:

Oracle 服务器日常巡检

文章目录 1、数据库基本状况检查2、数据库相关资源使用情况检查3、检查Oracle数据库性能4、数据库服务器CPU、MEM、I/O性能5、数据库服务器安全检查 Oracle数据库的日常巡检内容包括&#xff1a; &#xff08;1&#xff09;Oracle数据库基本状况检查&#xff1b; &#xff08…...

【轨道机器人】实现Windows与下位机串口通信(未完成)

方案一&#xff1a;QT&#xff0c;编写类似串口调试助手的APP&#xff0c;连接上硬件&#xff0c;qt有个好像是串口缓存函数&#xff0c;可以防止占用CPU。&#xff08;缺点qt估计要时间学&#xff09; 方案二&#xff1a;利用vscode、C&#xff0c;编写一个可执行exe文件&…...

无人机内存卡数据恢复

1.插入内存卡 2.选择对应的品牌 3.点击恢复 建议&#xff1a;发现数据打不开或者丢失情况&#xff0c;建议及时断电&#xff0c;以免影响数据的正常恢复&#xff01; #无人机##数据恢复##储存卡#...

基于SSM的校园二手物品交易市场设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…...

Android14 Beta 5

Beta 5&#xff0c;这是 Android 14 Beta 计划中的最后一次计划更新。这是确保您的应用程序已准备就绪并在非 Beta 用户开始获取 Android 14 之前提供反馈的最后机会。为了使您能够在跨多种外形尺寸的设备上测试您的应用程序&#xff0c;Beta 5 适用于 Pixel Tablet 和 Pixel F…...

力扣labuladong——一刷day32

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、力扣654. 最大二叉树二、力扣105. 从前序与中序遍历序列构造二叉树三、力扣106. 从中序与后序遍历序列构造二叉树四、力扣889. 根据前序和后序遍历构造二叉…...

Day01_《MySQL索引与性能优化》摘要

一、资料 视频&#xff1a;《尚硅谷MySQL数据库高级&#xff0c;mysql优化&#xff0c;数据库优化》—周阳 其他博主的完整笔记&#xff1a;MySQL 我的笔记&#xff1a;我的笔记只总结了视频p14-p46部分&#xff0c;因为只有这部分是讲解了MySQL的索引与explain语句分析优化…...

BMS系统项目

1、通过电压监测是否冲满&#xff0c;通过电压可以监测是否放完电 电池得参数 单体过压&#xff08;充满电&#xff09; 过压恢复&#xff08;百分之90多&#xff09; 欠压保护&#xff08;百分之几得电&#xff0c;快关机了&#xff09; 欠压恢复&#xff08;就是欠压之上…...

sql server 多行数据合并一行显示

在 SQL Server 中&#xff0c;可以使用 STUFF 和 FOR XML PATH 进行多行合并成一行。例如&#xff0c;假设有一个表名为 orders &#xff0c;其中包含订单号和产品名称&#xff1a; order_idproduct_name1Product A1Product B2Product C2Product D 以下查询将在 order_id 列上…...

「我的AIGC咒语库:分享和AI对话交流的秘诀——如何利用Prompt和AI进行高效交流?」

文章目录 每日一句正能量前言基础介绍什么是Prompt?什么是 Prompt Engineering&#xff1f;为什么需要 Prompt Engineering&#xff1f;如何进行 Prompt Engineering&#xff1f;Prompt的基本原则Prompt的编写模式AI 可以帮助程序员做什么&#xff1f;技术知识总结拆解任务阅读…...

强国有我助力苔花绽放 | 爱心捐赠仪式在西安顺利举办

2023年11月2日&#xff0c;由中国儿童中心、全国少年儿童“双有”主题教育活动组委会、中华少年儿童慈善救助基金会强国有我项目主办&#xff0c;陕西省青少年宫协会、陕西省妇女儿童活动中心、陕西回归儿童救助中心承办的“苔花绽放”事实无人抚养儿童关爱计划捐赠仪式在陕西回…...

Flink SQL -- CheckPoint

1、开启CheckPoint checkpoint可以定时将flink任务的状态持久化到hdfs中&#xff0c;任务执行失败重启可以保证中间结果不丢失 # 修改flink配置文件 vim flink-conf.yaml# checkppint 间隔时间 execution.checkpointing.interval: 1min # 任务手动取消时保存checkpoint execu…...

Load-balanced-online-OJ-system 负载均衡的OJ系统项目

前言 那么这里博主先安利一些干货满满的专栏了&#xff01; 首先是博主的高质量博客的汇总&#xff0c;这个专栏里面的博客&#xff0c;都是博主最最用心写的一部分&#xff0c;干货满满&#xff0c;希望对大家有帮助。 高质量博客汇总 本项目Github地址 - Load-balanced-o…...

ES6 导入导出

ES6 导入导出 ES6引入了原生的模块化支持&#xff0c;使得JavaScript代码可以被划分为可重用的模块。这些模块可以导出部分代码&#xff08;如函数、对象、类等&#xff09;&#xff0c;并被其他模块导入使用。 export 命名导出&#xff08;Named Exports&#xff09; 可以从…...

【Liunx】部署Ansible自动化运维工具

Ansible自动化运维工具 概述安装部署1.通过yum下载Ansible2.对自己做免密配置3.修改ansiable host配置对服务器进行分组4.测试&#xff1a;对所有服务器进行ping命令5.写playbook6.执行我们写的playbook脚本7.验证 概述 ansible是新出现的自动化运维工具&#xff0c;基于Pytho…...

Python的基础语法

1. 注释&#xff1a;在Python中&#xff0c;使用井号&#xff08;#&#xff09;表示单行注释&#xff0c;三个单引号&#xff08;&#xff09;或三个双引号&#xff08;"""&#xff09;表示多行注释。 2. 变量&#xff1a;在Python中&#xff0c;不需要声明变量…...

Skywalking流程分析_8(拦截器插件的加载)

前言 在之前的文章中我们将&#xff0c;静态方法、构造方法、实例方法的增强逻辑都分析完毕&#xff0c;但在增强前&#xff0c;对于拦截类的加载是至关重要的&#xff0c;下面我们就来详细的分析 增强插件的加载 静态方法增强前的加载 //clazz 要修改的字节码的原生类 Sta…...

智能AI系统ChatGPT网站源码+支持OpenAI DALL-E3文生图+支持ai绘画(Midjourney)/支持GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…...

腾讯云服务器可用区是什么意思?可用区选择方法

腾讯云服务器可用区是什么意思&#xff1f;云服务器可用区如何选择&#xff1f;可用区是指在同一个地域内电力和网络相互独立的区域&#xff0c;可用区可以做到故障隔离&#xff0c;所以可用区存在的意义在于构建高可用、高容灾应用&#xff0c;将应用部署在不同可用区内&#…...

Jupyter运行显存爆炸,明明上一个单元格已经运行完毕为什么还是会炸?

问题再现 上一个单元格运行完了train()&#xff0c;我想要用模型输出做点东西&#xff0c;可是提醒我显存不够&#xff1b; 在命令行中查看显存占用情况&#xff0c;发现4张卡都占满了&#xff0c;可真是太厉害了&#xff01; 解决方案 查看原来写的validate()&#xff0c;发…...

换掉 Notepad++,事实证明它更牛逼!

提到文本编辑工具&#xff0c;大家肯定第一时间想到的是 Notepad 。Notepad 是一种流行的源代码编辑器&#xff0c;也是 Windows 用户的可靠记事本替代品。它是一个功能强大的实用程序&#xff0c;可在不占用大量存储空间的情况下提供最佳性能。不幸的是&#xff0c;它不适用于…...

Gemma-3-12B-IT WebUI惊艳效果:Agent框架设计+Tool Calling实现

Gemma-3-12B-IT WebUI惊艳效果&#xff1a;Agent框架设计Tool Calling实现 1. 引言&#xff1a;当大模型拥有“手”和“眼” 想象一下&#xff0c;你正在和一个非常聪明的助手聊天。它能回答你的问题&#xff0c;帮你写代码&#xff0c;甚至能创作故事。但当你问它“现在几点…...

Java 26 FFM API进阶:零JNI调用TensorRT/OpenVINO,AI端到端延迟砍半

文章目录一、JNI&#xff0c;AI时代的"文言文写作"二、FFM API&#xff1a;Java调用原生代码的"现代白话文"1. Arena&#xff1a;比try-with-resources还狠的内存管理2. Linker&#xff1a;C函数的"Java身份证"3. jextract&#xff1a;头文件自动…...

Realtek RTL8821CU无线网卡驱动解决方案 - Linux系统WiFi适配完美指南

Realtek RTL8821CU无线网卡驱动解决方案 - Linux系统WiFi适配完美指南 【免费下载链接】rtl8821CU Realtek RTL8811CU/RTL8821CU USB Wi-Fi adapter driver for Linux 项目地址: https://gitcode.com/gh_mirrors/rt/rtl8821CU 你是否在Linux系统上使用Realtek RTL8821CU…...

像素剧本圣殿部署指南:Qwen2.5-14B-Instruct在生产环境中稳定运行的GPU显存优化技巧

像素剧本圣殿部署指南&#xff1a;Qwen2.5-14B-Instruct在生产环境中稳定运行的GPU显存优化技巧 1. 项目概述 像素剧本圣殿&#xff08;Pixel Script Temple&#xff09;是一款基于Qwen2.5-14B-Instruct大模型深度微调的专业剧本创作工具。它将先进的AI推理能力与独特的8-Bit…...

【QT】-- QT操作数据库

前言&#xff1a; Qt是C一个开发框架&#xff0c;具有跨平台特性。这篇是作者大二学习的时候做的笔记&#xff0c;有可能有错误&#xff0c;请各位批评指正。这篇记录QT操作数据库。欢迎大家收藏 关注&#xff0c;作者将会持续更新。 文章目录Qt 操作数据库QSqlDatabase数据库…...

基于博途1200PLC+HMI的六层三部电梯控制系统仿真程序

基于博途1200PLCHMI六层三部电梯控制系统仿真 程序&#xff1a; 1、任务&#xff1a;PLC.人机界面控制三部电梯集群运行 2、系统说明&#xff1a; 系统设有上呼、下呼、内呼、手动开关门、光幕、检修、故障、满载、等模拟模式控制&#xff0c; 系统共享厅外召唤信号&#xff0c…...

ArchLinux新手必看:用Fcitx5搞定中文输入,从安装到美化皮肤保姆级教程

ArchLinux新手必看&#xff1a;用Fcitx5搞定中文输入&#xff0c;从安装到美化皮肤保姆级教程 刚接触ArchLinux的新手们&#xff0c;面对命令行界面时总会有些手足无措。特别是当需要输入中文时&#xff0c;如何配置一个既美观又实用的输入法成了许多人的第一个挑战。Fcitx5作…...

ARMv8虚拟化性能优化指南:TLB的ASID和VMID到底怎么用?

ARMv8虚拟化性能优化指南&#xff1a;TLB的ASID和VMID实战解析 虚拟化技术在云计算和容器化场景中已成为基础设施的核心支柱&#xff0c;而ARM架构凭借其能效优势&#xff0c;正逐步渗透到数据中心领域。但在高密度虚拟化环境中&#xff0c;内存访问性能往往成为瓶颈——我们曾…...

CentOS部署PHP项目完整步骤

CentOS 7.9 部署 PHP 7.4 MySQL 5.7.44 完整步骤 由于 CentOS 7 已于 2024 年 6 月 30 日停止官方维护&#xff0c;原有的 yum 源已不可用&#xff0c;因此必须首先更换为阿里云镜像源才能正常安装软件。 一、系统环境准备 1.1 更换阿里云 YUM 源 # 1. 备份原有源 mv /etc/yum…...