我在 VPC 实例中的 Amazon EC2 上运行了一个 MySQL 服务器。我不得不更改它的实例类型来处理负载,当我重新启动它时,套接字不再存在。文件 /var/run/mysqld/mysqld.sock 不存在,目录也不存在。
我不知道它去了哪里,但它就是消失了。那么有办法解决这个问题吗?如果有,该怎么做?该服务器正在运行 Ubuntu 10.04。
答案1
确认 mysqld.sock 不存在
sudo find / -type s | grep mysqld.sock
检查你的/etc/mysql/my.cnf
文件是否同意该文件应该是/var/run/mysqld
socket = /var/run/mysqld/mysqld.sock
如果确实如此,那么
sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/
sudo service mysql restart
但我怀疑你的问题出在其他地方,因为如果目录不存在,mysql 启动脚本将创建该目录。你的 mysql 日志中是否有相关消息?