laravel 5 中的数据库连接问题
problems with database connection in laravel 5
我使用命令 php artisan migrate
来迁移我的数据库连接,但我仍然遇到同样的错误,我检查了所有内容,没有错。我使用了我在 Laravel 4.2
中一直使用的相同连接
这是我在控制台上收到的消息:
exception 'PDOException' with message 'SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)' in C:\xampp\htdocs\Projects\blog\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php:47
您需要更改位于项目根文件夹中的 .env 文件中的值。
如果没有.env文件,将.env.example文件复制到.env.
Laravel 使用此文件来保护您的密码。您设置的值仅在 .env 文件中没有可用配置时使用,homestead 是那里的标准用户。
You can go to .env file. File available on Project Root folder.
Then some here related to your database.
Then run below command to clear the old configuration cache.
php artisan config:clear
看看你的config/database.php和.envfile.Maybe你的数据库信息不一样
也有这个问题。更新 .env 和 运行 php artisan config:clear
后问题仍然存在!然后在停止服务器并使用 php artisan serve
重新启动服务器后,问题已解决!
更改 database.php
中的以下属性
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
]
至
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'laravel',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
这必须运行良好然后 运行 以下命令:
php artisan migrate:install
我通过使用 config/database.php 文件更新 .env 文件来解决这个问题。
这是我的 config/database.php 结构(我使用的是 mysql)
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'larablog'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
和.env文件结构(与config/database.php)
DB_HOST=localhost // Host name
DB_DATABASE=larablog // Database name
DB_USERNAME=root // Database User
DB_PASSWORD= // Db password(No password here)
如果您使用 sqlite 作为数据库,请确保您已安装 php5-sqlite
sudo apt-get install php5-sqlite
如果已安装,则可能是您的 .env 文件有问题。替换
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
有了这个
DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
更新我的 .env 文件中的数据库信息后,我遇到了同样的错误。
修复了退出命令提示符并重新 运行 php artisan serve
命令的问题
它帮助了我,可能对你有帮助。
我使用命令 php artisan migrate
来迁移我的数据库连接,但我仍然遇到同样的错误,我检查了所有内容,没有错。我使用了我在 Laravel 4.2
这是我在控制台上收到的消息:
exception 'PDOException' with message 'SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)' in C:\xampp\htdocs\Projects\blog\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php:47
您需要更改位于项目根文件夹中的 .env 文件中的值。
如果没有.env文件,将.env.example文件复制到.env.
Laravel 使用此文件来保护您的密码。您设置的值仅在 .env 文件中没有可用配置时使用,homestead 是那里的标准用户。
You can go to .env file. File available on Project Root folder.
Then some here related to your database.
Then run below command to clear the old configuration cache.
php artisan config:clear
看看你的config/database.php和.envfile.Maybe你的数据库信息不一样
也有这个问题。更新 .env 和 运行 php artisan config:clear
后问题仍然存在!然后在停止服务器并使用 php artisan serve
重新启动服务器后,问题已解决!
更改 database.php
中的以下属性'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
]
至
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'laravel',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
这必须运行良好然后 运行 以下命令:
php artisan migrate:install
我通过使用 config/database.php 文件更新 .env 文件来解决这个问题。
这是我的 config/database.php 结构(我使用的是 mysql)
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'larablog'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
和.env文件结构(与config/database.php)
DB_HOST=localhost // Host name
DB_DATABASE=larablog // Database name
DB_USERNAME=root // Database User
DB_PASSWORD= // Db password(No password here)
如果您使用 sqlite 作为数据库,请确保您已安装 php5-sqlite
sudo apt-get install php5-sqlite
如果已安装,则可能是您的 .env 文件有问题。替换
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
有了这个
DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
更新我的 .env 文件中的数据库信息后,我遇到了同样的错误。
修复了退出命令提示符并重新 运行 php artisan serve
命令的问题
它帮助了我,可能对你有帮助。