web-dev-qa-db-ja.com

サーバーがなくなったというMySQLエラーが発生するのはなぜですか?

私は実行しています:Drupal 7.34、PHP 5.4.16、MySQL 15.1 Distrib 5.5.41-MariaDB、for Linux

サーバーの移動後、モジュールページだけでWSODを取得していますが、他のすべては問題なく実行されているようです。

私は追加しました:

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

index.phpおよび以下のエラーを確認してください:

致命的エラー:/public_html/includes/database/database.inc:2171のメッセージ「SQLSTATE [HY000]:一般エラー:2006 MySQLサーバーが削除されました」を含むキャッチされていない例外「PDOException」:スタックトレース:

#0 /public_html/includes/database/database.inc(2171):PDOStatement-> execute(Array)

#1 /public_html/includes/database/database.inc(683):DatabaseStatementBase-> execute(Array、Array)

#2 /public_html/includes/database/database.inc(2350):DatabaseConnection-> query( 'SELECT expire、...'、Array、Array)

#3 /public_html/includes/lock.inc(167):db_query( 'SELECT expire、...'、Array)

#4 /public_html/includes/lock.inc(146):lock_may_be_available( 'theme_registry:...')

#5 /public_html/includes/theme.inc(449):lock_acquire( 'theme_registry:...')

#6 /public_html/includes/bootstrap.inc(455):ThemeRegistry-> set(Array)#7 [内部関数]:

DrupalCacheArray-> __ destruct()#8 {main}が/public_html/includes/database/database.incの2171行でスローされました

致命的なエラー:宣言されていない静的プロパティへのアクセス:1466行目の/public_html/includes/database/database.incのDatabase :: $ activeKey

1
Wolf Isadog

試すことのいくつか:

まず、問題の原因となっている可能性があるcontribモジュールの1つである可能性があるため、オプション1はDrushを使用してすべての非コアモジュールを無効にすることです。

drush pml --no-core --type=module --status=enabled --pipe | xargs drush -y dis

これを実行すると、モジュールページに再度アクセスして、モジュールを1つずつ有効にして原因を特定できるようになる可能性が高くなります。

オプション2は、mysqlのMAX_ALLOWED_PACKETをチェックすることです。これを確認するには、mysqlコンソールでSHOW VARIABLES LIKE 'max_allowed_packet'を実行します。 1MBに設定されている場合は、SET GLOBAL max_allowed_packet=16777216;を実行して16Mに増やすことができます。もう一度ページを読み込んでみて、それが問題かどうかを確認してください。

2
Patrick Ryan

データベース構成に問題があります。

サイト/データベースの複雑さに応じて、MySQL構成ファイルのmax_allowed_packet値を少なくとも8MB以上に増やす必要があります。

2
kenorb