mysql数据库已启动,但是登录数据库报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库已启动,但是登录数据库报错相关的知识,希望对你有一定的参考价值。

mysql数据库默认设置的是开机自启动,重启db01服务器后,想进入数据库查看数据信息:但是无法进入数据库,报错如下:

[[email protected] ~]# mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/mysql/mysql.sock' (2)

查看mysql数据库端口状态,尝试重启,关闭数据库,但是报错如下:

[[email protected] ~]# lsof -i:3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  1369 mysql   11r  IPv4   9721      0t0  TCP *:mysql (LISTEN)
  sqld  1369 mysql   34u  IPv4  10594      0t0  TCP localhost:mysql->localhost:33160 (ESTABLISHED)
mysqld  1369 mysql   50u  IPv4  10916      0t0  TCP localhost:mysql->localhost:33176 (ESTABLISHED)
mysqld  1369 mysql   51u  IPv4  10919      0t0  TCP localhost:mysql->localhost:33178 (ESTABLISHED)
java    1444 nginx  128u  IPv4  10556      0t0  TCP localhost:33160->localhost:mysql (ESTABLISHED)
java    1444 nginx  135u  IPv4  10914      0t0  TCP localhost:33176->localhost:mysql (ESTABLISHED)
java    1444 nginx  136u  IPv4  10917      0t0  TCP localhost:33178->localhost:mysql (ESTABLISHED)
[[email protected] ~]# service mysqld status
MySQL is running but PID file could not be found           [FAILED]
[[email protected] ~]# /etc/init.d/mysqld restart
MySQL server PID file could not be found!                  [FAILED]
Starting MySQL.......The server quit without updating PID file (/data/mysql/mysql.pid).                     [FAILED]


[[email protected] mysql]# /etc/init.d/mysqld stop
MySQL server PID file could not be found!                  [FAILED]
[[email protected] mysql]# /etc/init.d/mysqld start
Starting MySQL.....The server quit without updating PID file (/data/mysql/mysql.pid).                     [FAILED]

解决方法

完善mysql配置文件:

如果确认mysql服务正常运行,还提示文章标题的此错误,那就是“/etc/my.cnf”配置文件的问题了。解决办法是修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”选项和“[mysql]”选项,并使用这两个选项下的“socket”参数值,与“[mysqld]”选项下的“socket”参数值,指向的socket文件路径完全一致。如下:

 

[mysqld]
datadir=/data/mysql/mysql
socket=/data/mysql/mysql.sock
...省略n行(爱E族)...
[client]
default-character-set=utf8
socket=/data/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/data/mysql/mysql.sock

配置完/etc/my.cnf后,重启服务器后,然后就可以正常进入数据库了



参考文档:

https://www.cnblogs.com/wzg123/p/6723338.html

以上是关于mysql数据库已启动,但是登录数据库报错的主要内容,如果未能解决你的问题,请参考以下文章

Mac 下mysql 登录报错ERROR 1045 (28000)

linux中怎么查看mysql数据库版本

关于连接(登录)MySQL数据库报错10061问题之一

项目启动报错Failed to configure a DataSource: 'url' attribute is not specified and no embedde(代码片段

修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段

“Too many connections”引起MySQL崩溃并启动失败