【发布时间】:2014-04-26 13:26:42
【问题描述】:
我已经看到 stackoverflow 上的许多用户都有类似的问题,但按照我的答案我无法使其正常工作。
当我跑步时:
php artisan migrate
我明白了:
[PDOException]
SQLSTATE[28000] [1045] Access denied for user 'root'@'localhost' (using password: NO)
这是我的 app/config/app.php
'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'mio_sito',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
问题是我实际上没有密码,如果我用以下方式登录 vagrant:
vagrant ssh
我可以通过以下方式访问 mysql:
mysql -u root
并且不需要密码。
我该如何解决这个问题?
【问题讨论】:
-
尝试添加 127.0.0.1 而不是 localhost ?
-
默认 MySQL 安装通常只允许通过套接字连接进行无密码连接。
mysql -u root可能正在使用套接字连接而不是 TCP 连接。当您指定127.0.0.1或localhost时,您实际上是通过TCP 连接的。很可能,问题出在 MySQL 配置中。 -
如果您使用宅基地,请确保它是
homestead'@'localhost'而不是homestead'@'%'。