暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

程序操作不了MySQL,可能哪些原因?

143

要周末了,就写一篇基础一点的。

在开发或者维护MySQL的时候,我们有时候会遇到程序无法操作MySQL的情况。

这篇文章我们就介绍一些常见的报错以及解决办法,这些也是小编一 一模拟过的,比如故意构造网络不通的场景,或者把最大连接数改成2再模拟连接数跑满的情况。应该有一丢丢参考价值。

当然,MySQL老司机估计看到这些报错就知道什么问题,那文章就可以跳过啦,可以帮忙去留言区留下遇到过的其他报错。


报错一

A connection  attempt failed ……

这种情况一般就是网络或者端口不通。

可以尝试ping一下MySQL的IP地址。

如果不能通,需要确定网络是否打通,或者路由规则是否添加;

如果能通,那可以确定一下端口通不通。

执行:

    telnet IP 3306

    如果不能通,大概率是被防火墙挡了。

    这种情况,MySQL服务端就需要开放3306端口给客户端,比如需要在服务端执行:

      /sbin/iptables -A INPUT -s 192.168.12.12  -p tcp --dport 3306  -j ACCEPT

      假设192.168.12.12是客户端IP。

      还连不通的话,就得看看MySQL是不是挂了。


      报错二

      Error 1040: Too many connections

      这个表示MySQL连接数超了。

      解决办法:调整MySQL服务端最大连接数或者减少程序配置的连接数。


      报错三

      Error 1045 (28000): Access denied for  user ……

      用户名或者密码不对,这里要注意一点,库不存在或者写错了也是这个报错。

      解决办法:

      修改程序里配置的用户名或者密码;

      修改程序里库名或者创建对应的库。


      报错四

      Error 1142 (42000): …… command denied to  user ……

      原因:

      权限不足


      解决办法:

      增加对应的权限


      报错五

      Error 1146 (42S02): Table ……doesn't exist

      原因:

      表不存在或者写错了


      解决办法:

      程序配置中修改表名,如果没有对应的表,则在MySQL中创建对应的表。


      最后,把常见的一些报错整理成了一张表:

      程序操作MySQL常见的一些报错

      可能的原因

      解决办法

      A connection  attempt failed ……

      网络或端口不通

      调通网络和端口

      Error 1040: Too many connections

      连接数超了

      调整最大连接数限制

      Error 1045 (28000): Access denied for  user ……

      用户名或者密码不对

      库不存在或者写错了

      修改用户名或者密码

      修改库名或者创建对应的库

      Error 1142 (42000): …… command denied to  user ……

      权限不足

      增加权限

      Error 1146 (42S02): Table ……doesn't exist

      表不存在或者写错了

      修改表名或者创建对应的表


      公众号近期热点内容:

      一文入门Go语言

      MySQL主流高可用方案

      数据库到底该不该容器化?

      通过Otter同步MySQL数据

      使用GO开发MySQL巡检系统

      建议收藏:一份完整的数据库规范

      MySQL主库扛不住了?来试试读写分离吧

      单个mysqld_exporter监控多个MySQL实例

      MySQL为什么不用Redo Log来进行主从复制?

      揭秘近几年大厂DBA面试题类型分布,不是备份、优化排榜首

      文章转载自MySQL数据库联盟,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

      评论