多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > MySql > 輕松解決Mysql“信息包過大”的處理方法

輕松解決Mysql“信息包過大”的處理方法

來源:程序員人生   發布時間:2014-02-12 09:53:49 閱讀次數:3676次
通信信息包是發送至MySQL服務器的單個SQL語句,或發送至客戶端的單一行。

在MySQL 5.1服務器和客戶端之間最大能發送的可能信息包為1GB。

當MySQL客戶端或mysqld服務器收到大于max_allowed_packet字節的信息包時,將發出“信息包過大”錯誤,并關閉連接。對于某些客戶端,如果通信信息包過大,在執行查詢期間,了能回遇到“丟失與MySQL服務器的連接”錯誤。

客戶端和服務器均有自己的max_allowed_packet變量,因此,如你打算處理大的信息包,必須增加客戶端和服務器上的該變量。

如果你正在使用mysql客戶端程序,其max_allowed_packet變量的默認值為16MB。要想設置較大的值,可用下述方式啟動mysql:

mysql> mysql --max_allowed_packet=32M


它將信息包的大小設置為32MB。

服務器的默認max_allowed_packet值為1MB。如果服務器需要處理大的查詢,可增加該值(例如,如果準備處理大的BLOB列)。例如,要想將該設置為16MB,可采用下述方式啟動服務器:

mysql> mysqld --max_allowed_packet=16M


也能使用選項文件來設置max_allowed_packet。要想將服務器的該變量設置為16MB,可在選項文件中增加下行內容:

[mysqld]
max_allowed_packet=16M


增加該變量的值十分安全,這是因為僅當需要時才會分配額外內存。例如,僅當你發出長查詢或mysqld必須返回大的結果行時mysqld才會分配更多內存。該變量之所以取較小默認值是一種預防措施,以捕獲客戶端和服務器之間的錯誤信息包,并確保不會因偶然使用大的信息包而導致內存溢出。

如果你正是用大的BLOB值,而且未為mysqld授予為處理查詢而訪問足夠內存的權限,也會遇到與大信息包有關的奇怪問題。如果懷疑出現了該情況,請嘗試在mysqld_safe腳本開始增加ulimit -d 256000,并重啟mysqld。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美成人h版影院在线播放 欧美成人h版在线观看 | аⅴ资源中文在线天堂 | xxxxx性欧美hd另类 | 狠狠插网站 | 欧美亚洲国产精品久久久久 | 亚洲国产欧美一区二区欧美 | 日韩欧美久久一区二区 | 欧美成人在线视频 | 成人中文字幕在线 | 国产免费高清视频在线观看不卡 | 亚洲精品人成网在线播放影院 | 最近中文字幕mv免费视频 | 韩日精品| 日本黄色大片 | 校园春色亚洲激情 | 国产成人a福利在线观看 | 欧美jizz大又粗 | 日本韩国一区二区三区 | 欧美午夜色视频国产精品 | 一区二区三区欧美日韩国产 | 久久久久久综合一区中文字幕 | 国产亚洲综合激情校园小说 | 精品国产人成在线 | 亚洲欧美自拍一区 | 自拍视频网站 | 国产三级中文字幕 | 黄色avav| 中文字幕亚洲欧美 | 爱就操 | 曰本一区二区三区 | 中文字幕在线观看网址 | 日韩国产欧美 | 久久综合九色综合欧洲 | 国内精品综合九九久久精品 | 天天做天天爱天天爽综合网 | 亚洲在线天堂 | 性xxxxfreexxxxx国产| 美国毛片在线观看 | 欧美一级毛片高清视频 | 欧美 日本 亚洲 | 国产美女无遮挡免费视频网站 |