mysql max_allowed_packet自动重置为1024 解决办法

5款高性价比LDO芯片实测对比:从TPS7A4501到LM2940,哪款更适合你的项目? 本文通过实测对比了TPS7A4501、TPS72301、LM2937、LM2940等五款高性价比LDO芯片的核心性能。文章详细分析了跌落电压、输出噪声、静态电流及热性能等关键指标,并结合电池供电物联网节点、高精度数据采集等典型应用场景,提供了清晰的选型指南,帮助工程师根据项目需求选择最合适的LDO芯片。 阅读详情

文章转载于:https://www.cnblogs.com/qdpurple/p/5742059.html

  • 背景:

测试环境1台centOS机器,最近一段频繁报“

Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet' variable

”, 记录解决问题的思路,最终找到问题根源:黑客入侵,总结经验。

 

  • 思路:

查看max_allowed_packet :

show global VARIABLES like '%max_allowed_packet%'; (注意:mysql 系统参数分为session和global 之分, session只当前连接生效,global 全局连接生效)

1).通过mysql客户端,set global max_allowed_packet = 2*1024*1024*10;  (修改后,重启数据库会恢复为默认)

2). 修改my.cnf  在[mysqld]段或者mysql的server配置段进行修改。(终极修改, 修改后重启数据库,永久生效)

  如下: max_allowed_packet = 20M
通过方法2修改完成后,通过客户端生效。 但发现,过一段时间(有时几个小时,有时1~2天),自动变为1024。
思考:google 发现有说被黑客攻击,本来不相信,因为是内网环境。无奈出现情况,越来越频繁,刚更改后,过一会就变为1024。以下帖子给了启发:
mysql 有general_log, 会记录所有执行的sql命令,因为耗费性能,默认是关闭。
复制代码
mysql> show variables like '%log%';
+-----------------------------------------+---------------------------------+
| Variable_name                           | Value                           |
+-----------------------------------------+---------------------------------+
| back_log                                | 50                              |
| binlog_cache_size                       | 32768                           |
| binlog_direct_non_transactional_updates | OFF                             |
| binlog_format                           | STATEMENT                       |
| expire_logs_days                        | 0                               |
| general_log                             | OFF                             |
| general_log_file                        | /var/run/mysqld/mysqld.log      |
复制代码

打开general_log:

mysql> set global general_log = ON;

查看general_log:

tail -f /var/run/mysqld/mysqld.log |grep max_allowed_packet (查看log,但打印大量实时sql操作)

tail -f /var/run/mysqld/mysqld.log |grep max_allowed_packet >1.txt (过滤max_allowed_packet,并输出到文件1.txt)

果然发现,有以下修改:

 

160804  8:59:41      172 Query    SET GLOBAL max_allowed_packet=1024
          172 Query    SET GLOBAL max_allowed_packet=1024
          173 Query    SET GLOBAL max_allowed_packet=1024
160804  8:59:49      173 Query    SET GLOBAL max_allowed_packet=1024

172 Query SET GLOBAL max_allowed_packet=1024 

了解到general_log 日志中,172 为用户连接Id(mysql 会对每一个连接分配唯一id),在全量general log中过滤id为172的操作如下:

 (很遗憾,由于机器被攻击,总监要求对机器进行系统还原,在写日志时,log被删除了),大概如下:

 connect root@someipaddress on Query select 0x4D5A900..........(verylong) Query select sys_exe('cmd /c c:/windows/nbvqc4.vbs') ......... set global max_allowed_packet 1024 ........

 从登陆ip 查询到时美国的一个IP, 操作主要有:从某一网站,下载脚本,并执行;打开mysql相关安全参数,设置相关变量。

至此,非常确定mysql 数据库被黑客攻击了。

  • 疑问:

1. mysql部署在内网,外网如何访问?

  原来,之前便其它合作伙伴提供外网测试环境,让网管把外网IP,影射到了此机器。导致通过公网IP直接访问到了此台机器。

验证:

  1). 通过外网IP, 使用mysql客户端,可以直接连接到mysql服务。

   2). 通过外网IP, 使用xshell 登陆成功。

2.  黑客怎么知道了用户名/密码?

由于是测试机器,mysql使用了简单了密码(root/123456) ,  被猜到,破解太容易了。

3. 防火墙呢?

  由于开启防火墙,在系统测试时,出现各种麻烦。就关闭了。service iptables status;

[root@bo bryant]# service iptables status;
iptables: Firewall is not running.
[root@bo bryant]# 

4. 黑客是怎么发现漏洞的,为什么入侵目的?

猜测大概流程: 通过扫描软件扫描公网ip, 测试到机器端口未关闭,如22,3306(应对1: 开启防火墙,只开放服务端口,禁用其它端口外网访问),尝试暴力密码登陆(应对策略2: 复杂密码策略,可建立白名单,对于多次连接失败,进行日志记录和预警)。通过日志发现了,黑客主要操作为:在mysql中调用了系统命令(下载远程文件,增加执行权限,并执行),打开相关安全参数。

查看机器登陆历史及登陆失败历史,发现近段时间,有大量外网登陆失败情况,如下图中oracle, svn ,apache 用户,黑客通过常用应用的用户名/密码在不停的尝试登陆系统:

复制代码
producti ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
producti ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
swsoft   ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
swsoft   ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
iraf     ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
iraf     ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
svn      ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
svn      ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
oracle   ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
oracle   ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:49 - 10:49  (00:00)    
lab      ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
lab      ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
apache   ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
apache   ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
root     ssh:notty    217.76.78.35     Mon Aug  1 10:48 - 10:48  (00:00)    
复制代码

 

5. 黑客为什么要修改 max_allowed_packet 1024 ?

修改了max_allowed_packet =1024,将导致所有数据操作,如果返回结果>1024,将报错。 修改此参数,很容易让用户发现数据问题,推测是骇客是故意暴露自己,也许只为了炫耀一下。

  • 总结:

1. 再次证明在遇到复杂技术问题google 比百度要靠谱多

2. 日志分析是解决问题的必须途径

3. 增加信息安全意识,原来黑客离我们并不远,如果不是故意暴露自己,我们也不会发现此机器被黑,黑客控制此机器后,可以轻易使用此机器,进行相关非法活动。

 

具体:

1. 外网机器,一定要开启防火墙,只开放提供服务端口,禁用其它端口。 制定相关安全策略,如记录登陆用户ip,定期查看登陆用户历史及登陆失败记录,对于反复登陆能拒绝登陆。

2. 系统用户名,应该根据需要确定是否使用root用户,具体业务最好使用普通用户权限。因为root用户,拥有系统系统的全部权限。

3.密码:用户密码一定不要使用简单密码,最好使用密码生成器生成负责密码(大小写,特殊字符,长度)

4. 数据安全:

mysql应该给不同业务创建不同用户,并赋予有限功能权限,禁止root 用户做业务操作。


基于AXI PCIE IP的FPGA PCIE卡示意图 如果在上图中的AXI互联IP上再连接一个带AXI Slave接口的BRAM控制器,这个BRAM控制器连接一个BRAM,Host PC在系统主存中分配了一些不连续的内存,Host PC可以将这些内存段的起始地址(当然要先转为PCIE总线地址)写到AXI总线上的BRAM中,这样AXI CDMA读取BRAM,将读取到的PCIE总线基地址写到AXIPCIE寄存器块中的AXIBAR2PCIEBAR_n寄存器中,这样就实现了SG DMA。通过动态改变AXIBAR2PCIEBAR_n寄存器的值,可以实现多通道DMA。 阅读详情

相关推荐

从零开始学习信号完整性(SIPI)--2

上一节我们已经谈过,信号完整性研究的是如何使驱动器输出的信号传输到接收器件并被正确的接收。 信号完整性的三要素包含了:信号、驱动接收芯片、传输通道。 这其中信号是主体,我们要做的主要工作就是设计好信号的传输路径为信号的正确传输扫清障碍。要做信号完整性分析与设计首先要了解信号的特性,以及信号质量的判别标准。 对一个信号进行描述通常需要如下几个指标: 信号特性的描述 摆幅:信号从低电平到高电平之间的电压差,对于单端信号通常由信号的供电电压决......

qq_29476769的博客 2万+

mysql max_allowed_packet自动重置为1024 终结解决

背景: 测试环境1台centOS机器,最近一段频繁报“ Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet' v

maguanghui_2012的专栏 1148

机器学习篇-KNN算法实现鸢尾花模型和手写数字识别模型

一个样本最相似的k个样本中的大多数属于某一个类别, 则该样本也属于这个类别类似于: 近朱者赤近墨者黑回归机器建模流程:数据获取数据基本处理(空值和非法值)特征工程(特征提取, 特征预处理(归一化, 标准化), 特征降维, 特征选择, 特征组合)模型训练模型预测模型评估# 1. 定义函数 dm01_load_iris(), 用于加载 鸢尾花数据集, 并简单查看下数据集的各部分.# 1. 加载数据集.​# 2. 打印iris_data, 发现其实是1个: 字典.​。

m0_60916732的博客 2403

Mysql max_allowed_packet自动重置为1024(黑客入侵?)

背景: 最近在腾讯云买了一台测试机,安装了mysql5.7.20作为测试数据库,谁知道一直发生这个错误: Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (79968 > 1024). You can change this value on the server by set...

Abysscarry的博客 6082

逐飞vs龙邱:英飞凌miniwiggler仿真器硬件接口差异全解析(附拆机对比图)

本文通过拆解对比逐飞与龙邱两家厂商的英飞凌miniwiggler仿真器,详细解析了其硬件接口的核心差异。重点分析了Type-C接口的取舍、DAP调试协议(SWD)的支持、电源设计(跳线帽vs拨码开关)以及工艺用料,为嵌入式开发者与智能车竞赛选手提供了清晰的选型参考和实际应用建议。

weixin_29189003的博客 112

千兆以太网PHY设计:PCB原理图完整示例

深入解析千兆以太网PHY电路设计要点,提供完整的PCB原理图设计实例,帮助工程师掌握高速信号布局与电源去耦等关键技术,提升设计稳定性与信号完整性。

weixin_30633869的博客 628

Mysql max_allowed_packet自动重置为1024的情况

作者: 惊帆 时间: 2016-09-12 16:48前几天在群里有个朋友问到max_allowed_packet被自动重置的问题,于是打算写个文章来描述下,因为遇到这个问题的人不少,但是提到的解决方案几乎没有。max_allowed_packet指的是服务器接收的包的大小,该值设置过小,可能导致数据写入失败,通常可以通过修改my.cnf或者在命令行通过set max_allowed_packet...

全栈知识 4001

自顶向下与自底向上编程思想的对比

一、核心定义与本质差异自顶向下编程思想如同绘制一幅完整的地图,从整体轮廓逐步细化到局部细节。其本质是从系统的整体目标出发,通过逐层分解将复杂问题简化为可实现的子问题,强调先定义 “做什么”,再考虑 “如何做”。自底向上编程思想则类似于搭建积木,从基础组件开始逐步构建复杂系统。其本质是从现有资源和基础功能出发,通过组合和扩展简单组件来实现复杂功能,强调先解决 “如何做” 的细节,再整合为 “做什么” 的整体。二、设计起点与逻辑流程对比设计起点:以系统的整体目标和业务需求为起点。例如设计一个电商平台,首先明确

二进制君 830

max_allowed_packet设置后总变回2048

最近的MySQL的max_allowed_packet设置后总变回2048导致程序报错,仔细检查了演示环境的日志后发现,没有添加防火墙。有不明的ip老是修改数据库设置。于是添加了防火墙,关闭了3306的对公端口。问题解决。 ...

qq_40006446的博客 590

从 Non-Unicode 到 Unicode:ABAP 程序切换的坑、原理与工程化落地指南

摘要 老SAP系统中ABAP程序员常假设1字符=1字节,导致大量代码依赖单字节处理逻辑。Unicode系统的引入彻底改变了字符长度、偏移量等底层认知,强制要求程序遵循Unicode规则。关键问题包括:字符/字节语义混淆、结构体访问风险、以及ABAP语言版本的门槛限制。迁移时需要重点关注字符串处理、二进制协议解析等场景,利用UCCHECK、RSUNISCAN_FINAL等工具扫描风险,并通过持续集成机制确保代码质量。建议在Non-Unicode阶段就启用unicode_check参数模拟严格模式,分批次修复问

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3452

手势识别器:实现手部动作识别器

在本篇文章中,我们将使用Python来实现一个简单的手部动作识别器。然后,我们通过循环从摄像头获取每一帧图像,并对每一帧图像进行处理。我们提取手部关键点并计算手势的特征向量,然后将其添加到特征列表和标签列表中。接下来,我们再次从摄像头获取每一帧图像,并进行手势识别。我们提取手部关键点并计算手势的特征向量,然后使用训练好的分类器来预测手势,并在图像上显示出来。在这个实现中,我们将使用MediaPipe库来检测和跟踪手部关键点,然后使用K最近邻(K-Nearest Neighbors)算法对手势进行分类。

BitSlinger的博客 238

MySQL max_allowed_packet 间歇性自动重置为 1024

记录一下一个 MySQL 服务经常出现 max_allowed_packet 重置为 1024 的情况。

TechCraftsman数据库专栏 713

西门子G120变频器在立体仓库堆垛机应用参数设置

本文详细介绍了G120 CU240E及CU250S变频器的参数设置流程。主要内容包括:1)快速调试步骤,从新建项目、扫描节点到设置电机类型、负载类型等参数;2)抱闸参数设置方法;3)参数下载异常时的处理方案。重点说明了通过STARTER软件进行向导式调试的完整过程,包括电机铭牌参数输入、识别方式选择等关键环节,并提示了通讯连接注意事项。当下载失败时,提供了通过导入导出项目文件解决问题的具体方法。

xdpcxq的专栏 863

mysql max_allowed_packet自动重置为1024 ,数据插入失败问题解决

背景: 测试环境1台centOS机器,最近一段频繁报“ Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet’ v

Starry_Xiao 914

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

mysql 'max_allowed_packet' 自动重置为1M问题

现象描述         在做java web服务器端开发的时候遇到多条件查询的情况,因为条件较多导致从应用服务器端一次向数据库服务器端传太大的数据量,数据库服务器端和应用服务器端连接出现问题,应用服务器端反馈一个‘max_allowed_packet’超出最大长度1024KB问题。经过多方资料查询确定只要将mysql的配置文件my.cnf里面mysqld节点下面的max_allowed_pac

yangbo2921946188的博客 8587

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

关于max_allowed_packet的修改,以及修改后总是自动重置1024

项目中查询的时候会好好的,但是有时候会突然间报错:packet for query is too large(2248>1024),you can change this value on the server by setting the max_allowed_packet variable. 首先你可以先查询一下max_allowed_packet的值是多少: SHOW VARI

QismyQ的专栏 1万+

Mysql max_allowed_packet自动重置为1024 终结解决

背景:测试环境1台centOS机器,最近一段频繁报“Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet' va...

全栈知识 2287

max_allowed_packet 反复被重置 原因竟是这个

mysql max_allowed_packet 反复被重置,原来是服务器被黑客攻击了。 在开发和测试的过长中,mysql 频繁的报:Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1354 > 1024). You can change this value on the server by setting the max_allowed_packet’ variable。 设置 ma.

qq_48091113的博客 1669

mysql 重置max_allowed_packet解决办法

mysql> show variables like '%max_a%'; +--------------------------+------------+ | Variable_name            | Value      | +--------------------------+------------+ | max_allowed_packet       | 107

落叶翩翩的优快云博客 3849

mysql/mariadb 主从同步出错 exceeded max_allowed_packet; Increase max_allowed_packet on master;

一般三个原因 1. max_allowed_packet 过小 2. MASTER_LOG_FILE 同步文件选择错误 3.slave MASTER_LOG_POS 偏移不正确

峡谷电光马仔的博客 1767

MySQL Got a packet bigger than‘max_allowed_packet’,max_allowed_packet 自动重置为1024

MySQL插入或修改数据时报错, Got a packet bigger than‘max_allowed_packet’,数据包大小超过max_allowed_packet设置的值的解决方法。     查看max_allowed_packet的值: root@VM-202-164-ubuntu:/home/ubuntu#mysql -u root -p Enter passwor...

小木头的专栏 512

windows下修改mysql的max_allowed_packet的值

问题现象: 环境:免安装版mysql5.1.73 问题原因:mysql中max_allowed_packet参数的事限制 解决方法: 1、数据库中查询参数设置的大小 SHOW VARIABLES LIKE '%max_allowed_packet%'; 计算了一下4194304÷1025÷1024=4M 2、修改my.ini,在[mysqld]下新增或修改max_allowe...

陌缘的专栏 4198

MySql max_allowed_packet 修改后经常变化的原因

在阿里云上部署了一个MySql服务器,端口3306,密码较简单,对外开放。但是运行一段时间后,每当程序向MySql发起查询服务的时候,MySql就会报错,错误如下:Packet for query is too large (8742 > 1024),这个错误是由于MySql自身的安全性限制,只允许接收1M的SQL代码,超过这个限制,MySql就会出现错误。由于其默认是1M,因此我们只要修改一个参

风清扬的专栏 1万+

Mysql中max_allowed_packet参数自动改变

When you change the message buffer size by changing the value of the max_allowed_packet variable, you should also change the buffer size on the client side if your client program permits it. 当你改变的消息缓

北北北风 974

最近适用unity连接数据库遇到一个问题“MySqlException: Packets larger than max_allowed_packet are not allowed”

这是MySql.Data.DLL在查询长度大于最大长度限制的条件下引发的异常消息(错误)之一; 您可以通过3种方式解决此问题: 第一种方式:执行SQL查询/语句来修改限制 将长度限制设置为32MB: SET GLOBAL max_allowed_packet=3210241024; 将长度限制设置为1GB(MySQL服务器中允许的最大值): SET GLOBAL max_allowed_packe...

Smliling的博客 970
上一篇: Sewise Player播放器的使用
下一篇: mysql本地版本升级-window
chen_lay
博客等级 码龄12年 44粉丝 27原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值