【问题标题】:SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO) (SQL: select * from `rooms` order by `order_by` asc)SQLSTATE[HY000] [1045] 用户'root'@'localhost'的访问被拒绝(使用密码:NO)(SQL:select * from `rooms` order by `order_by` asc)
【发布时间】:2020-06-07 10:03:50
【问题描述】:

我的代码在 localhost 中运行良好,但是当我将其上传到服务器上时出现以下错误显示

照亮\数据库\查询异常(1045) SQLSTATE[HY000] [1045] 用户'root'@'localhost'的访问被拒绝(使用密码:NO)(SQL:select * from rooms order by order_by asc) 以前的例外 SQLSTATE[HY000] [1045] 用户'root'@'localhost'的访问被拒绝(使用密码:NO)(1045)

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:tT9jGFWVeBX5uLy/CVZbs8k+RNGBpMyJ526xfRv3DKQ=
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=janatapa_shre
DB_USERNAME=janatapa_shre
DB_PASSWORD=Shre@123

BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

虽然我已经更改了 .env 文件中的数据库名称、用户和密码,但它仍然显示 “用户'root'@'localhost'的访问被拒绝(使用密码:否)” 这是我的本地主机密码和用户名''

我什至无法清除我的缓存

当我尝试在服务器上使用以下代码时

php artisan cache:clear
php artisan config:clear
php artisan config:cache
php artisan view:clear

终端显示以下错误

[在 Connection.php 第 664 行:

SQLSTATE[HY000] [1045] 用户 'root'@'localhost' 的访问被拒绝(使用 pas
剑:NO) (SQL: select * from rooms order by order_by asc)

在 Connector.php 第 70 行:

SQLSTATE[HY000] [1045] 用户 'root'@'localhost' 的访问被拒绝(使用 pas
剑:NO)]1

【问题讨论】:

标签: php laravel server


【解决方案1】:

如果 .env 文件一切正常,并且您设置的用户名和密码正确。然后在您的项目路径中打开终端并使用此命令,

php 工匠缓存:清除

我希望它会有所帮助。

【讨论】:

    【解决方案2】:

    我也遇到了同样的问题!
    这是由于密码字符串格式。 所有密码字符串都包含 #(例如,Test123#.test@#, test123$$)必须在引号之间 laravel 5.8 以上版本需要密码才能在 quat
    DB_PASSWORD='Test123#' 然后运行php artisan config:cache
    然后通过php artisan migrate 迁移数据库 它对我来说很好用

    【讨论】:

      【解决方案3】:

      当您在 .dev 中进行更改时,您必须在更改后进行此操作 php artisan optimize

      【讨论】:

        【解决方案4】:

        我遇到了同样的错误。 SQLSTATE[HY000] [1045] Access denied for user 'niyo'@'localhost' (using password: NO)

        我发现我没有创建名为niyo 的用户并授予他所有权限。我在PhpMyAdmin 界面的用户帐户部分配置了它。

        .env 文件示例

        DB_CONNECTION=mysql
        DB_HOST=localhost
        DB_PORT=3306
        DB_DATABASE=oneagentdb
        DB_USERNAME=niyo
        DB_PASSWORD=123456
        

        【讨论】:

          【解决方案5】:

          这是由于缓存。所以从 bootstrap/cache/config.php 中删除缓存文件 'config.php'。谢谢

          【讨论】:

            【解决方案6】:

            我也遇到过这个问题,您的 DB_USERNAME 或 DB_PASSWORD 一切都很好,如果您的密码字符串包含 #(例如 Test123#)“功能”5.8 或更高版本,则将 # 视为注释分隔符,因此请重写您的密码作为 DB_PASSWORD='Test123#' 及其作品。 它对我有用。

            【讨论】:

              猜你喜欢
              • 2020-11-16
              • 2020-01-16
              • 2017-07-25
              • 2021-09-01
              • 2018-07-03
              • 2020-08-20
              • 2018-10-08
              • 2018-07-22
              相关资源
              最近更新 更多