我知道我问的问题和其他人有些相似,但我的情况有点不同: 我没有用yum安装mysql-server,也没有用rpm或者compile-makeinstall安装。 我只是从官网下载了压缩的预编译二进制文件: http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz
所以,没有/etc/init.d/mysqld,“service mysqld start/stop/restart”无法工作。
我取消存档并初始化数据库:
./scripts/mysql_install_db
然后开始:
./bin/mysqld_safe &
到目前为止一切正常,但是当我尝试使用 mysql 连接它时,它提示:
# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
数据目录更改为:
drw-rw-rw- 4 mysql mysql 4096 Jan 3 14:03 mysql
以下停止命令也无法工作:
# mysqladmin shutdown
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!
mysqld_safe 进程和 mysqld 进程都工作正常:
# ps -ef | grep mysqld
root 10977 5685 0 14:03 pts/2 00:00:00 /bin/sh ./bin/mysqld_safe
mysql 11154 10977 0 14:03 pts/2 00:00:00 /root/mysql-5.1.73-linux-x86_64-glibc23/bin/mysqld
--basedir=/root/mysql-5.1.73-linux-x86_64-glibc23
--datadir=/var/lib/mysql --user=mysql
--log-error=/var/log/mysqld.log
--pid-file=/var/run/mysqld/mysqld.pid
--socket=/var/lib/mysql/mysql.sock
root 11650 5685 0 14:26 pts/2 00:00:00 grep mysqld
/etc/my.cnf 中的一些配置信息是:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
old_passwords=1
最佳答案
# ps -ef | grep mysqld
root 10977 5685 0 14:03 pts/2 00:00:00 /bin/sh ./bin/mysqld_safe
mysql 11154 10977 0 14:03 pts/2 00:00:00 /root/mysql-5.1.73-linux-x86_64-glibc23/bin/mysqld
--basedir=/root/mysql-5.1.73-linux-x86_64-glibc23
--datadir=/var/lib/mysql --user=mysql
--log-error=/var/log/mysqld.log
--pid-file=/var/run/mysqld/mysqld.pid
--socket=/var/lib/mysql/mysql.sock
你的套接字在/var/lib/mysql/mysql.sock
猜你正在使用 /usr/bin/mysql
要连接mysql,可以更新/etc/my.cnf
,为设置
部分 socket=/var/lib/mysql/mysql.sock
[ mysql]
[mysql]
socket=/var/lib/mysql/mysql.sock
要修复 mysqladmin
,您还需要添加 [mysqladmin]
部分
[mysqladmin]
socket=/var/lib/mysql/mysql.sock
或者您可以添加[client]
,它应该适用于mysql
和mysqladmin
[client]
socket=/var/lib/mysql/mysql.sock
关于mysql - 开始使用预编译的mysql,但是得到: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20897812/