mysql不生成socket_不能创建 mysql.sock.lock是怎么回事

当MySQL因非正常关机或配置问题导致mysql.sock文件丢失时,会出现无法连接的情况。解决方法包括指定socket路径如--socket=/var/lib/mysql/mysql.sock或重启MySQL服务重建socket文件。配置文件my.cnf的设置需与实际socket位置一致,改动后需重启MySQL以应用变更。
摘要由CSDN通过智能技术生成

展开全部

一、原因:

1、linux系统一62616964757a686964616fe78988e69d8331333363356533次不正常关机后,连接mysql的时候系统提示不能通过/tmp/mysql.sock文件进行连接,或者非正确关闭时,导致mysql.sock文件再次丢失,当你在次启动时出现如下错误,connect mysqld faild ,/tmp/mysql.sock can't find

mysql.sock的丢失主要是因为更改了机器名,在没有正确关闭mysqld的情况下,去执行mysqld_safe,这样他就删除已经运行的mysql.sock了。正常情况下,mysqld_safe 应该告诉我们是已经有Mysqld运行了,而上边并没有这样提示,主要是更改机器名导致mysqld_safe判断是否已经运行,去找的是newhostname.pid文件,但已经运行的mysqld生成的是oldhostname.pid, 肯定找不到newhostname.pid,所以mysqld_safe收拾一下(清理了mysql.sock),然后去重启,但是ibdata需要lock,它lock不了,还是起不了,但是老的mysql.sock就消失。

2、连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文件被删除了,本地客户就不能连接。这可能发生在你的系统运行一个cron任务删除了/tmp下的临时文件。

如果你因为丢失套接字文件而不能连接,你可以简单地通过重启服务器重新创建得到它。因为服务器在启动时重新创建它。

二、解决方法:

方法一:

mysql --port=3306

引用:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) 引用:ERROR 2002: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (111) 引用:在网上看到各种教程,都会出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' 根据引用内容,你遇到的问题是无法通过MySQLsocket连接到本地的MySQL服务器。错误提示中的socket路径可能因系统或配置不同而有所差异。 解决这个问题的一种方法是通过命令行工具mysqladmin来重置密码。你可以在终端中运行以下命令: /usr/local/mysql/bin/mysqladmin -u root -S /var/lib/mysql/mysql.sock password 'your.passwd' 其中,/usr/local/mysql/bin/mysqladmin是mysqladmin工具的路径,-u root表示使用root用户,-S /var/lib/mysql/mysql.sock表示指定socket路径,password 'your.passwd'表示设定你的密码。 另外,在网上的教程中也有提到类似的问题,如ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'。这些问题可能出现的原因有很多,比如MySQL服务器没有启动、socket文件不存在或权限问题等。解决方法也因具体原因而异,所以你需要根据你的具体情况进行调整和尝试。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [解决Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2)](https://blog.csdn.net/m0_47505062/article/details/122761275)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Can’t connect to local MySQL through socket ‘/tmp/mysql.sock’解决方法](https://download.csdn.net/download/weixin_38677936/14837586)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)](https://blog.csdn.net/qw_xingzhe/article/details/78699157)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值