バックエンド

【Laravel】access deniedが表示されたときの対処法

『Laravel』でmysqlと接続するために『php artisan migrate』を実行時に、

『SQLSTATE[HY000] [1045] Access denied』と表示されることがあります。

アクセス拒否、という意味で、
環境の違いにより原因は様々あるようで、
もし表示された場合に確認したい箇所についてまとめることにしました。

phpMyAdmin

ユーザーを作る際に%ではなくlocalhostで設定。

.envファイル

database, username, passwordが間違っていないことを確認
ポート番号があっているか確認
(3306または8889)

DB_HOST=127.0.0.1をlocalhostへ変更
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock を.envに追加

config/database.php

config/database.phpのunix_socketの部分をデフォルトのものではなく

‘unix_socket’ => ‘/Applications/MAMP/tmp/mysql/mysql.sock’,
に変更。

変更後にはキャッシュ削除

php artisan cache:clear
php artisan config:clear

その他 rootでアクセスできるか試す

ユーザーをrootにしてアクセスできるか試していただけますでしょうか。
laravelではなく mysql 単独でアクセスできるかも試していただけると助かります。

Access denied for user ‘root’@’localhost’ (using password: NO)でログインできない場合
Laravel データベース接続編

mysqlのバージョン次第でsudo 実行が必要かもです、こちらの記事も参考にしていただければと思います。

Laravelのマイグレーション時にAccess denied for user ‘root’@’localhost’になる

それでもダメなら再インストール

  • XAMPP/MAMPの再インストール
  • Laravelの再インストール

その他のケース

takashiさん:
自分の場合下記で解決できました。

PHPからMySQL 8.0へPDOで接続時に[could not find driver]になる場合の対処法

森野さん:
自分の場合ですが、下記の方法で解決できました。

MySQL5.7が起動できない。

mampを起動させた際、tmpフォルダの中にmysql.sock.lock.が自動で生成されていたようでして、これを削除したら無事にテーブルを作成出来ました。


関連記事一覧 (一部広告あり)

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

アーカイブ

  1. オンライン教材

    【ChatGPT】エンジニア編をリリースしました
  2. バックエンド

    【Laravel第4弾】Vue.js3(CompositionAPI+Scrip…
  3. オンライン教材

    ChatGPTをビジネス活用する講座をリリースしました【Udemy】
  4. オンライン教材

    【AWS】【初心者向け】インフラの基礎からわかる講座をリリースしました【Udem…
  5. オンライン教材

    【React】初心者向け講座をリリースしました【MUI】【Udemy】
PAGE TOP
Ads Blocker Image Powered by Code Help Pro

広告ブロックを摘出しました!!

ブラウザ拡張を使用して広告をブロックしていることが摘出されました。

ブラウザの広告ブロッカーの機能を無効にするか、
当サイトのドメインをホワイトリストに追加し、「更新」をクリックして下さい。

あなたが広告をブロックする権利があるように、
当方も広告をブロックしている人にコンテンツを提供しない権利と自由があります。

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock