yuchu3d 2024-06-12 23:55 采纳率: 80%
浏览 20
已结题

mysql , 用自己创建的本地主机和用户名 登录不上

mysql , 用自己创建的本地主机和用户名 登录不上;

1、本人在学习PHP,最近学习了mysql相关的知识, 遇到了一个问题,请一步一步往下看;

2、我是用XAMPP 统一安装的PHP 和mysql, 并且 通过 apache 配置了一个虚拟主机 ,详细见下图:

img

img

img

img

3、创建 mysql 的用户和 主机 ,如下

img


4、但是 无论 我用新创建的用户名 和主机 登录 都失败了

img

这里 我想问几个问题 :

a. 我用自己创建的用户名和主机 ,为什么 登录不上,到底错在哪里?

b. 明明 登录语句里写了 主机, 为什么 错误提示里 显示的是 localhost?

c. 难道 mysql 只能用 root 登录?

d. 该怎样修改,才能用我创建的 用户名(richer) 和 主机(www.admin.test) 登录?

谢谢! 请解答详细一点!

  • 写回答

23条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-12 23:55
    关注
    获得0.30元问题酬金

    引自免费微信小程序:皆我百晓生

    针对你遇到的问题,让我们逐一分析并尝试解决:

    问题 a: 为什么用自定义的用户名和主机登录不上?

    在 MySQL 中,用户账户是与主机名绑定的。当你尝试使用 richer 用户从 localhostwww.admin.test 登录时,你可能遇到了权限问题,因为 richer 用户可能只被授权从特定主机访问。

    解决方案 a:

    确保 richer 用户有正确的权限从 localhostwww.admin.test 访问数据库。你需要在 MySQL 中检查和设置用户的权限。

    步骤 1: 登录 MySQL 作为 root 用户

    mysql -u root -p
    

    步骤 2: 检查 richer 用户的权限

    SELECT User, Host FROM mysql.user WHERE User = 'richer';
    

    步骤 3: 如果 richer 用户没有正确的权限,重新授予

    GRANT ALL PRIVILEGES ON *.* TO 'richer'@'localhost' IDENTIFIED BY 'yourpassword';
    GRANT ALL PRIVILEGES ON *.* TO 'richer'@'www.admin.test' IDENTIFIED BY 'yourpassword';
    FLUSH PRIVILEGES;
    

    问题 b: 为什么错误提示显示的是 localhost?

    当从命令行工具连接到 MySQL 数据库时,默认连接方式是通过 Unix socket 文件,这通常等同于 localhost。即使你指定了不同的主机名,MySQL 仍可能尝试通过 localhost 连接,特别是如果你的主机名未正确解析或配置。

    解决方案 b:

    确保你的 DNS 或 hosts 文件正确解析 www.admin.test127.0.0.1 或正确的 IP 地址,并且在 MySQL 中 richer 用户有从该主机访问的权限。

    问题 c: MySQL 是否只能用 root 登录?

    不是的。MySQL 允许创建多个用户,并为每个用户分配不同的权限。root 用户具有最高权限,但你完全可以使用其他用户登录,只要这些用户拥有足够的权限。

    问题 d: 如何用自定义用户名和主机登录?

    确保你已经按照上述步骤设置了正确的权限,并且你的 hosts 文件或 DNS 设置正确解析 www.admin.test。然后,你应该能够使用以下命令登录:

    mysql -u richer -h www.admin.test -p
    

    输入密码后,你应该可以成功登录。

    最后的建议

    • 确保 XAMPP 控制面板中的 MySQL 和 Apache 服务运行正常。
    • 检查你的防火墙设置,确保没有阻止 MySQL 的端口(默认为 3306)。
    • 确认你的 www.admin.test 域名在所有相关系统上都解析正确。

    遵循以上步骤,你应该能够解决登录问题。如果仍有疑问,进一步检查 MySQL 日志文件可能会提供额外的线索。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月20日
  • 创建了问题 6月12日

悬赏问题

  • ¥15 C++ 句柄后台鼠标拖动如何实现
  • ¥15 有人会SIRIUS 5.8.0这个软件吗
  • ¥30 comsol仿真等离激元
  • ¥15 静电纺丝煅烧后如何得到柔性纤维
  • ¥15 (标签-react native|关键词-镜像源)
  • ¥100 照片生成3D人脸视频
  • ¥15 伪装视频时长问题修改MP4的时长问题,
  • ¥15 JETSON NANO
  • ¥15 VS开发qt时如何在paintgl函数中用pushbutton控制切换纹理
  • ¥20 关于 openpyxl 处理excel文件地问题