当前位置:首页 > 数据库 > 正文内容

如何解决 MySQL max_allowed_packet 错误

root6年前 (2020-10-23)数据库1496


修改global变量并退出session,重新登录,可行。

修改数据库配置,未测试。

方法/步骤

  1. 先看看与这个错误相关的后台异常 : 

     Packet for query is too large (1706 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. 

    一旦数据库出现这个问题,基本执行任何查询语句,后台都会报这个错!(除非查询所得数据量特别少)!

  2. 先登录数据库,查看 max_allowed_packet 这个参数值

    连接数据库服务器,登录 mysql, 执行命令 : 

    show variables like '%max_allowed_packate%' 

    即可查看这个系统参数目前的值 ! 我的系统,目前显示只有 1024 字节,确实太小了!

    如何解决 MySQL max_allowed_packet 错误

  3. 通过 mysql 命令更改这个值到 100M !

    连接数据库服务器,登录 mysql, 执行命令 : 

    set global max_allowed_packet = 100*1024*1024

    退出后,重新登录 mysql ,再次查看这个系统项的值, 注意,必须重新登录mysql,否则这个值还是显示为原始值(缓存)!

    修改后,这个配置项显示为 100 M !

    如何解决 MySQL max_allowed_packet 错误

  4. 修改配置文件--Windows

    我们刚才的修改是针对运行环境,但如果我们的配置文件不变,则重启数据库后,这个值又恢复为原始值了,对于 Windows 下的 MySQL,我们需要修改其配置文件 my.ini , 这个文件在 MySQL 的安装根目录下。

    注意: MySQL 配置文件分为几个段 (Section), 包括 [mysql], [mysqld], [mysqldump] 等, 我们需要在 [mysqld] 段下添加配置项 : 

    max_allowed_packet = 100M

    如何解决 MySQL max_allowed_packet 错误

    如何解决 MySQL max_allowed_packet 错误

  5. 修改配置文件--Linux

    在 Linux 中,MySQL 对应的配置文件是 my.cnf , 我们在Linux终端输入如下命令 : 

    mysql --help | grep my.cnf

    可以查看 MySQL 所使用的 my.cnf 列表(优先级列表,先找到的配置文件生效),MySQL 会逐个目录寻找这个文件,直到找到为止!

    我们逐个目录找到我们系统 MySQL 所使用的 my.cnf 配置文件,找到对应的配置项,修改为 100M 即可。

    如何解决 MySQL max_allowed_packet 错误

    如何解决 MySQL max_allowed_packet 错误


扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://www.zhiqiu.top/?id=21

分享给朋友:

相关文章

mysql 导出csv格式数据

mysql -e "select * from newsdb.t_hk_stock_news where id <100  ...

dataX:超强的数据库数据互导工具

安装下载安装包http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz 然后解压进入解压后文件的./bin自检命令python  datax.py ../j...

postgresql 导入导出sql 文件

pg_dump  -h localhost -U postgres -t tablename databasename >./test.sql导出 -t 表名  psql -d test1 -U...

centos7 安装mysql

centos7 安装mysql

下载rpm包wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 安裝包仓库yum -y install * 或者yum -...

postgresql修改数据存储位置

postgresql修改数据存储位置

最近公司提供了一台新的服务器,同时有一个盘是ssd。同时为了测试postgresql的性能,将数据放置到ssd上系统centos7.9 数据库postgresql-9.6首先停掉数据库systemctl stop pos...

postgresql 查看数据库、表的大小

查看数据库的大小 select pg_database_size('test'); select pg_size_pretty(pg_database_size('test');查看单...