新しいlaravelプロジェクトを作成し、Homesteadvagrantボックスを実行して使用しています
vagrant init laravel/Homestead
以降
Vagrant Up
vagrant ssh
を使用すると問題は発生せず、vagrantボックスにアクセスできますが、Heidisqlを使用してDBに接続すると、接続エラーが発生します。
'localhost'のmysqlサーバーに接続できません(10061)
これが私の設定です
使用しているパスワード= "secret"
公式ドキュメント によると、3306ではなくポート33060を使用する必要があります。
Laravelインストールは仮想マシン内で実行されているため、最初の移行を実行するときに問題が発生しないように、.envファイルもそれに応じて更新する必要があります。デフォルトのポート3306が必要です。
必要な通常の資格情報/情報:
エラー(2003)「サーバー」上のMySQLサーバーに接続できません(10061)は、ネットワーク接続が拒否されたことを示します。 MySQLサーバーが実行されていること、ネットワーク接続が有効になっていること、指定したネットワークポートがサーバーで構成されているポートであることを確認する必要があります。
仮想IPを使用して、別のマシンのMySQLサーバーにアクセスしようとしています。あなたがよりよく理解できるように、私は私のIPを使用します。
私のホストマシンには2つのIPがあります。
ホストマシンのIPがWindowsマシンで実行されていることを確認できます
ipconfig
そしてUnixマシンで
ifconfig
を使用してVagrantマシンにログインする必要があります
vagrant ssh
次に、実行する必要があります
ifconfig
仮想マシンのIPを確認します。
私のVagrantではVM IPは次のとおりです。
同じLANのホストマシン(192.168.10.1)とVagrant VM(192.168.10.10))に1つのIPがあることがわかります。
Vagrant VM IP(私の例では192.168.10.10)は、MySQLクライアントで使用する必要があるものです。
Homesteadのドキュメントには、接続にはアドレス127.0.0.1ポート33060を使用する必要があると記載されています。私はテストをしました、そしてそれは働きました。
Homesteadデータベースは、MySQLとPostgreSQLの両方用に構成されています。ホストマシンのデータベースクライアントからMySQLまたはPostgreSQLデータベースに接続するには、127.0.0.1およびポート33060(MySQL)または54320(PostgreSQL)に接続する必要があります。両方のデータベースのユーザー名とパスワードはHomestead/secretです。
出典: https://laravel.com/docs/5.8/Homestead#configuring-Homestead
Homestead.yaml
ファイルで定義したIP(私のものは:192.168.10.10)他のすべては同じままにします。これは私のために働いた。同じHeidiSQLプログラムを使用しています。