我很困惑。当我使用 127.0.0.1 连接到 mysql 时。我得到一个只有测试数据库的 mysql 服务器。如果我使用本地主机连接到数据库,我会看到我的数据库。这是为什么。
注意,在某一时刻我确实安装了 mysql 和 macports。但我卸载了它,我以为我删除了所有内容。我可以做什么来永久消除这个问题?现在我使用apache native 安装并手动安装新的mysql
当我在 Mac 上查看进程时,我看到以下内容
root 82 0.0 0.0 2468784 424 ?? Ss 22Jan14 0:00.30 /opt/local/bin/daemondo --label=apache2 --start-cmd /opt/local/etc/LaunchDaemons/org.macports.apache2/a
root 81 0.0 0.0 2468784 392 ?? Ss 22Jan14 0:00.30 /opt/local/bin/daemondo --label=mysql5 --start-cmd /opt/local/etc/LaunchDaemons/org.macports.mysql5/mys
这可能是自动启动的 macports mysql 和 apache 吗?我该如何将它们从自动启动中删除?
[编辑]
当我使用mysql时;从用户中选择用户;
我得到以下内容
+------+
| user |
+------+
| root |
| root |
| |
| root |
| |
| root |
+------+
还要记住这一点。我使用mysqlworkbench。是的,我没有设置密码,但是当我将主机从 localhost 更改为 127.0.0.1 时,我看不到数据库;但我杀死了上面的那些进程,现在我可以通过两种方式获取我的表,并且我从未更改任何权限
最佳答案
这可能是因为您将权限明确设置为“root”@“localhost”。
您可能需要添加“root”@“127.0.0.1”
这篇文章应该有助于了解如何使用 GRANT 语法。
How to grant remote access permissions to mysql server for user?
======来自评论========
听起来您可能正在运行两个数据库实例。
您是否尝试过查看 MacPort StartupItems:Startup Reference
尝试打开终端并输入:launchctl
查看它是否在列表中并卸载它。
例如(我看不到您的 OP 中的整行内容,因此请在运行之前检查/修改):
-> 每行应以 .plist
文件结尾。
sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.apache2/a....plist
sudo launchctl unload -w /opt/local/etc/LaunchDaemons/org.macports.mysql5/mys....plist
关于php - 在我的机器上 localhost 与 mysql 的 127.0.0.1 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21470642/