【MySQL】MySQL故障排查与环境优化

案例

MySQL是目前企业最常见的数据库之一

日常维护管理的过程中,会遇到很多故障

mysql默认配置无法满足高性能要求

数据流向

MySQL常见的故障案例

故障一
故障现象:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket 'data/mysql/mysql.sock'(2)

问题分析

数据库未启动或者数据库端口被防火墙拦截;

解决办法

启动数据库或者防火墙开放数据库监听端口;

故障二
故障现象
ERROR 1045 (28000): Access denied for user 'root'@'ocalhost' (using password:NO)
问题分析

密码不正确或者没有访问权限

解决办法

修改my.cnf主配置文件,在[mysql]下添加 skip-grant-tables 
        update 更新 user表 authentication_string 字段
        重新授权
 

故障三
故障现象

在使用远程连接数据库时偶尔会发生远程连接数据库很慢的问题

问题分析

DNS解析慢、客户端连接过多

解决办法

修改my.cnf主配置文件(增加skip-name-resolve参数)

数据库授权禁止使用主机名

故障四
故障现象

Can't open file: 'xxx_forums.MYI'.(errno:145)

问题分析

服务器非正常关机;数据库所在空间已满;或一些其他未知的原因对数据库表造成了损坏

一般是磁盘空间满了;文件属组不对

可能是拷贝数据库时导致文件的属组发生改变

解决办法

修复数据表(myisamchk、phpMyAdmin)

修改文件的属组

故障五
故障现象

ERROR 1129 (HY000): Host 'xxx.xxx.xxx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'

问题分析

超出最大连接错误,数量限制

解决办法

清理缓存(flush-hosts关键字)

修改mysql配置文件(max_connect_error=1000)

200连接数改为1000

故障六
故障现象

Too many connections

问题分析

连接数超出MySQL的最大连接限制

解决办法

修改MySQL配置文件(max_connections = 1000)

临时修改参数

set GLOBAL max_connrctions=1000;

故障七
故障现象

Warning: World-writable config file '/etc/my.cnf' is ignored ERROR! MySQL is running but PiD file could not be found

问题分析

MySQL的配置文件/etc/my.cnf 权限问题

解决办法

chmod 644 /etc/my.cnf

故障八
故障现象

InnoDB:Error: page 14178 log sequence number 29455369832
InnoDB: is in the future! Current system log sequence number 29455369832

问题分析

innodb数据文件损坏

解决办法

修改my.cnf 配置文件(innodb_force_recovery=4)

启动数据库后备份数据文件

利用备份文件恢复数据

最好是建新表,将还原数据导入新表,给甲方确认

MySQL主从环境常见故障

故障一
故障现象

从库的Slave_IO_Runing为NO

The slave I/O thread stops because master and slave have equal MySQL serverids; these ids must be different for replication to work (or the --replicate-same-server-id option must be used on slave but this does not always make sense; please check the manual before using it).

问题分析

主库和从库或从库1和从库2的server-id值一样

解决办法

修改从库的server-id 的值,修改为和主库以及其他从库不一样

重新启动数据库并再次同步

故障二
故障现象

从库的Slave_IO_Running 为NO

问题分析

主键冲突或者主库删除或更新数据,从库内找不到记录,数据被修改导致

解决办法

方法一:

mysql> stop slave;

mysqI> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

mysql> start slave;

方法二:

set global read_only=true;

故障三
故障现象

Error initializing relay log position: l/O error reading the header from the binary log

问题分析

从库的中继日志relay-bin损坏

解决办法

手工修复,重新找到同步的binlog 和 pos点,然后重新同步即可

mysqI> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.xxx',MASTER_LOG_POS=xxx;

MySQL优化

硬件优化

CPU:推荐使用S.M.P.架构的多路对称CPU

内存:4GB以上物理内存

磁盘:RAID-0+1 磁盘阵列或固态硬盘

MySQL配置文件优化

调整配置项

数据库建议内存是8核8G或者16G;商城最小要8核32G,还要做MHA高可用

SQL优化

尽量使用索引进行查询

优化分页

GROUP BY优化

MySQL架构优化

架构选择:主从、主主、一主多从、多主多从

小结:

MySQL逻辑架构

MySQL故障排查

MySQL优化技术

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/509036.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【计算机网络】select/poll

多路转接 - select/poll 一、I/O 多路转接之 select1. select 接口2. select 的使用3. select 的优缺点 二、I/O 多路转接之 poll1. poll 接口2. poll 的使用3. poll 与 select 的对比 一、I/O 多路转接之 select 多路转接属于 IO 复用方式的一种。系统提供 select() 函数来实…

如何在 Mac 上恢复已删除的数据

如果您丢失了 Mac 上的数据,请不要绝望。恢复数据比您想象的要容易,并且有很多方法可以尝试。 在 Mac 上遭受数据丢失是每个人都认为永远不会发生在他们身上的事情之一......直到它发生。不过,请不要担心,因为您可以通过多种方法…

数据结构(六)——图的应用

6.4 图的应用 6.4.1 最小生成树 对于⼀个带权连通⽆向图G (V, E),⽣成树不同,每棵树的权(即树中所有边上的权值之和)也可能不同。设R为G的所有⽣成树的集合,若T为R中边的权值之和最小的生成树,则T称为G的…

解析网约车微服务中台架构:打造智能高效的出行平台

随着互联网技术的不断发展,网约车行业已经成为了城市出行的重要方式之一。为了应对市场竞争和用户需求的不断变化,各大网约车平台纷纷采用了微服务中台架构,以构建智能高效的出行平台。本文将深入探讨网约车微服务中台架构的核心概念、关键特…

反序列化漏洞

常见的反序列化流量特征: 像这种st2 045、068、shiro反序列化、fastjson这些java反序列化一类的流量特征 shiro就看cookie中Rememberme字段,什么都要从这里传 fastjson:可以在提交的包中找找json格式的数据,重点看一下有无rmi或…

【操作系统】想要更好的学习计算机,操作系统的知识必不可少!!!

操作系统的概念 导言一、日常生活中的操作系统二、计算机系统层次结构三、操作系统的定义3.1 控制和管理计算机资源3.2 组织、调度计算机的工作与资源的分配3.3 给用户和其他软件提供方便接口与环境3.4 总结 四、操作系统的目标和功能4.1 作为管理者4.1.1 处理机管理4.1.2 存储…

记录Xshell使用ed25519公钥免密链接SSH

试了半天,Xshell好像没办法导入linux生成的ssh公钥,因此需要以下步骤实现免密登录 结论,在linux公钥文件中,将客户端生成的ed25519公钥加上去即可(一个公钥单独一行) 1.使用Linux生成秘钥文件(不需要输入私钥密码passphrase)或者直接创建一…

【css】文本过长溢出一行不换行普通css以及antd实现

.text-box { white-space: nowrap; /* 防止文字换行 */ overflow: hidden; /* 隐藏超出div的内容 */ text-overflow: ellipsis; /* 当内容超出时,显示省略号 */ max-width: calc(100% - 80px); /* 假设按钮宽度为80px,则设置div的最大宽度为容器宽度…

【企业管理精粹】华为腾讯全套人力资源管理精品资料合集

以下是华为&腾讯全套人力资源管理资料目录,如需下载,请前往星球下载,海量免费资料等你领取: 华为全套企业管理资料合集,共23专题。 1.绩效考核 华为内训绝密资料:绩效管理与绩效考核.ppt 华为绩效管理与绩效考核制…

软考高级架构师;线程的同步和互斥、临界区、临界资源、信号量、PV 操作概念和例题

作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

信息系统项目管理师——第15章项目风险管理

本章节内容属于10大管理知识领域,选择、案例、论文都会考。 选择题,稳定考3分左右,新教材基本考课本原话,这个分不能丢。 案例题,本期考的概率中等。 论文题,202305刚考过,这期不会考。 1管理基…

基于SSM的“电费管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SSM的“电费管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SSM,VUE 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 系统登录页面 用户列表信息页面 添加用户信…

mkcert生成ssl证书+nginx部署局域网内的https服务访问问题

文章目录 mkcert生成ssl证书nginx部署局域网内的https服务访问问题1、下载mkcert查看自己的电脑是arm还是amd架构 2、安装mkcert3、测试mkcert是否安装成功4、查看CA证书存放位置5、打开windows的证书控制台6、生成自签证书,可供局域网内使用其他主机访问以下是nginx部署https服…

财富池指标公式--通达信免费指标公式源码合集--第二期

财富池免费通达信指标公式源码第二期来啦,今天给大家分享3个不同功能用法的指标,如果大家想要小编发布什么类型的指标,请多多在评论区留言呀! 一、通达信犀牛王指标公式 当在0轴线上出现蓝色加玫红色柱的信号时,是上涨…

LeetCode:331. 验证二叉树的前序序列化(模拟 Java)

目录 331. 验证二叉树的前序序列化 题目描述: 实现代码与解析: 模拟 原理思路: 331. 验证二叉树的前序序列化 题目描述: 序列化二叉树的一种方法是使用 前序遍历 。当我们遇到一个非空节点时,我们可以记录下这个节…

JAV八股--redis

如何保证Redis和数据库数据一致性 关于异步通知中消息队列和Canal的内容。 redisson实现的分布式锁的主从一致性 明天继续深入看这个系列问题 介绍IO复用模型

5个网络基础概念

说到网络,有五大基础概念是不得不提的,IP地址,子网掩码、网关、DHCP服务和PPPoE拨号,这些都是日常做电脑或路由器网络配置经常用到的,相信很多人都听过这些概念念,也知道都是一串串数字,但具体是…

远控桌面多任务并发文件保密传输

远程桌面文件传输是一个重要的功能,大多数远控都是用的桌面程序模式,利用系统自带复制粘贴拖拽文件拷贝功能,做一个ole调用对接,可以将很多控制权交给操作系统。 但我做的是浏览器版,浏览器是沙盒原理,为了…

指针的深入理解(五)

指针的深入理解(五) 文章目录 指针的深入理解(五)前言一.函数指针数组1.1函数指针的理解1.2函数指针的类型 二.转移表2.1转移表的概念2.2计算器2.3函数指针数组的应用 三.回调函数3.1回调函数的概念3.2回调函数的应用 四.指针知识…

力扣热题100_链表_142_环形链表 II

文章目录 题目链接解题思路解题代码 题目链接 142. 环形链表 II 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中…