gpt4 book ai didi

php - SQLSTATE[HY000] [1045] 拒绝用户 'webapp' @'localhost' 的访问(使用密码 : YES)

转载 作者:行者123 更新时间:2023-11-29 00:18:25 27 4
gpt4 key购买 nike

我正在尝试在运行 Mavericks 的真实 Mac 上的 Windows 虚拟框上建立一个 php 站点。我用 brew 安装了 mysql 并创建了一个通用的 phpinfo.php 页面,其中有

<?php
phpinfo();
?>

现在可以了。我检查以确保 MySql 正在运行。当我尝试登录我的网站时,出现错误:

SQLSTATE[HY000] [1045] Access denied for user 'webapp'@'localhost' (using password: YES)

我对建立网站业务这整个过程还很陌生,但我正在努力了解它是如何运作的。以前我只是从已经在 vbox 中运行的人那里复制了一张图像。于是我查了一下mysql里面有哪些用户,用这个命令看到了4个root用户

select User from mysql.user;

当我确实为 'root'@'localhost' 显示授权时;,我明白了

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION

那么这个 webapp 用户是从哪里来访问我的网站的呢?我需要创建一个 webapp 的新用户吗?或者我可以将其更改为网站的根目录吗?还是使用 root 是个坏主意?

最佳答案

Crystal,我刚刚在 Mavericks 上安装了 mySQL,最后经历了类似的权限问题循环。底线不断回到设置或知道根用户的密码,并且还能够调整文件中的权限。我找到了为操作系统启用 Root 用户的说明。 http://support.apple.com/kb/PH14281

按照该链接中的说明启用根用户。

然后,您必须停止 mySQL,并运行 mysqld_safe --skip-grant-tables。执行此操作时,您会遇到几个文件权限错误。现在您已经创建了一个 root 用户,您可以以 root 身份登录并对那些文件进行 CHMOD。要在终端中以 root 身份登录,只需键入“login”,它会要求输入登录名 (root) 及其密码(启用时提供的密码)。

接下来,再次运行 mysqld_safe --skip-grant-tables。如果不出意外 呜呼!打开一个新的终端窗口,输入 mysql -u root(不要把 -p 放在那里)

登录后,运行:UPDATE mysql.user SET Password=PASSWORD('NewPass123') WHERE User='root';

你应该得到这样的东西:查询正常,4 行受影响(0.01 秒)行匹配:4 更改:4 警告:0

接下来,运行以下命令:flush privileges;

响应应该是:查询成功,0 行受影响(0.00 秒)

您可以返回到另一个终端窗口并结束它。现在,您知道了 root 的密码,可以设置其他用户、进行授权等....

完成此操作后,建议返回用户/组设置并再次禁用 root。我不会以 root 身份登录 Mac - 而是在需要时使用该用户在终端窗口中登录。然后,当你完成后,禁用它。

希望对您有所帮助。我一直在兜圈子,直到找到如何为操作系统启用 root 用户 ID。

--编辑:我刚刚意识到我将它发布在与我的意思不同的线程上(打开了很多线程)...但是,由于您可以更改 root 密码,然后使用 root 来授予 webapp@localhost 需要的权限。 "GRANT ALL PRIVILEGES ON . TO 'webapp'@'localhost' WITH GRANT OPTION;”(以 root 身份运行,然后刷新权限或重新启动服务)

关于php - SQLSTATE[HY000] [1045] 拒绝用户 'webapp' @'localhost' 的访问(使用密码 : YES),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22003977/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com