我正在使用新的laravel 5.1框架和env文件。因此,我已经将框架上传到bluehost服务器,出于某种原因,出现了一个错误:
SQLSTATE[HY000] [1045] Access denied for user '**'@'**' (using password: YES)
我在本地服务器上有完全相同的凭据,它在那里工作,但在bluehost服务器上不工作。
执行以下步骤以访问MySQL:
1.-创建一个数据库用户,执行以下查询:
对于远程用户:
GRANT ALL PRIVILEGES ON db_name.* TO 'remoteuser'@'%' IDENTIFIED BY 'secret-passwd'
对于本地用户:
GRANT ALL PRIVILEGES ON db_name.* TO 'localuser'@'localhost' IDENTIFIED BY 'secret-passwd'
2.-配置Laravel,编辑config/database.php
:
'mysql' => [
'read' => [
'host' => 'localhost',
],
'write' => [
'host' => 'localhost'
],
'driver' => 'mysql',
'database' => 'db_name',
'username' => 'localuser',
'password' => 'secret-passwd',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
],
对于远程连接,请将localhost
更改为服务器的域名,例如:mysql-server.example.net
,将用户名更改为remoteuser
,然后在MySQL服务器上打开端口3306。
祝你好运!!