mysql -u root -p连接到mysql时,提示错误ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket

使用 mysql -u root -p 命令时,提示错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

错误原因:

根据配置文件 ‘/etc/my.cnf’ 的路径,未找到相应的socket文件,引发该错误

解决方法:

  • 检查端口是否打开 netstat -antlp
  • 检查mysqld服务是否正在运行
  • 找到socket文件位置

在这里插入图片描述

  • 修改 ‘/etc/my.cnf’ 配置文件,在[mysql]和[client]项加上socket文件地址–-‘/data/mysql/run/mysql.sock’
    在这里插入图片描述

再次连接,成功!在这里插入图片描述

参考链接:
https://blog.youkuaiyun.com/weixin_45777669/article/details/115671283

### 如何在终端或命令行中输入 MySQL 登录命令 MySQL 的登录命令 `mysql -u root -p` 应当在操作系统的 **命令行界面** 中输入。具体来说,在 Windows 系统下可以使用 **CMD(命令提示符)** 或者 PowerShell;而在 Linux 和 macOS 下,则通常使用 **终端(Terminal)**。 #### 输入位置的具体说明 - 在 **Windows** 上,可以通过按下 `Win + R` 键打开运行窗口,输入 `cmd` 并回车来启动命令提示符[^1]。 - 在 **Linux/macOS** 上,可以直接通过快捷键或者应用程序菜单找到名为 “Terminal” 的程序并启动它。 一旦进入了上述提到的命令行工具之后,只要环境变量配置正确,就可以直接输入 `mysql -u root -p` 来尝试连接到本地的 MySQL 数据库服务器[^4]。 如果遇到错误消息如 `ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'`,这可能意味着 MySQL 服务未正在运行或者是路径设置有问题[^3]。 以下是验证 MySQL 是否已作为服务启动的一个简单方法: ```bash # 对于 Linux/Mac 用户 sudo systemctl status mysql # 如果是旧版本的服务管理器可以用下面这个替代 sudo service mysql status ``` 对于 Windows 用户而言,他们应该检查服务列表里是否有 MySQL 运行项以及确认其状态为“Running”。 另外需要注意的是,假如即使设置了 PATH 变量仍然无法调用 `mysql` 命令的话,那么可能是由于 bin 文件夹没有被正确添加至全局环境中所致。此建议重新核对一遍步骤确保无误后再试一次。 ```python import os print(os.environ['PATH']) # 查看当前 Python 脚本所识别到的所有目录组成的字符串形式 ``` 以上代码可以帮助开发者快速定位是否成功加入了 MySQL 安装包内的 bin 子文件夹的位置给操作系统知道如何寻找可执行档名叫做 'mysql'.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值