我是 Laravel PHP框架的初学者。这就是我从HERE (Laravel.com)尝试基本任务的原因。我一步一步地遵循这个基本任务。但是在完成这个后我得到了一个< em>错误。我在这里放错误。
PDOException in C:\ XAMPP \ htdocs中\快速启动\供应商\ laravel \框架的\ src \照亮\数据库\连接器\ Connector.php 第55行:SQLSTATE [HY000] [1045]拒绝用户访问 'homestead'@'localhost'(使用密码:YES)
此错误的含义是什么?
SQLSTATE [HY000] [1045]拒绝访问用户'宅基'@'localhost'(使用密码:是)
这是我的 .env 文件。
DB_HOST=localhost
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
我在here中发现了类似的问题。但是没有适当的解决方案。
在这里,我从 Connector.php 添加几行(48到63)。
public function createConnection($dsn, array $config, array $options)
{
$username = Arr::get($config, 'username');
$password = Arr::get($config, 'password');
try {
$pdo = new PDO($dsn, $username, $password, $options);
} catch (Exception $e) {
$pdo = $this->tryAgainIfCausedByLostConnection(
$e, $dsn, $username, $password, $options
);
}
return $pdo;
}
我确实得到了正确的解决方案。有谁能给我正确的解决方案吗?顺便说一句,这是laravel 5.2。
先谢谢。
答案 0 :(得分:1)
SQLSTATE [HY000] [1045]拒绝访问用户'homestead'@'localhost'(使用密码:是)
这意味着您提供的用户名和密码不正确。如果您使用的是宅基地,则默认用户名为homestead
,密码为secret
。此外,您可能需要更改数据库端口,因为默认的laravel配置将查找端口3306
,但Homestead在端口33060
上运行
所以 .env 文件应如下所示:
DB_HOST=127.0.0.1
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
DB_PORT=33060
答案 1 :(得分:0)
您需要为 pdo_mysql
安装php模块要在您的服务器上运行此命令
http://www.example.com/?q=test-words-string
然后重启httpd服务
yum install php-mysqlnd