错误病症:
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
也有些类似的错误,只不过后面的socket文件不同
诊断:
#1
mysql客户端通过此文件/var/run/mysqld/mysqld.sock来连接数据库
但我并没有指定这个文件,表示这是默认使用的
$ mysql --help | grep socket
--protocol=name The protocol to use for connection (tcp, socket, pipe,
-S, --socket=name The socket file to use for connection.
The buffer size for TCP/IP and socket communication.
socket /var/run/mysqld/mysqld.sock
# 看看是不是有这个文件
命令: ll /var/run/mysqld/mysqld.sock
有些云机器上也许就没有此文件,此时可以找到一个可用的socket文件,建立一个软连接就可以了
--文件在哪里?
找到my.conf这个配置文件(ubuntu在/etc/mysql/my.conf),此文件是The MySQL database server configuration file.
打开看见
19 [client]
20 port,.,.= 3306
21 socket,.,.= /var/run/mysqld/mysqld.sock
这里配置了地址,改这里也算是一种方法。
#治病
找到mysql.sock文件,建立软连接,如我的云机器的sock文件在tmp目录,而且mysqld.sock不在默认目录:
ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock
这样就搞定了。
有人还是不行,那就仔细看看原理,再处理吧。病理是一样的,但表征和治病的方子是变化的。
其他:启动mysql服务的时候,也可以指定sock文件:
/xxx/server/mysql/libexec/mysqld --basedir=/xxx/server/mysql --datadir=/xxx/server/mysql/var --user=mysql --log-error=/xxx/server/mysql/var/AY130422112217010a42.err --open-files-limit=16384 --pid-file=/xxx/server/mysql/var/AY130422112217010a42.pid --socket=/tmp/mysql.sock --port=3306
参考文章:http://blog.csdn.net/lmss82/article/details/4414178
1876 ? 00:00:31 mysqld
先查看 /etc/rc.d/init.d/mysqld status 看看m y s q l 是否已经启动.
另外看看是不是权限问题.
------------------------------------------------------------------------------------
[root@localhost beinan]#chown -R mysql:mysql /var/lib/mysql
[root@localhost beinan]# /etc/init.d/mysqld start
启动 MySQL: [ 确定 ]
[root@localhost lib]# mysqladmin -uroot password '123456'
[root@localhost lib]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 3 to server version: 4.1.11
Type 'help;' or '/h' for help. Type '/c' to clear the buffe他的也解决了,我的麻烦还在继续,依然继续寻找
问题解决了,竟然是max_connections=1000 他说太多了,然后改成500也说多,无奈删之问题解决了。还是不行
摘要:解决不能通过mysql .sock连接MySQL问题 这个问题主要提示是,不能通过 '/tmp/mysql .sock'连到服务器,而php标准配置正是用过'/tmp/mysql .sock',但是一些mysql 安装方法 将 mysql .sock放在/var/lib/mysql .sock或者其他的什么地方,你可以通过修改/etc/my.cnf文件来修正它,打开文件,可以看到如下的东东:[mysql d]
socket=/var/lib/mysql .sock
改一下就好了,但也会引起其他的问题,如mysql 程序连不上了,再加一点:
[mysql ]
socket=/tmp/mysql .sock
或者还可以通过修改php.ini中的配置来使php用其他的mysql .sock来连,这个大家自己去找找
或者用这样的方法:
ln -s /var/lib/mysql /mysql .sock /tmp/mysql .sock成功了,就是这样ln -s /var/lib/mysql /mysql.sock/tmp/mysql.sock
相关推荐
让人纠结了一把…… 代码如下:zhouqian@zhou:~$ mysqlERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)网上好多的解决办法,可是每个人的实际情况...
在MySQL服务器的运行过程中,可能会遇到“ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'”这样的错误。这个错误提示表明,客户端试图通过Unix域套接字(socket文件)...
在使用MySQL时,可能会遇到一个常见的错误:“ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’”。这个错误表明客户端无法通过Unix套接字文件与本地MySQL服务器建立...
标题中的问题 "Can't connect to local MySQL through socket '/tmp/mysql.sock'" 是一个常见的MySQL连接错误,通常发生在尝试通过套接字文件(socket file)连接到本地MySQL服务器时。该问题通常涉及MySQL服务未...
服务器:unbuntu16.04,阿里云 ... ...第一阶段:此时以为再重启...ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 怎么办呢,看看这个啥文件先,然而查到是这个文
最近在linux上装Aphace... can't connect to local MySQL server through socket 'var/run/mysqld/mysqld.sock' 这个把我弄得几近崩溃,我在网上查找了很多的解决办法,大概有几种解决方案: 1.权限问题 2.修改/
在MySQL的使用过程中,有时会遇到异常错误"ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)"。这个错误通常表示客户端无法通过套接字文件与MySQL服务器...
当遇到类似 `ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)` 的错误时,可以通过以下两种方式解决: - 使用 `mysqladmin` 设置 root 用户密码并指定正确的 socket ...
在启动 Mysql 时,可能会出现“ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)”错误。这是因为 /var/lib/mysql 目录的权限不允许 Mysql 服务访问。解决方法是:...
MySQL数据库是我们日常运维工作中经常会使用的一个重要组件,它在运行过程中可能会出现各种问题,而错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket是一个比较常见的连接失败错误。...
在给定的压缩包文件“prometheus组件-mysqld-exporter-0.15.0.linux-amd64.tar”中,我们关注的是mysqld-exporter,这是Prometheus的一个组件,专门用于监控MySQL数据库的性能和状态。 mysqld-exporter是Prometheus...
如果你遇到“ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)”的错误,可以尝试以下解决方案: 1. 检查MySQL服务是否已启动:`# /etc/rc.d/init.d/...
`socket = /var/run/mysqld/mysqld.sock` `port = 3306` `basedir = /usr` `datadir = /var/lib/mysql` `tmpdir = /tmp` `lc-messages-dir = /usr/share/mysql` `## Instead of skip-networking the default is now ...
如果出现“Can’t connect to local MySQL server through socket”的错误,可以在/etc/my.cnf文件中配置mysql.sock的路径,例如: ``` socket=/var/lib/mysql/mysql.sock ``` 然后,重启mysqld服务解决问题。 ...
如果遇到 `Can't connect to local MySQL server through socket '/tmp/mysql.sock` 问题,可以按照以下步骤解决: 1. 查找 `mysql.sock` 文件: ``` find / -name mysql.sock ``` 2. 创建软连接: ``` ln -s /var/...
1.mysql tar zxf mysql-5.1.55.tar cd mysql-* ./configure --prefix=/usr/local/mysql --with-charset=utf8...chown -R mysql /usr/local/mysql/var/ service mysqld start mysqladmin -u root password 'pwd123' ....
废话不多说了,直奔主题了。 mysql的四种启动方式: 1、mysqld 启动mysql服务器:./mysqld –defaults-file=/etc/my.cnf –user=root 客户端连接: mysql --defaults-file=/etc/my.cnf ...mysql -S /t
然后,创建 /var/run/mysqld 目录和 mysqld.pid 文件: `# mkdir /var/run/mysqld` `# touch /var/run/mysqld/mysqld.pid` 最后,启动 MySQL 服务: `# mysql_install_db --force` `# mysqld_safe &` 至此,...
socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid datadir=/mysql/data tmpdir=/mysql/tmp innodb_data_file_path=ibdata1:1G;ibdata2:1G;ibdata3:1G:...
mysql8安装包以及安装说明,在centeros7下的安装.解压缩后会有两个文件:mysql-8.0.18-1.el7.x86_64.rpm-bundle.tar和mysql8安装说明.txt 1、安装 rpm -i 需要安装的包文件名 举例如下: rpm -i example.rpm ...