致命的なエラーの取得:SQLSTATE [HY000]:一般的なエラー:2006 MySQLサーバーが廃止されました


7

長い間、私のMagentoアプリケーションは問題なく動作していました。しかし、突然、以下のエラーが表示され始めました。

Fatal error: 
Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 2006 MySQL server has gone away' in /home/serverDir/public_html/lib/Zend/Db/Statement/Pdo.php:228 
Stack trace: 
#0 /home/serverDir/public_html/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array) 
#1 /home/serverDir/public_html/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array) 
#2 /home/serverDir/public_html/app/code/core/Zend/Db/Statement.php(291): Varien_Db_Statement_Pdo_Mysql->_execute(Array) 
#3 /home/serverDir/public_html/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) 
#4 /home/serverDir/public_html/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('insert into csv...', Array) 
#5 /home/serverDir/public_html/lib/Varien/Db/Adapter/Pdo/Mysql.php(428): Zend_Db_Adapter_Pdo_Abstract->query('insert into csv...', Array) 
#6 /home/serverDir/public_html/app/code/local/namespace/module/Model/Observer.php(638): Varien_Db_Adapter_Pdo_Mysql->query('inser in /home/serverDir/public_html/lib/Zend/Db/Statement/Pdo.php on line 234

私はインターネットでこれについてすべて検索しましたが、解決策が見つかりませんでした。

突然、この致命的なエラーが表示され始めた理由を教えてください。

回答:


12

取得するときの通常の原因MySQL server has gone awayは、タイムアウトエラーとmax_allowed_pa​​cketの設定が低すぎることです。これらは、ホスティングプロバイダーがシステムのmy.cnfファイルに行う必要がある設定です。

MySQLサーバーはMySQL.comから原因を取り除きました

MySQLサーバーへの接続がタイムアウトしました

役立つかもしれないmy.cnf設定…

max_allowed_packet = 16M
wait_timeout = 1800 
connect_timeout = 120

これらの設定をロードするには、MySQLサーバーを再起動する必要があります

max_allowed_pa​​cketを少しずつ増やしてみてください。24Mから32Mが必要になる場合があります。

共有ホスティングを使用している場合は、共有ホストのリソースが不足していて、データベースの増加が原因でMagentoが時間の経過とともに共有ホスティング機能を超えていることを示しています。


3

あなたのmax_allowed_packetmysqlの制限を30Mか何かに増やす必要があります。

私のLinuxインストールでは、これは/etc/mysql/my.cnfファイルにあります。


ありがとう、phpファイルでmax_allowed_pa​​cketを設定することは可能ですか?
Harish Kumar 2014年

はい、SQL SET GLOBAL max_allowed_pa​​cket = ...を発行してmax_allowed_pa​​cketの値を変更できますが、これはグローバル変数なので、変更を有効にするには再接続する必要があることに注意してください。オープン接続。
Nasir Perwaiz、2014年

働いていなかった兄弟
Harish Kumar 2014年

1

システム>インデックス管理でMagentoのインデックスを更新してみてください。私は同じ問題を抱えており、インデックスの更新が役立ちました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.