web-dev-qa-db-ja.com

Laravelユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードを使用:YES)laravel 4.2

Laravel 4.2を使用してビルドした古いプロジェクトがあります。4.2error

PDOException(1045)SQLSTATE [HY000] [1045]ユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードを使用:YES)

私はグーグルしてすべてのことを試しましたが、修正できませんでした

。envファイル

APP_KEY=az9tq5VHQCV9g5m2CsgY89jtijrCMgEA
DB_Host=localhost
DB_DATABASE=billing
DB_USERNAME=root
DB_PASSWORD=1234

database.php

'mysql' => array(
            'driver'    => 'mysql',
            'Host'      => 'localhost',
            'database'  => 'billing',
            'username'  => 'root',
            'password'  => '1234',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ),

enter image description here

Mが間違っている場所を教えてくれる人はいますか?

注:質問をする前に、composer updateとほとんどのstackoverflow回答を更新してみました。

更新

私はphpファイルを作成してこの接続をテストしました

<?php
$servername = "localhost";
$username = "root";
$password = "1234";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
echo "Connected successfully";
?>

「接続に成功しました」というメッセージが表示されます

6
iCoders

Laravel 4.xはENVファイルもサポートしていません。 ./config/[env name] /database.phpの設定が正しいかどうかを確認する必要があるだけです。

1
Magna Centipede

LaravelはDBに接続できません。 priveledges を確認し、DBが存在することを確認してください。また、クライアントでDBに接続してみてください。同じログインとパスワードを使用するMySQL Workbenchのようなものです。これは、これを修正するために何ができるかについてのヒントを与えます。これを実行できない場合は、Laravel問題ではありません。

4
Alexey Mezenin

これを試して

.envファイル

APP_ENV=local

DB_CONNECTION=mysql
DB_Host=localhost
DB_DATABASE=billing
DB_USERNAME=root
DB_PASSWORD=1234

config/database.php

default' => env('DB_CONNECTION', 'mysql'),


'mysql' => array(
            'driver'    => 'mysql',
            'Host'      => env('DB_Host','localhost'),
            'database'  => env('DB_DATABASE','billing'),
            'username'  => env('DB_USERNAME','root'),
            'password'  => env('DB_PASSWORD', '1234'),
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        )

そうでない場合は、.envファイルをチェックアウトして接続を確認します

2
Parithiban

DB_Host=localhostはLaravel 5.7で私のために働きました

2
emotality

私は新しいLaravel=インストールで同じ問題に遭遇しました。問題は、独自のIPアドレスにあるvagrant boxのmysqlサーバーではなく、ubuntu localhost mysqlサーバーに接続していたことでした。 '192.168.10.10'。私はそれに切り替えて、すべてが魅力的に働いた:)

2

.ENVを試す

APP_ENV=local
DB_CONNECTION=mysql
DB_Host=localhost
DB_DATABASE=billing
DB_USERNAME=root
DB_PASSWORD=1234 

そして、DeleteからキャッシュファイルをRoot/bootstrap/cache/filesから実行して、アプリ

1
Naeem Ijaz

私はLaravel 5.6.33でテストしていますが、このエラーが表示されます: 「ユーザー 'root' @ 'localhost'のアクセスが拒否されました」、ただしユーザー名とパスワードは 正しい。このバージョンでは、これはバグだと思います。DB_Hostを127.0.0.1からlocalhostに変更して機能します。

DB_Host = 127.0.0.1 (前)
DB_Host = localhost(後)

1
Carlos Vieira

私は問題を解決しました。接頭辞の問題。PostgreySqlにはデータベースに接頭辞があるので、接頭辞も追加する必要があります。

database.php

'mysql' => array(
            'driver'    => 'mysql',
            'Host'      => 'localhost',
            'database'  => 'billing',
            'username'  => 'root',
            'password'  => '1234',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => 'bill',
        ),
0
iCoders

.envは正しいポート番号を使用しています。 phpMyAdminを使用している場合は、次のように設定します。

MariaDB defaults to 3306

そして

MySQL defaults to 3308

だからあなたの.env MySQLにポート3308を使用します。これが役に立てば幸いです!

0
Jacman

ユーザー 'root' @ 'localhost'のアクセスが拒否されました(パスワードを使用:YES)

エラーが来ていましたか?考えられる理由は、データベース接続です。データベースが接続されていない場合は、エラーをスローします。

データベースをチェックして、すべてのものを削除し、すべてが正しいかどうかを確認してください。

解決しない場合は変更してください

DB_Host=127.0.0.1 TO DB_Host=localhost
0

Laravel 6は、空のスペースの代わりに秘密を設定しました。

DB_PASSWORD=secret
0
Dpetrov

ホームステッドを使用してlaravelを学習しているときに同じ問題に直面しました。ページを開こうとすると問題が発生しました。データベースに接続しようとしましたが、mysqlを使用してデータベースに接続できますが拒否されましたコマンドライン。問題は、HomesteadがゲストからHostにWebサーバーリクエストを転送するため、myqslと同じことであると誤って想定していたことです。Homesteadは独自のmysqlサービスを持っているので、私の問題は:-Homestead sshゲストマシンにmysql -u root -p mysqlコマンドラインに接続するには、デフォルトのパスワードは "secret"です-データベースを作成しますが、必要です最初にパスワードを変更するには、ホストマシンでmysql rootのパスワードと同じパスワードに変更するだけです-mysql cliを終了し、テーブルを作成するためにphp artisan migrateを実行してください-今すぐブラウザーを更新してくださいそれはあなたのデータベースに接続できるはずです

0
Ari R. Fikri