web-dev-qa-db-ja.com

Laravel:そのようなファイルやディレクトリはありません(SQL:テーブル `migrations`を作成します)

Laravel 5.4データベースmigrationsという名前のデータベースからlaravelテーブルを削除しました。php artisan migrate:installを実行すると、次のエラーが表示されます。

[Illuminate\Database\QueryException]
SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from 
information_schema.tables where table_schema = laravel 
and table_name = migrations)

データベースを削除して再作成しました。 composer updateも実行しました。運がありません。 phpMyAdminでコマンドを実行し、テーブルを手動で作成できます。

13
Jay Bienvenu

データベースホストとしてlocalhostを使用している場合は、127.0.0.1に変更してからphp artisan config:clearを実行し、php artisan migrate:installを再試行します。

20
Camilo

.envファイル:

DB_CONNECTION=mysql
DB_Host=localhost
DB_PORT=3306

その後、Database.phpフォルダーの場所を追加:

'unix_socket' => env('DB_SOCKET', '/Applications/MAMP/tmp/mysql/mysql.sock'),

最後に、試してください:

php artisan config:clear
php artisan migrate:install
5
kaleazy

たぶん次のコマンドを試してください

ロールバック:

php artisan migrate:rollback

または、次を使用したリセット:

php artisan migrate:reset

または更新を行います:

php artisan migrate:refresh
1
Jeroen

私はMampで作業しているので、Unixソケットが与えられます:

localhost:/Applications/MAMP/tmp/mysql/mysql.sock

laravel=をデータベースに接続すると、上部にエラーが表示されます。私のソリューションは、「localhost:」なしでソケットを取得することです(ローカルインストールです)

ソケットを試してください:/Applications/MAMP/tmp/mysql/mysql.sock

0
user10291311

MacOSでMAMPを使用しています。localhostを127.0.0.1に編集し、8888にポートした後、次を追加することでこの問題を修正しました。

'unix_socket' => env( 'DB_SOCKET'、 '/Applications/MAMP/tmp/mysql/mysql.sock')、

config/database.phpファイルに。

0
felmez

Mysqlサーバーが実行されていないために、これが発生する場合があります。 Laravel 5.7を使用してmysqlサーバーを再起動すると解決しました。ubuntuの場合、mysqlサーバーのステータスを確認しますservice mysql status。コマンドservice mysql restartを使用してmysqlサーバーを再起動できます

0
William M

フォルダーを削除してコードベースを再作成し、環境が正しいデータベースサーバーを指すようにしました。今回はうまくいきました。元のエラーを引き起こすために何が欠けていたのか、正確にはわかりません。

0
Jay Bienvenu