ei capitan mysql_关于macos:El Capitan升级后Mysql无法正常工作

我最近将Mac Pro升级到Mac Mini,并使用了迁移助手将我的所有文件和应用程序传输到Mac Mini。

我还重新安装了macports并配置了apache等。因此,我设法使localhost和php在新计算机上工作。

但是我现在无法从终端启动mysql吗?

当我尝试平常时:

mysql5 -u root -p;

并得到以下错误:

Error:  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/local/var/run/mysql5/mysqld.sock' (2)

我也尝试过重启mysql:

sudo opt/local/share/mysql5/mysql/mysql.server restart

并得到以下错误:

ERROR! Manager of pid-file quit without updating file.

当我导航到我的mysql5目录/ opt / local / var / db / mysql5 /时,我看到一个数据库列表,并看到以下PID文件:

myName.local.pid

localhost pid

所以结构类似于我的旧Mac上的结构,但是我对导致mysql无法启动的原因感到困惑?

有趣的是,mysql必须仍然可以正常工作,因为当我在浏览器中运行.php脚本时,mysql查询便可以工作并且正在检索数据。

任何帮助,不胜感激。

下载mysqlworkbench并启动管理会话。 苹果如何通过升级将MySQL安装搞砸,这真是太糟糕了。 签 ; 烧得很厉害。

感谢那。 会尝试一下。

解决了

我想分享我解决此问题时遇到的解决方案。

当您从OSX的先前版本更新到El Capitan时,您的mysql设置将会丢失。当您尝试通过以下方式连接时:

mysql5 -u root -p;

我收到以下错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/local/var/run/mysql5/mysqld.sock' (2)

问题出在my.cnf!

macports mysql的默认配置不带有my.cnf(但是它还有其他my-medium.cnf,my-small.cnf),因此Macports mysql客户端将查看Macports服务器的设置位置。

我还了解到,如果您更改了套接字路径,而不是使用默认路径,则需要告诉所有位置。大多数程序都有一个可以重写的硬编码默认值,我已经将macports默认值重写为一个php编译到的默认值,因此您需要告诉客户端将其更改为什么,否则应该如何知道。

因为我在opt / local / share / mysql5 / mysql中没有my.cnf副本,所以客户端不知道在哪里寻找套接字。因此,我必须在[client]和[mysqld]配置中在my.cnf中定义套接字的路径。

在我的情况下,套接字的路径应该是:

socket = /opt/local/var/run/mysql5/mysqld.sock

然后,我重新启动了mysql:

sudo /opt/local/share/mysql5/mysql/mysql.server restart

最后成功了。

希望这可以帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值