错误2002(HY000):无法通过套接字'/var/lib/mysql/mysql.sock'连接到本地MySQL服务器。

6

我已经安装了Centos7的更新,卸载了MariaDB并进行了MySQL的新安装-此外,我已经将其卸载并重新安装,但每次连接到mysql -u root -p时都会出现标题错误。 此外,已查看与此相关的其他工单,但仍未取得进展。 如果我运行service mysqld restart,则会显示“重定向到/bin/systemctl restart mysqld.service”,然后就挂起了。 真的不是一个Linux专家,所以不确定是什么原因导致这种情况?


这听起来像是你的MySQL守护进程无法启动。检查日志 - /var/log/mysqld.log。它给出了什么错误?如果你在MariaDB上安装了旧版本的MySQL,如果你保留了/var/lib/mysql目录,它可能无法转换数据文件。 - Jeremiah Winsley
我在InnoDB方面遇到以下错误:2014-10-02 17:41:17 7948 [ERROR] InnoDB:自动扩展数据文件./ibdata1的大小与.cnf文件中指定的大小不同,为640页(向下舍入为MB),而初始为768页,最大值为0(仅在非零时相关)! 2014-10-02 17:41:17 7948 [ERROR] InnoDB:无法打开或创建系统表空间。如果您尝试向系统表空间添加新数据文件,并且在这里失败了,则现在应该将my.cnf中的innodb_data_file_path编辑回其原始状态,并删除InnoDB在此失败尝试中创建的新ibdata文件。 - Ukuser32
我删除了3个ibdata文件和日志并重新启动,但出现了错误。由于那里没有数据,我很乐意完全删除它,但已经尝试过了。现在离开,明天回来。 - Ukuser32
1
如果您不需要旧数据库中的数据,您应该删除/var/lib/mysql目录下的所有内容。这将重新创建系统数据库,并且应该能够启动。 - Jeremiah Winsley
4个回答

20
我也遇到了同样的问题,并在深入研究后发现了一些东西。MariaDB是MySQL的一个替代品。在新系统上,mysql是MariaDB客户端(尽管我不清楚这意味着什么)。我检查了服务是否正在运行:
service mysqld status

说明:

重定向到 /bin/systemctl status mysqld.service mysqld.service 加载:未找到文件或目录(原因:没有这样的文件或目录) 活动状态:不活跃(已停止)

换句话说,mysqld服务未在运行。

`systemctl start mariadb.service`

现在所有的MySQL命令都可以按预期工作。

`systemctl enable mariadb.service`

安装完成后,我仍然遇到了相同的错误,但是这篇文章解决了我的问题。谢谢! - LandiLeite

0
请在 [mysqld] 部分中检查您的 /etc/my.cnf 中的 'socket=' 条目:
[mysqld1]
socket = /tmp/mysql.sock1

另一种方法是通过向'mysqladmin'或'mysql'命令提供'-hhost'和'-Pport'参数来避免使用套接字。

mysql -u user -hservername -P3006 -p   -Dschema
mysqladmin -u user -p -hhostname -Pport 

要验证mysqld是否正在运行,请使用命令'pgrep -fl mysqld'。在输出中,您应该看到2个非常长的条目(每个都在终端上多次换行)。一行以'mysqld_safe'开头,另一行以'mysqld'开头。 'mysqld'的换行符“结尾”还应包含'--port = xxxx'。尝试使用该值作为'mysql ...-Pxxxx'命令行的参数。 - J Jorgenson
谢谢。我已经运行了它,但是我看到的只有9818 mysqld_safe和9970 mysqld。我打算尝试删除并重新安装。 - Ukuser32

0

删除目录就解决了 - 使用 "rm -rf 目录名称" 删除目录,然后卸载 mysql "yum remove mysql mysql-server",接着重新安装 "yum install mysql-server" 并运行 "service mysqld start"

如果你遇到启动 mysql 服务挂起的问题 - 检查日志 /var/log/mysqld.log,正如 Jeremiah 所建议的那样。


0
如果您查看MariaDB日志文件,可能会发现问题与创建pid文件有关。要解决此问题:创建PID目录,然后将其所有者更改为mysql:mysql。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接