加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL常见问题集锦

发布时间:2016-09-13 11:38:42 所属栏目:MySql教程 来源:站长网
导读:常见问题集锦 MySQL总是崩溃 首先你应该试着找出问题mysqld守护进程是否死掉或你的问题是否与你的客户有关。你可以用mysqladmin version检查你的mysqld服务器正
常见问题集锦

MySQL总是崩溃

首先你应该试着找出问题mysqld守护进程是否死掉或你的问题是否与你的客户有关。你可以用mysqladmin version检查你的mysqld服务器正常执行了多长时间,如果mysqld死了,你可以在文件“mysql-data-directory/'hostname'.err”中找到其原因。

使用MySQL时的一些常见错误

MySQL server has gone away

常见的原因是服务器超时了并且关闭了连接。缺省地,如果没有事情发生,服务器在 8个小时后关闭连接。你可在启动mysqld时通过设置wait_timeout变量改变时间限制。

如果mysqld得到一个太大或不正常的包,它认为客户出错了并关闭连接。

Can't connect to [local] MySQL server

通常意味着没有一个MySQL服务器运行在系统上或当试图连接mysqld服务器时,你正在使用一个错误的套接字文件或TCP/IP端口。

检查(使用ps)服务器上是否有一个名为mysqld的进程启动

如果一个mysqld进程正在运行,可以通过尝试这些不同的连接来检查服务器

shell> mysqladmin version

shell> mysqladmin variables

shell> mysqladmin -h `hostname` version variables

shell> mysqladmin -h `hostname` --port=3306 version

shell> mysqladmin -h 'ip for your host' version

shell> mysqladmin --socket=/tmp/mysql.sock version

注意hostname命令使用反引号“`”而非正引号“'”;这些导致hostname输出(即,当前主机名)被代替进mysqladmin命令中。
Host '...' is blocked错误

Host 'hostname' is blocked because of many connection errors.

Unblock with 'mysqladmin flush-hosts'

这意味着,mysqld已经得到了大量(max_connect_errors)的主机'hostname'的在中途被中断了的连接请求。在max_connect_errors次失败请求后,mysqld认定出错了(象来字一个黑客的攻击),并且阻止该站点进一步的连接,直到某人执行命令mysqladmin flush-hosts。

缺省地,mysqld在10个连接错误后阻塞一台主机。你可以通过象这样启动服务器很容易地调整它:

shell> safe_mysqld -O max_connect_errors=10000 &

Too many connections错误

意味着已经有max_connections个客户连接了mysqld服务器。

如果你需要比缺省(100)更多的连接,那么你应该重启mysqld,用更大的 max_connections 变量值。

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读