質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

artisan

artisanは、PHP Laravelフレームワークのコマンドの事です。 Artisanコマンドを使う事で、DBのテーブルやバンドル等を追加することができるコマンドです。

Q&A

1回答

5067閲覧

php artisan migrateでエラーが出る [1045] Access denied

退会済みユーザー

退会済みユーザー

総合スコア0

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

artisan

artisanは、PHP Laravelフレームワークのコマンドの事です。 Artisanコマンドを使う事で、DBのテーブルやバンドル等を追加することができるコマンドです。

0グッド

0クリップ

投稿2021/06/02 06:26

前提・実現したいこと

laravelにてwebアプリの開発をしています。
データベースはMAMPのmysqlを使用しています。

php artisan migrateを実行すると、以下のエラーになる問題で困っています。

実現したいこと

MAMPのphpMyAdminに作成したデータベースblogにmigrateを成功させテーブルを表示したいです。

発生している問題・エラーメッセージ

Illuminate\Database\QueryException : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO) (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations and table_type = 'BASE TABLE') at /Applications/MAMP/htdocs/blog/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664 660| // If an exception occurs when attempting to run a query, we'll format the error 661| // message to include the bindings with SQL, which will make this exception a 662| // lot more helpful to the developer instead of just the database's errors. 663| catch (Exception $e) { > 664| throw new QueryException( 665| $query, $this->prepareBindings($bindings), $e 666| ); 667| } 668| Exception trace: 1 PDOException::("SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)") /Applications/MAMP/htdocs/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70 2 PDO::__construct("mysql:unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock;dbname=blog", "root", "", []) /Applications/MAMP/htdocs/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70 Please use the argument -v to see more details.

該当のソースコード .env

DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=8889 DB_DATABASE=blog DB_USERNAME=root DB_PASSWORD=root DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock

該当のソースコード database.php

'mysql' => [ 'driver' => 'mysql', 'url' => env('DATABASE_URL'), 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '8889'), 'database' => env('DB_DATABASE', 'blog'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', 'root'), 'unix_socket' => env('DB_SOCKET', '/Applications/MAMP/tmp/mysql/mysql.sock'), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => null, 'options' => extension_loaded('pdo_mysql') ? array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [], ],

試したこと

php artisan config:cache
php artisan config:clear

補足情報(FW/ツールのバージョンなど)

不足している情報がありましたら、ご指摘いただけると幸いです。よろしくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

おそらくエラー内容を見て分かっているのではないかと思いますが、

Illuminate\Database\QueryException : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)

ですから、'root'@'localhost'ユーザにアクセスを許していません、ということです。まずは適切なアクセス権限があるかどうかを確認して、なければアクセス権限を与えてください。アクセス権限が与えられているということであれば、.envに記載されているパスワードが間違っているとかじゃないでしょうか。試しにシェル上からmysqlコマンドでMySQLサーバにログインできるかどうかを試して、パスワードが正しいかなど確認するといいと思います。

質問文にある情報ではおそらくこれくらいのことしか類推できないと思われます。

投稿2021/06/02 14:04

AbeTakashi

総合スコア4853

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/06/03 04:24

ご回答ありがとうございます! シェル上からログインしてrootユーザーのパスワードを変更等も試してみたのですが、未だ解決に至りません…。phpMyAdmin上で確認したところ、アクセス権限も全て付与されているようでした。 引き続き原因を調べたいと思います。
AbeTakashi

2021/06/03 16:20

エスパー気味ですが .env の 'localhost' を '127.0.0.1' とかにして php artisan config:cache したらどうなりますか? phpMyAdminで作ったアカウントのホストがどうなってるか合わせて確認してみてください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問