相关文章推荐
大鼻子的山寨机  ·  Flutter 使用api ...·  2 年前    · 

mysql报错类型(包括但不限于)

  • (2013, "Lost connection to MySQL server at 'handshake)
  • [ERROR] [MY-000067] [Server] unknown variable ‘06myisam-recover-options=BACKUP’.
  • 等…

主要表现为:

  • 连不上
  • 启动不了
  • 重启不了
  • 本地无法访问
  • 本地无法登录

出现这种问题的本质原因是 MySQL没有正常的启动并运行,进而导致用户无法在本地登录或者通过远程的方式登录

一旦出现这种问题,首先想的就是查看日志文件,查找问题。

  • 首先登录到linux主机,切换到root账户
  • 查看日志记录,结果我果真在日志中找到了问题:
    MySQL日志截图
    因为mysql启动的时候,读取到了一个未知的配置导致报错 unknownvariable'06myisam-recover-options=BACKUP‘ ,导致整个服务无法正常启动,进而持续不断的尝试自动重启解决问题,导致无法正常的运行服务。
  • 然后我理所当然的就开始找日志文件了,在网上查了很多,都说日志文件在 /etc/my.cnf 里边,实际上我在 /etc/ 目录下根本就没找到my.cnf配置文件。但是我最后在下一层目录 /etc/mysql/my.cnf 里找到了,但是打开后我又傻眼了,怎么啥东西都没有,配置文件空白如也呢?
    配置文件
    最后找到了这个

为什么/etc/mysql/my.cnf为空?

为了防止网站无法访问,这里直接截个图
有关配置文件的解释
简直茅塞顿开的炸开了!抓耳挠腮了老久,一直在找配置文件,一直在找为什么配置文件是空白的呢这个问题,终于找答案了,真的是老泪纵流啊!于是我顺利的找到了配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf !,打开它

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

,按一下键盘的i进入vim的编辑状态,将出错的配置注释掉(在那行配置前边加一个#),然后按esc退出编辑状态,再依次按下键盘这三个按键:wq成功的修改保存并退出。

  • service mysql restart重启mysql,成功解决问题,服务正常启动!

出现问题,第一时间要考虑的就是去查一下日志文件,日志文件里边都会详细的写明发生了什么情况,出现了什么错误,排查问题是必须通过日志来定位的

在管理数据库的时候,服务器出现了如下问题 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 截图如下: 1. 原理 出现以上问题,主要是因为默认连接数据库的主机名-p 为localhost作为主机名。通过该主机名连接mysql服务器的时候,会以socket的方式进行连接,而配置
起因:我在Ubuntu14 64位系统中安装mysql后,后来通过mysql -u用户名 -p密码 的命令连接             Mysql数据库时,报错"can't connect to local mysql serverthrough  socket'/var/run/mysqld/mysqld.sock'" 解决过程:后来我进入到目录 /var/run/mysqld下发现mysq
最近租了一个阿里云云翼服务器,趁着自己还是一个学生,享受一下优惠。我租的是阿里云Ubuntu16.04版本的服务器,在搭建mysql的时候,一开始是可以运行的,由于某次手抽,把mysql的套接字文件不小心删除了,然后无论怎么卸载重装,都出现了这个问题: root@iZufkfljcZ:~# mysql -uroot -p Enter password: ERROR 2002 (HY000):...
/usr/bin/mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) Check that mysqld is running and that the s...
有时候,当我们使用“mysql”、“mysqladmin”、“mysqldump”等命令管理数据库时,服务器抛出类似如下错误: 一、错误现场还原:下面我们通过三种方式来连接,然后观察提示的错误信息: 1、直接使用“mysql”命令,不带主机名参数; 2、使用带了主机名“localhost”参数的“mysql -h localhost”命令; 3、使...
mysql命令运行报错Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock
一个很久没用的服务器,服务器上已安装了mysql,并且通过sqlyog3306端口可以正常访问。 然而我直接在命令行里面输入 mysql -uroot -p 想直接在服务器里面连接mysql 的时候,报错Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 解决方案 查了一下,是因为/var/run/mysqld/mysqld.sock这个文件的路径不对。 进到 mysql
连接本地的MySQL数据库引擎时候出现的错误。用mysql_error()函数获取到错误提示: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 为了查看原因,直接在命令行下输入命令查看是否能进入MySQLMySQL -u usrName -p),仍然提示:Can't co
我就说下我碰到的这种情况: 我是在ubuntu上安装mysql的,系统提示我安装mysql-client。我安装之后,输入命令mysql报错can’t connect to local mysql server through socket ‘/var/run/mysqld/mysqld.sock’。 原因:还需要安装mysql-server 解决办法:apt-get install my
连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文件被删除了,本地客户就不能连接。这可能发生在你的系统运行一个cron任务删除了/tmp下的临时文件。 如果你因为丢失套接字文件而不能连接,你可以简单地通过重启服务器重新创建得到它。因为服务器在启动时重新创建它。 另一个解决办法是你现在不能用套接字建立连接因...
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) MySQL报错:Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation 11697