mysql中max_allowed_packet參數的配置方法(避免大資料寫入或者更新失敗)_Mysql

來源:互聯網
上載者:User

MySQL根據設定檔會限制Server接受的資料包大小。有時候大的插入和更新會受 max_allowed_packet 參數限制,導致寫入或者更新失敗。

查看目前配置:

複製代碼 代碼如下:
show VARIABLES like '%max_allowed_packet%';

顯示的結果為:
複製代碼 代碼如下:
+--------------------+---------+
| Variable_name      | Value   |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+ 

以上說明目前的配置是:1M

修改方法

1、修改設定檔

可以編輯my.cnf來修改(windows下my.ini),在[mysqld]段或者mysql的server配置段進行修改。

複製代碼 代碼如下:
max_allowed_packet = 20M

如果找不到my.cnf可以通過
複製代碼 代碼如下:
mysql --help | grep my.cnf

去尋找my.cnf檔案。
linux下該檔案在/etc/下。

2、在mysql命令列中修改

在mysql 命令列中運行:

複製代碼 代碼如下:
set global max_allowed_packet = 2*1024*1024*10

然後退出命令列,重啟mysql服務,再進入。
複製代碼 代碼如下:
show VARIABLES like '%max_allowed_packet%';

查看下max_allowed_packet是否編輯成功

注意:該值設定過小將導致單個記錄超過限制後寫入資料庫失敗,且後續記錄寫入也將失敗。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.