我是使用Laravel框架开发应用程序的初学者。我遇到一个问题,只有root用户可以使用我的数据库,而没有密码,或者用户“ @'host”可以使用。但是,当我将应用程序部署到服务器时,我无法使用这些用户中的任何一个
我收到以下错误,看来Laravel没有从.env或database.php文件中读取任何用户名。 (因为用户名在此处为空)。
SQLSTATE [HY000] [1044]用户``@'localhost'对数据库'itax'的访问被拒绝
同样,如果我使用user = root且没有密码或user =“'',它将正常工作
这是我的.env文件的配置
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=itax
DB_USERNAME=raees
DB_PASSWORD=12345
和database.php文件
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'itax',
'username' => 'raees',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
任何面临相同问题或找到解决这些问题的方法的人,请分享
答案 0 :(得分:0)
找到了具有空用户名的解决方案。用户名始终为空。
问题出在MySQL。直接从MySQL传递SQLSTATE错误消息。
因此,我删除了数据库和用户。在PhpMyAdmin的“数据库”选项卡中重新创建数据库。并且重要的是分别添加了用户和特权。这解决了这个问题。
我可以从MySQL客户端连接并运行迁移。