欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql性能調(diào)優(yōu)之max_allowed_packet使用及說明

 更新時(shí)間:2022年11月23日 16:47:02   作者:梔郁  
這篇文章主要介紹了Mysql性能調(diào)優(yōu)之max_allowed_packet使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Mysql max_allowed_packet使用

max_allowed_packet是什么?

指mysql服務(wù)器端和客戶端在一次傳送數(shù)據(jù)包的過程當(dāng)中最大允許的數(shù)據(jù)包大小。

什么情況下遇到?

有時(shí)候大的插入和更新會(huì)被max_allowed_packet 參數(shù)限制掉,導(dǎo)致失敗。

  • 場(chǎng)景一:將本地?cái)?shù)據(jù)庫遷移到遠(yuǎn)程數(shù)據(jù)庫時(shí)運(yùn)行sql錯(cuò)誤。錯(cuò)誤信息是max_allowed_packet
  • 場(chǎng)景二:插入數(shù)據(jù)時(shí)某個(gè)字段數(shù)據(jù)過于龐大(使用Elmentui編輯器自帶的圖片加密,圖片過多,地址超級(jí)長,最好用的時(shí)候改成自定義的),會(huì)報(bào)

Packet for query is too large (20682943>1048576). You can change this value on the server by setting the max_allowed_packet’ variable.

解決辦法?

調(diào)整mysql的配置文件

mysql 56中該參數(shù)修改好像無效,所以需要升級(jí)數(shù)據(jù)庫到mysql57

window下修改配置文件my.ini 在mysqld段下添加

 max_allowed_packet = 64M 

后面的數(shù)字根據(jù)實(shí)際情況調(diào)優(yōu)

linux下修改etc/my.cnf ,同樣在mysqld段下添加

 max_allowed_packet = 64M 

注意改完參數(shù)后需要重啟mysql服務(wù)

查看目前配置

show VARIABLES like '%max_allowed_packet%';

寫入Mysql報(bào)錯(cuò)超出max_allowed_packet

Mysql會(huì)根據(jù)配置文件會(huì)限制server接受的數(shù)據(jù)包的大小。

如果寫入大數(shù)據(jù)時(shí),因?yàn)槟J(rèn)的配置太小,插入和更新操作會(huì)因?yàn)?max_allowed_packet 參數(shù)限制,而導(dǎo)致失敗。

查看當(dāng)前配置

mysql> show variables like 'max_allowed_packet';
+--------------------+---------+
| Variable_name ? ? ?| Value ? |
+--------------------+---------+
| max_allowed_packet | 4194304 |
+--------------------+---------+
1 row in set (0.00 sec)

也可以用select查看

mysql> select @@max_allowed_packet;
+----------------------+
| @@max_allowed_packet |
+----------------------+
| ? ? ? ? ? ? ?4194304 |
+----------------------+
1 row in set (0.00 sec)

mysql>?

max_allowed_packet 如果不設(shè)置,默認(rèn)值在不同的 MySQL 版本表現(xiàn)不同,有的版本默認(rèn)1M,有的版本默認(rèn)4M。

修改方法1(配置文件持久化修改)

vim /etc/my.cnf
[mysqld]
max_allowed_packet = 100M

注意:修改配置文件以后,需要重啟mysql服務(wù)才能生效。

mysql> show variables like '%max_allowed_pack%';
+--------------------+-----------+
| Variable_name ? ? ?| Value ? ? |
+--------------------+-----------+
| max_allowed_packet | 104857600 |
+--------------------+-----------+
1 row in set (0.00 sec)

修改方法2(命令行臨時(shí)修改)

mysql> set global max_allowed_packet = 100 * 1024 * 1024;
mysql> exit
[root@localhost opt]#?
[root@localhost opt]# mysql -uroot
mysql>?
mysql> select @@max_allowed_packet;
+----------------------+
| @@max_allowed_packet |
+----------------------+
| ? ? ? ? ? ?104857600 |
+----------------------+
1 row in set (0.00 sec)

mysql>?

注意:

1.命令行修改時(shí),不能用M、G,只能這算成字節(jié)數(shù)設(shè)置。配置文件修改才允許設(shè)置M、G單位。

2.命令行修改之后,需要退出當(dāng)前回話(關(guān)閉當(dāng)前mysql server鏈接),然后重新登錄才能查看修改后的值。通過命令行修改只能臨時(shí)生效,下次數(shù)據(jù)庫重啟后又復(fù)原了。

3.max_allowed_packet 最大值是1G(1073741824),如果設(shè)置超過1G,查看最終生效結(jié)果也只有1G。

[mysqld]
max_allowed_packet = 1G

mysql> show variables like '%max_allowed_pack%';
+--------------------+------------+
| Variable_name ? ? ?| Value ? ? ?|
+--------------------+------------+
| max_allowed_packet | 1073741824 |
+--------------------+------------+
1 row in set (0.00 sec)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySQL數(shù)據(jù)庫設(shè)計(jì)概念及多表查詢和事物操作

    MySQL數(shù)據(jù)庫設(shè)計(jì)概念及多表查詢和事物操作

    數(shù)據(jù)庫設(shè)計(jì)就是根據(jù)業(yè)務(wù)系統(tǒng)具體需求,結(jié)合我們所選用的DBMS,為這個(gè)業(yè)務(wù)系統(tǒng)構(gòu)造出最優(yōu)的數(shù)據(jù)存儲(chǔ)模型,本文給大家介紹MySQL數(shù)據(jù)庫設(shè)計(jì)概念及多表查詢和事物操作,感興趣的朋友一起看看吧
    2022-05-05
  • mysql常見錯(cuò)誤集錦

    mysql常見錯(cuò)誤集錦

    由于最近一直接觸php+mysql,會(huì)遇到一些問題,所以把這些問題整理下
    2008-06-06
  • MySQL中的長事務(wù)示例詳解

    MySQL中的長事務(wù)示例詳解

    這篇文章主要給大家介紹了關(guān)于MySQL中長事務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • mysql日期date型和int型互換的方法

    mysql日期date型和int型互換的方法

    下面小編就為大家?guī)硪黄猰ysql日期date型和int型互換的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • MySQL數(shù)據(jù)同步Elasticsearch的4種方案

    MySQL數(shù)據(jù)同步Elasticsearch的4種方案

    本文主要介紹了MySQL數(shù)據(jù)同步Elasticsearch的4種方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • MySQL慢查詢問題排查方式

    MySQL慢查詢問題排查方式

    文章介紹了MySQL慢查詢排查的步驟,包括查看當(dāng)前正在運(yùn)行的事務(wù)狀態(tài)、查看線程狀態(tài)、殺死線程、輔助判斷命令、開啟慢查詢?nèi)罩竞烷_啟通用查詢?nèi)罩?/div> 2025-02-02
  • 超詳細(xì)MySQL8.0.22安裝及配置教程

    超詳細(xì)MySQL8.0.22安裝及配置教程

    這篇文章主要介紹了超詳細(xì)MySQL8.0.22安裝及配置教程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • mysql如何讓自增id歸0解決方案

    mysql如何讓自增id歸0解決方案

    數(shù)據(jù)庫的Id自增越來越大,要讓自增重新從1開始:那么就用下面的方法吧
    2012-11-11
  • 通過兩種方式增加從庫——不停止mysql服務(wù)

    通過兩種方式增加從庫——不停止mysql服務(wù)

    現(xiàn)在生產(chǎn)環(huán)境MySQL數(shù)據(jù)庫是一主一從,由于業(yè)務(wù)量訪問不斷增大,故再增加一臺(tái)從庫。前提是不能影響線上業(yè)務(wù)使用,也就是說不能重啟MySQL服務(wù),為了避免出現(xiàn)其他情況,選擇在網(wǎng)站訪問量低峰期時(shí)間段操作
    2015-11-11
  • Mysql語句快速復(fù)習(xí)教程(全)

    Mysql語句快速復(fù)習(xí)教程(全)

    這篇文章主要介紹了Mysql語句快速復(fù)習(xí)教程(全)的相關(guān)資料,需要的朋友可以參考下
    2016-04-04

最新評(píng)論