MYSQL故障排查和环境优化
一、MySQL故障排查
1. 单实例常见故障
(1)连接失败类问题
-
ERROR 2002 (HY000): Can't connect to MySQL server
原因:MySQL未启动或端口被防火墙拦截。
解决:启动MySQL服务(systemctl start mysqld
)或开放端口(如3306)367。 -
ERROR 1045 (28000): Access denied
原因:密码错误或权限不足。
解决:修改配置文件添加skip-grant-tables
,重启后重置密码并授权367。
(2)性能与资源类问题
-
Too many connections
原因:连接数超出max_connections
限制。
解决:临时调整(SET GLOBAL max_connections=10000;
)或永久修改配置文件36。 -
Host blocked due to connection errors
原因:同一IP频繁连接失败超过max_connect_errors
阈值。
解决:执行mysqladmin flush-hosts
或增大max_connect_errors
值36。
(3)数据损坏与表修复
-
表文件损坏(如MYI文件错误)
原因:非正常关机或磁盘空间不足。
解决:使用myisamchk -r
修复或通过phpMyAdmin修复表36。 -
InnoDB数据文件损坏
解决:设置innodb_force_recovery=4
启动数据库,备份后重建表37。
2. 主从复制故障
-
Slave_IO_Running为NO
原因:主从server-id
重复或网络中断。
解决:修改从库server-id
并重启同步367。 -
Slave_SQL_Running为NO(主键冲突)
解决:跳过错误(SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
)或设置从库只读36。 -
中继日志损坏
解决:重新指定同步点(CHANGE MASTER TO MASTER_LOG_FILE='...', MASTER_LOG_POS=...;
)36。
二、生产环境优化策略
1. 硬件与存储优化
-
CPU:选择多核高主频处理器(如Intel Xeon),支持高并发处理17。
-
内存:建议至少4GB,优先分配大内存给
innodb_buffer_pool_size
(占物理内存70%~80%)157。 -
磁盘:使用SSD或RAID 10阵列,避免RAID 5(写性能差)157。
2. 查询与索引优化
-
索引设计
-
选择性高列优先:如用户ID而非性别字段25。
-
覆盖索引:避免回表查询(如
SELECT name FROM users WHERE name='Alice'
)25。 -
复合索引:遵循最左前缀原则(如索引
(col1,col2)
需条件包含col1
)25。
-
-
SQL语句优化
-
避免全表扫描:使用
EXPLAIN
检查执行计划29。 -
分页优化:用
WHERE id > 1000 LIMIT 10
替代LIMIT 1000,10
25。 -
批量操作:合并INSERT语句减少事务开销25。
-
3. 配置参数调优
-
缓冲池:
innodb_buffer_pool_size
设置为物理内存的70%~80%57。 -
连接管理:调整
max_connections
(默认151)和wait_timeout
(建议120秒)57。 -
日志配置:开启慢查询日志(
slow_query_log=ON
)并设置合理阈值(long_query_time=1
)25。
4. 架构与维护优化
-
读写分离:通过主从复制分离读/写流量,使用中间件(如ProxySQL)1410。
-
分库分表:按业务拆分大表,减少单表压力14。
-
定期维护:
-
使用
OPTIMIZE TABLE
减少碎片57。 -
监控工具:Percona Monitoring或Prometheus+Grafana10。
-
三、高级技巧与注意事项
-
关闭DNS解析:在配置中添加
skip-name-resolve
提升连接速度(需改用IP授权)8。 -
磁盘调度策略:设置为
deadline
或noop
(SSD适用)以提高I/O效率8。 -
网络优化:调整TCP缓冲队列(
net.ipv4.tcp_max_syn_backlog
)和随机端口范围8。
相关文章:
MYSQL故障排查和环境优化
一、MySQL故障排查 1. 单实例常见故障 (1)连接失败类问题 ERROR 2002 (HY000): Cant connect to MySQL server 原因:MySQL未启动或端口被防火墙拦截。 解决:启动MySQL服务(systemctl start mysqld)或开放…...
sts下载安装
windows下STS(Spring Tools Suite,自带spring插件的eclipse)的下载与安装_sts下载-CSDN博客Spring Boot安装与配置教程_spring boot安装配置-CSDN博客...
Baklib知识中台架构设计与智能服务实践
知识中台架构四库体系解析 现代企业知识管理系统的核心在于构建结构化知识资产池,Baklib通过独创的四库体系——知识库、流程库、案例库、模型库——实现知识资源的全生命周期管理。其中,知识库作为基础层,聚合文档、图谱等显性知识…...
TinyEngine 2.5版本正式发布:多选交互优化升级,页面预览支持热更新,性能持续跃升!
前言 TinyEngine低代码引擎使开发者能够定制低代码平台。它是低代码平台的底座,提供可视化搭建页面等基础能力,既可以通过线上搭配组合,也可以通过cli创建个人工程进行二次开发,实时定制出自己的低代码平台。适用于多场景的低代码…...
嵌入式系统:技术演进、应用领域发展趋势全面解析
嵌入式系统:技术演进、应用领域及发展趋势全面解析 一、引言 在当今数字化时代,嵌入式系统已悄然融入到我们生活的方方面面,从日常使用的智能手机、智能家电,到汽车中的各种控制系统,乃至工业生产中的自动化设备、航…...
软件工程-项目管理
进度管理 又叫时间管理,确定进度目标,在与质量、成本目标协调的基础上,实现工期目标 具体包括以下过程: 活动定义:确定完成各项交付成果需要展开的具体活动活动排序:活动之间的先后关系和逻辑关系活动资…...
计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 13.几何着色器(二)爆炸效果修改图元类型
1. 爆炸效果 这是几何着色器中的一个常见应用,我们使用几何着色器来模拟爆炸效果。 我们希望将每个三角形沿其表面法向量向外移动,则实际上是将组成环面的三角形向外“爆炸”。 我们只需取三个顶点的法向量,然后将其相加并求平均ÿ…...
需求频繁变更?AI 驱动的自动化解决方案实践
在软件开发的实际场景中,需求频繁变更已成为困扰开发团队的常见难题。每一次需求变动,都意味着代码的重新编写、调试与测试,不仅消耗大量时间和人力成本,还可能引发一系列连锁反应,影响项目进度与质量。而飞算 JavaAI …...
ffmpeg转码后的视频有横条纹和彩虹横条等乱彩问题
原因:ffmpeg安装的时,./configure 添加了–disable-asm参数,导致色彩异常。 **解决方法:**移除该参数–disable-asm。 注意:不加该参数可能提示no yasm或nasm等问题,解决该问题即可。大多是环境变量没有配置…...
QT6 源(111):阅读与注释菜单栏 QMenuBar,进行属性与成员函数测试,信号与槽函数测试,并给出源码
(1) (2) (3) (4) (5) (6) (7)以下源代码来自于头文件 qmenubar . h : #ifndef QMENUBAR_H #defi…...
达梦数据库对json字段进行操作
在达梦数据库中,字段类型不能显式定义为JSON,通常以VARCHAR或TEXT类型存储JSON字符串,可以通过内置的JSON函数对JSON格式数据进行操作和条件过滤。 1. 创建表并插入JSON数据 假设字段类型为VARCHAR,存储JSON字符串: -…...
基于vue框架的东莞市二手相机交易管理系统5yz0u(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
系统程序文件列表 项目功能:用户,相机分类,二手相机 开题报告内容 基于FlaskVue框架的东莞市二手相机交易管理系统开题报告 一、研究背景与意义 1.1 研究背景 随着数字技术的迅猛发展和摄影文化的广泛普及,相机已成为人们记录生活、表达创意的重要工…...
谷歌 NotebookLM 即将推出 Sparks 视频概览:Gemini 与 Deep Research 加持,可生成 1 - 3 分钟 AI 视频
近期,谷歌旗下的 NotebookLM 即将推出一项令人瞩目的新功能 ——Sparks 视频概览。这一功能借助 Gemini 与 Deep Research 的强大能力,能够生成 1 - 3 分钟的 AI 视频,为用户带来全新的内容创作与信息获取体验。 NotebookLM:AI 笔…...
MCP详解
前言:AI能力跃迁的“最后一公里” 当前,大语言模型(LLMs)已展现出文本生成、逻辑推理等通用能力,但其与真实世界的交互仍存在瓶颈。传统模式下,开发者需为每个外部工具(如数据库、API、文件系统)编写定制化接口,导致开发周期长、兼容性差、安全风险高。而模型上下…...
信息学奥赛一本通 1539:简单题 | 洛谷 P5057 [CQOI2006] 简单题
【题目链接】 ybt 1539:简单题 洛谷 P5057 [CQOI2006] 简单题 【题目考点】 1. 树状数组 模板题及讲解:洛谷 P3374 【模板】树状数组 【解题思路】 解法1:树状数组 该有01构成数组初值都为0。 某位置的元素被修改奇数次后值为1&#x…...
设计模式-面试题
摘要: 1、通俗易懂,适合小白 2、仅做面试复习用,部分来源网络,博文免费,知识无价,侵权请联系! 1. 什么是设计模式? 设计模式是在软件开发过程中,针对反复出现的问题所…...
upload-labs靶场通关详解:第11关
一、分析源代码 $is_upload false; $msg null; if (isset($_POST[submit])) {if (file_exists(UPLOAD_PATH)) {$deny_ext array("php","php5","php4","php3","php2","html","htm","phtml"…...
excel:时间戳格式与日期格式的互转
13位时间戳转日期时间(毫秒) 假设A2单元格内容为13位的时间戳,再选中B2单元格,在公式框中输入 TEXT((A2/10008*3600)/8640070*36519,"yyyy/mm/dd hh:mm:ss.000")接下来,选中B2单元格,下拉应用公…...
嵌套式向量中断控制器(NVIC)
1.概述 2. NVIC 的中断处理机制 3. NVIC 中断管理机制 1.概述 中断控制器是ARMv7-M 异常模型的核心组成部分。该中断控制器的运行遵循 ARM 通用中断控制器(GIC)规范,该规范也适用于其他 ARMv7 架构配置和其他处理器架构。 ARMv7-M 的 NVIC(嵌套向量中断控制器)架构支持最…...
2025.05.19【Barplot】柱状图的多样性绘制
Custom color A few examples showing how to custom barplot color. Horizontal barchart It makes sense to make your barchart horizontal: group labels are now much easier to read 文章目录 Custom colorHorizontal barchart 探索Barplot的奥秘Barplot基础什么是Barp…...
MongoDB的管道聚合
管道聚合可以实现很多数据处理和统计功能,并且随着不断的更新,其功能也越来越丰富。代表着NoSQL数据库的一种发展趋势。 管道聚合通过aggregate语句实现,支持多种匹配、处理、输出方式。 其语法是: db.<collection>.aggr…...
基于 STM32 的自动温度巡检小车控制系统设计与实现
一、引言 在工业监控、仓储管理及环境监测等场景中,自动温度巡检系统具有重要应用价值。本文设计一种基于 STM32 单片机的自动温度巡检小车,通过集成温度采集、路径规划及数据处理功能,实现对目标区域的实时温度监测与异常报警,为智能化环境监控提供低成本解决方案。 二、…...
怎么利用JS根据坐标判断构成单个多边形是否合法
怎么利用JS根据坐标判断构成单个多边形是否合法 引言 在GIS(地理信息系统)、游戏开发、计算机图形学等领域,判断一组坐标点能否构成合法的简单多边形(Simple Polygon)是一个常见需求。合法多边形需要满足几何学上的基本规则,本文将详细介绍如何使用JavaScript实现这一判…...
20. 自动化测试框架开发之Excel配置文件的IO开发
20.自动化测试框架开发之Excel配置文件的IO开发 一、核心架构解析 1.1 类继承体系 class File: # 文件基类# 基础文件验证和路径管理class ExcelReader(File): # Excel读取器# 实现Excel数据解析逻辑1.2 版本依赖说明 # 必须安装1.2.0版本(支持xlsx格式&#…...
高校快递物流管理系统设计与实现(SpringBoot+MySQL)
💗博主介绍💗:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示:文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…...
python-leetcode 67.寻找两个正序数组中的中位数
题目: 给定两个大小分别为m和n的正序(从小到大)数组nums1和nums2。请找出并返回这两个正序数组的中位数。 通过双指针和二分查找的思想,找到两个有序数组的中位数。 1.初始化和基本情况处理 首先获取两个个数组的长度m和n,计算…...
Python 实现图片浏览和选择工具
实现将截图预览,并按照顺序加入一个pdf文件中,实现照片管理尤其对于喜欢看教程截图做笔记的网友们。 C:\pythoncode\new\python-image-pdf-processor.py 界面展示 🧱 一、核心结构概述 主类 ImageViewer(wx.Frame) 是主窗口类,…...
V4L2应用程序开发-01数据采集流程
1 数据采集流程 可以参考这些文件: mjpg-streamer\mjpg-streamer-experimental\plugins\input_control\input_uvc.c video2lcd\video\v4l2.c Video for Linux two(Video4Linux2)简称V4L2,是V4L的改进版。V4L2支持三种方式来采集图像:内存…...
TDengine 2025年产品路线图
TDengine OSS 之 2025 年年度路线图如下表所示。 季度功能2025Q1 虚拟表查询能力:REGEXP、GREATEST、LEAST、CAST 函数支持判断表达式、单行选择函数的其他列值、INTERP 支持插值时间范围存储能力:支持将查询结果写入超级表、超级表支持 KEEP 参数、STM…...
Unreal 从入门到精通之SceneCaptureComponent2D实现UI层3D物体360°预览
文章目录 前言SceneCaptureComponent2D实现步骤新建渲染目标新建材质UI控件激活3DPreview鼠标拖动旋转模型最后前言 我们在(电商展示/角色预览/装备查看)等应用场景中,经常会看到这种3D展示的页面。 即使用相机捕获一个3D的模型的视图,然后把这个视图显示在一个UI画布上,…...
windows服务器部署jenkins工具
sjenkins作为一款构建发布工具,极大的简化了大家项目部署发布流程。jenkins通常是部署在linux服务上,今天给大家分享的是windows服务器上如何搭建jenkins发布工具。 1.首先第一步还是看windows安装docker 这篇文章哈,当然也可以不采用docker…...
Java—— File详解
说明 File对象就表示一个路径,可以是文件的路径、也可以是文件夹的路径 这个路径可以是存在的,也允许是不存在的 获取File对象 方法名称说明public File(String pathname)根据文件路径创建文件对象public File(String parent,String child)根据父路径名…...
「NameCraft · 幻想命名器」开发记:我和 CodeBuddy 的一次奇幻共创之旅
起心动念:我想做一个不一样的名字生成器 最近我有一个脑洞:能不能做一个风格化强烈的名字生成器?不要那种平平无奇的「小明、小红」类型,而是支持「幻想风」「武侠感」「赛博感」的那种,最好还有高颜值的 UIÿ…...
03 接口自动化-精通Postman之接口鉴权,接口Mock,接口加解密以及接口签名Sign
文章目录 一、接口鉴权(鉴定是否有访问接口的权限)1、cookie,session,token鉴权。2、Postman的鉴权方式 二、接口Mock Sersver三、接口的加解密四、接口签名sign(接口鉴权的一种)1.什么是接口签名ÿ…...
深入浅出IIC协议 -- 第二篇:FPGA数字接口设计方法论
第二篇:FPGA数字接口设计方法论 副标题 :从状态机到跨时钟域——打造工业级I2C控制器的设计密码 1. 状态机设计黄金法则 1.1 状态机类型抉择 Mealy与Moore对比实验 : 类型输出依赖时序特性I2C适用场景Moore仅当前状态延迟稳定协议主状态控…...
20250519使用TF卡将NanoPi NEO core开发板刷机为Ubuntu core22.04.3系统完成之后执行poweroff自动关机
1、h3-sd-friendlycore-xenial-4.14-armhf-20210618.img.gz 在WIN10下使用7-ZIP解压缩/ubuntu20.04下使用tar 2、Win32DiskImager.exe 写如32GB的TF卡。【以管理员身份运行】 3、TF卡如果已经做过会有3个磁盘分区,可以使用SD Card Formatter/SDCardFormatterv5_WinE…...
什么是USB的EHCI和OHCI
USB的EHCI和OHCI是两种不同的主机控制器接口标准,用于规范计算机如何通过硬件和软件与USB设备通信。它们分别对应不同的USB协议版本和设备类型,以下是详细解析: 1. OHCI(Open Host Controller Interface) • 定位&…...
【2025最新版】Origin安装教程 - 超详细Origin2024中文版图文教程(保姆级附带Origin安装包)
文章目录 前言Origin安装前的必要准备Origin安装包获取Origin安装图文步骤第一步:解压安装包第二步:启动安装程序第三步:安装向导操作第四步:填写注册信息第五步:选择安装位置第六步:功能选择与安装第七步&…...
【网络编程】十二、两万字详解 IP协议
文章目录 Ⅰ. 基本概念1、网络层解决的问题2、保证数据可靠的从一台主机送到另一台主机的前提3、路径选择4、主机和路由器的区别 Ⅱ. IP协议格式IP如何将报头与有效载荷进行分离?IP如何决定将有效载荷交付给上层的哪一个协议?理解socket编程 Ⅲ. 分片与组…...
【机器学习】线性回归和损失函数
线性回归 1.什么是线性回归? 线性回归指的就是将一些输入项乘以相应的权重系数,然后相加得到输出结果。线性回归是机器学习中一种有监督学习的算法,回归问题主要研究的是因变量与一个或多个自变量之间的关系。 在学习线性回归知识之前,我们…...
ip与mac-数据包传输过程学习
你管这破玩意叫网络? 内容来源于飞天闪客,以前没有学习过网络的相关基础知识,只会去瞎设置,现在终于是弄明白了。 多台电脑之间想要通信,可以直接通过一条网线进行连接。但是随着网线的增加,这个就会比较…...
【Qwen开源】WorldPM: 扩展人类偏好建模
受语言建模中的缩放定律启发,该定律展示了测试损失如何随着模型和数据集的规模呈幂律关系扩展,我们发现类似的定律也存在于偏好建模中。我们提出了世界偏好建模(WorldPM)来强调这种扩展潜力,其中世界偏好体现了人类偏好…...
如何设计一个二级缓存(Redis+Caffeine)架构?Redis 6.0多线程模型如何工作?
一、二级缓存(RedisCaffeine)架构设计 1. 设计目标 通过「本地缓存(Caffeine) 分布式缓存(Redis)」的分层结构,实现: 低延迟:热点数据本地缓存(内存级访问…...
MYSQL8.0常用窗口函数
MYSQL8.0常用窗口函数 一、窗口函数的基本概念 窗口函数,顾名思义,就是在查询结果集中定义一个“窗口”,在这个窗口内进行数据的计算和分析。与普通聚合函数不同,普通聚合函数会将结果集分组并返回每组的单一汇总值,…...
【Pandas】pandas DataFrame pct_change
Pandas2.2 DataFrame Computations descriptive stats 方法描述DataFrame.abs()用于返回 DataFrame 中每个元素的绝对值DataFrame.all([axis, bool_only, skipna])用于判断 DataFrame 中是否所有元素在指定轴上都为 TrueDataFrame.any(*[, axis, bool_only, skipna])用于判断…...
Model 复现系列(一)OpenVLA
这个系列用来记录一些开源模型在本地部署或测试时遇到的一些坑以及解决方案。 系列第一篇文章给了 OpenVLA,该模型是具身智能与VLA领域的必读模型之一,虽然现在有很多模型号称超越了它,但作为行业的基石仍然有非常高的地位。 项目链接&…...
Web3:Ubuntu系统 使用Docker-compose方式部署blockscout浏览器配置版本-v5.2.3-beta+charts图表
最近同事告诉我说要重新部署一套blockscout浏览器,我一想,之前有部署流程文档-《Web3:使用Docker-compose方式部署blockscout浏览器+charts图表》,这不手拿把掐吗。 但还是出现了一些问题,之前服务器系统是centos,现在是Ubuntu系统,而且之前docker镜像也没那么难获取,于…...
ECharts-柱状图
柱状图样式设置 Ⅰ、柱条样式 柱条的样式可以通过 series.itemStyle 设置,包括: 柱条的颜色(color);柱条的描边颜色(borderColor)、宽度(borderWidth)、样式ÿ…...
理解UDP协议
在计算机网络中,UDP(用户数据报协议)常被称为“轻量级”传输协议。它不像TCP那样追求可靠传输,而是以简洁高效的设计满足特定场景的需求。本文将带你深入UDP的核心特性、技术细节及其实际应用。 UDP的协议设计 UDP协议的核心…...
Web 技术与 Nginx 网站环境部署
这里写目录标题 一. Web基础域名和DNS域名的概念域名的结构域名结构类型 Hosts文件Hosts文件的作用修改Hosts文件 DNS域名注册 网页与HTML网页概述HTML概述HTML基本标签HTML语法规则HTML文件结构 网站和主页Web1.0 与 Web2.0 静态网页与动态网页静态网页动态网页动态网页语言 H…...