だから私は自分のlaravelフォルダーでcmdを使用していて、(php artisanmigrate:install)を実行しようとしました。2つのエラーが発生しました。
[PDOException] SQLSTATE [HY000] [2006] MySQLサーバーがなくなりました
[ErrorException] PDO :: __construct():MySQLサーバーがなくなりました
誰かが私が間違ったことを説明できますか?
これはLaravelの問題ではなく、一般的なMySQLの問題です。サーバーが実行されていない可能性があります。MySQLをバックグラウンドで実行していますか?
このリンクを確認してください: MySQL Gone Away
システムで次のチェックを実行します。
この後、migrationsコマンドを再度実行してみてください。これは次のとおりです。
php artisan migrate
説明したように ここ
それが役立つかどうか教えてください:)。
クエリ中にサーバーへのSQL接続が失われました。それは一時的な問題です。これは、max_allowed_packet
のデフォルト設定が非常に低いためです。
max_allowed_packet
のmy.cnf
([mysqld]の下)を8または16Mに上げると、通常は修正されます。
[mysqld]
max_allowed_packet=16M
注:これは、サーバーの実行時に設定できます。完了したら、MySQLサービスをrestart
する必要があります。
使用:set global max_allowed_packet=104857600
。私の値はそれを100MBに設定します。
私にとって問題は、Laravelプロジェクトの.env
ファイルに間違ったポートを割り当てたことであるように思われました。後で、それをmy.cnf
ファイルと照合すると、機能しました。 。
私はUbuntu16.04 + nginx + MariaDB + Laravelプロジェクトを使用しています。
誰かが解決策を探している場合は、持っているすべてのキャッシュをクリーンアップしてみてください。手動でbootstrap/cacheフォルダー内のキャッシュファイルを削除できます。
私の場合、問題はDB_Host
をlocalhost
に変更したことでしたが、default
、つまり127.0.0.1
を維持し、ポートをデフォルトの3306
に維持することで修正されました。 xamppでのlocalhostの構成は次のとおりです。
DB_CONNECTION=mysql
DB_Host=127.0.0.1
DB_PORT=3306
DB_DATABASE=hmb
DB_USERNAME=root
DB_PASSWORD=
localhost:8081/phpmyadmin
を使用してdb
にアクセスしていますが
他の答えに加えて:
127.0.0.1
と.env
の両方でlocalhost
ドメインをconfig/database.php
に変更してみてください。git
を使用している場合は、git status
をチェックして、不要なファイルが変更されていないかどうかを確認してください。私の場合、ファイルconfig/database.php
のmysql接続構成のoptions
配列がどういうわけか空白の配列だったからです。 git checkout config/database.php
ファイルをチェックアウトしましたが、正常に動作し始めました。