MYSQL Packets out of order. Expected 1 received 56. Packet size=3420216錯誤
阿新 • • 發佈:2021-06-22
報錯資訊:
PHP Warning: Packets out of order. Expected 1 received 56. Packet size=3420216 in /data/bogiang/test/EC/swoole_process.php on line 62 Warning: Packets out of order. Expected 1 received 56. Packet size=3420216 in /data/bogiang/test/EC/swoole_process.php on line 62 PHP Warning: PDO::query(): MySQL server has gone away in /data/bogiang/test/EC/swoole_process.php on line 62 Warning: PDO::query(): MySQL server has gone away in /data/bogiang/test/EC/swoole_process.php on line 62 PHP Warning: PDO::query(): Error reading result set's header in /data/bogiang/test/EC/swoole_process.php on line 62 Warning: PDO::query(): Error reading result set's header in /data/bogiang/test/EC/swoole_process.php on line 62 PHP Fatal error: Uncaught Error: Call to a member function fetchAll() on bool in /data/bogiang/test/EC/swoole_process.php:63 Stack trace: #0 [internal function]: {closure}(Object(Swoole\Process)) #1 /data/bogiang/test/EC/swoole_process.php(67): Swoole\Process->start() #2 {main} thrown in /data/bogiang/test/EC/swoole_process.php on line 63 Fatal error: Uncaught Error: Call to a member function fetchAll() on bool in /data/bogiang/test/EC/swoole_process.php:63 Stack trace: #0 [internal function]: {closure}(Object(Swoole\Process)) #1 /data/bogiang/test/EC/swoole_process.php(67): Swoole\Process->start() #2 {main} thrown in /data/bogiang/test/EC/swoole_process.php on line 63
造成原因:
多程序使用同一個mysql連結導致出來的。
為什麼會出現這問題:
1.多程序中MYSQL不可以使用同一個連結
2.如果使用需要一個連線池
網上查看了幾篇報錯的原因:
Thinkphp5框架使用swoole,資料連線報Packets out of order.
PHP MYSQL Packets out of order. Expected 1 received 0. Packet size=
為什麼DB連線管理一般不採用IO多路複用?
解決問題:
1、在每個程序裡進行連結mysql
2、使用連線池,避免這個問題
php搭建mysql連線池