1. 程式人生 > 其它 >MYSQL Packets out of order. Expected 1 received 56. Packet size=3420216錯誤

MYSQL Packets out of order. Expected 1 received 56. Packet size=3420216錯誤

報錯資訊:

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連線池