怎么处理MySQL数据库相关异常

怎么处理MySQL数据库相关异常,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

在加格达奇等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、网站建设 网站设计制作定制网站开发,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销,外贸网站建设,加格达奇网站建设费用合理。

大家都明白,任何数据库在使用过程中,发生异常是不可避免的。下面小编来讲解下MySQL数据库相关异常怎么处理?

问题一:启动mysql时候出现StartingMySQL..Managerofpid-filequitwithoutupdatingf[失败]StartingMySQL...Managerofpid-filequitwithoutupdating[失败]

解决方案:

第一种:

1.删除/usr/local/mysql/data/mysql-bin.*文件夹所有临时文件数字后缀名。

2.重启mysql(用二进制安装后,重启的方法)servicemysqldstart。

第二种:

编辑/etc/my.cnf添加:

[mysqld]datadir=/var/lib/mysql

MySQL服务器把数据库存储在由datadir变量所定义的目录中。

查看已有进程之后杀掉:

ps-aux|grepmysql8016pts/200:00:00mysqld_safe8037pts/200:00:00mysqld

重启mysql。

第三种:

在/etc/my.cnf中注释掉

skip-federated=>#skip-federated

第四种:

有时候在/etc/my.cnf中设置了datadir=/var/lib/mysql重启mysql就会出现这种错误。

若不单独设置,mysql默认数据目录为mysql安装目录下。

问题二:当让系统自己生成库时候,出现FATALERROR:Couldnotfind./bin/my_print_defaults。

解决方案:/usr/local/mysql/scripts/mysql_install_db--user=mysql--basedir=/usr/local/mysql--datadir=/usr/local/mysql/data

问题三:mysql_connect()[function.mysql-connect]:Can'tconnecttolocalMySQLserverthroughsocket'/var/lib/mysql/mysql.sock'(13)/eccore/model/mysql.php94或者StartingMySQL/etc/init.d/mysql:line327:--socket=/var/lib/mysql/mysql.sock。

解决方案:

1>加入如下代码,让mysql去tmp文件夹应用这个文件,以前默认为/var/lib/mysql/mysql.sock这个地址。

修改/etc/my.cnf

[mysql]socket=/tmp/mysql.sock

2>进入/tmp文件夹创建mysql.sock

touchmysql.sock

3>重启mysql

/etc/init.d/mysqldrestart

MySQL数据库相关异常怎么处理

问题四:A主机mysql访问B主机mysql:mysql-uroot-proot-P3306-h292.168.100.52出现如下错误:ERROR2003(HY000):Can'tconnecttoMySQLserveron'192.168.100.52'(113)

解决方案:

1.服务器要能在网(公网)上被访问到,如果有防火墙,要开放3306端口(MySQL默认的监听端口);

关闭所有防火墙/etc/rc.d/init.d/iptablesstop

加入规则vim/etc/sysconfig/iptables

2.在mysql服务器上建立一个远程用户,最简单的方式就是

grantALLPRIVILEGESon*.*tousername@"%"identifiedby"root"

问题五:出现MySQLserverhasgoneaway有几种情况。

解决方案:

1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。

解决方案:

在my.cnf文件中添加或者修改以下两个变量:

wait_timeout=2880000interactive_timeout=2880000

关于两个变量的具体说明可以google或者看官方手册。

如果不能修改my.cnf,则可以在连接数据库的时候设置CLIENT_INTERACTIVE,比如:

sql="setinteractive_timeout=24*3600";mysql_real_query(...)

2、执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。比如,图片数据的处理。

解决方案:

在my.cnf文件中添加或者修改以下变量:

max_allowed_packet=10M(也可以设置自己需要的大小)

max_allowed_packet参数的作用是,用来控制其通信缓冲区的最大长度。

看完上述内容,你们掌握怎么处理MySQL数据库相关异常的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


标题名称:怎么处理MySQL数据库相关异常
网页链接:http://ybzwz.com/article/jicspg.html