Mysql服务器安装

我正在尝试安装mysql 5.1.42并在运行下面的行之后

sudo / usr / local / mysql / bin / mysqladmin -u root -p密码

我得到这个错误:

/ usr / local / mysql / bin / mysqladmin:在'localhost'连接服务器失败错误:'无法通过套接字连接到本地MySQL服务器'/var/run/mysqld/mysqld.sock'(2)'检查mysqld正在运行,并且socket:'/var/run/mysqld/mysqld.sock'存在!

我已经创build了mysqld.sock并给予了许可。 但仍然得到相同的错误。

任何人都可以帮忙

谢谢

你确定mysql真的在运行吗? 做一个

ps aux | grep mysql 

检查这一点。 通过TCP / IP连接通常比通过套接字更容易:

 mysql -u root -p -h 127.0.0.1 

你的客户端和服务器很可能对套接字的位置有不同的想法。

如果你有一个/ proc文件系统,find服务器放置socket的位置是很容易的。 输出来自:

 ps -elf | grep mysqld 

应该包括一个mysqld服务器线程的进程标识(任何将会这样做)。 然后在/ procto中查看套接字的写入位置:

 sudo ls -l /proc/NNN/fd 

NNN是来自“ps”调用的进程ID。

一旦你知道了套接字的位置,在连接string中传递它的位置:

 sudo /usr/local/mysql/bin/mysqladmin -u root -S /path/to/mysqld.sock -ppassword 

socket位置通常在mysql.cnf文件(/etc/mysql/mysql.cnf或/etc/mysql.cnf或其他)中指定,在“[mysqld]”一节中。 如果那里没有套接字入口,那么服务器将使用默认编译的/tmp/mysql.sock。 您可以随时停止(或终止)服务器,并将一个明确的套接字条目添加到configuration文件中,如:

 [mysqld] socket=/var/run/mysqld/mysqld.sock 

值得添加到[客户端]部分,所以所有的客户端工具都有相同的想法。