MySQL数据库工程师入门实战课程视频教程
4073 人在学
最近在Windows2003上的MySQL出现过多次正常运行时无法连接数据库故障,现象是无法连接数据库,也无法停止MySQL或重启MYSQL,重启机子也没有效果,针对这些情况,小编总结了几种常见MySQL无法启动案例和mysql服务启动不了解决方案,希望对大家有所帮助!
几种常见MySQL无法启动案例
问题1:目录、文件权限设置不正确
MySQL的$datadir目录,及其下属目录、文件权限属性设置不正确,导致MySQL无法正常读写文件,无法启动。
错误信息例如:
问题2:端口冲突
已有其他mysqld实例启动,且占用了相同端口,需要修改port选项。
错误信息例如:
问题3:innodb配置不正确
innodb中关于datafile、logfile设置不正确,导致无法启动。尤其是第一次用默认参数启动过,后来又参考一些优化指南后,修改了innodb的参数,会提示differentsize,详细错误例如:
问题4:没有初始化mysql系统库
MySQL安装完后,需要运行mysql_install_db初始化mysql这个系统库,才能正常启动。
问题5:如果将mysql以普通用户权限运行的时候需要注意一些目录权限与用户名密码设置
有时候为了让mysql更安全一些,我们都会将mysql低权限运行,由于一些安全设置工具的原因,需要将此用户重新设置一下密码就可以了。
通常地,碰到mysqld进程无法启动时,不管任何错误,都优先检查错误日志(日志文件一般在$datadir/xx.err文件,或者是/var/log/message、/var/log/mysql/mysqld.log之类的),根据错误日志提示去找到问题原因,不要只看表面提示,例如找不到mysql.sock文件之类的。
mysql服务启动不了解决方案
启动mysql服务出现如下的错误信息(MySQL服务无法启动):
本地计算机无法启动mysql服务。
错误1067:进程意外终止。
解决方案:
运行
现将其删除重启安装一下
MySQL服务正在启动.
MySQL服务已经启动成功。
一、确认MYSQL已经配置且正确
重新配置
如果是重新安装的MYSQL,请确认安装后的MYSQL经过第一次配置,否则会缺少my.ini文件,配置方法,可以在安装到最后一步时选择,现在开始配置MYSQL,或在程序组中运行MYSQL配置向导。配置完成后,要确保my.ini文件中[mysqld]字段下至少有basedir安装目录路径和datadir数据库路径。
配置之前,如果原来已经有过MySQL配置,可以先在MYSQL向导中进行执行一次REMOVEINSTANCE,然后再重新配置。
覆盖数据表
默认的MYSQL数据库会安装到MyDocument下,所以如果您的数据库目录在其它路径下,可以先把MYSQL停止掉,然后把数据库剪切到其它路径,然后拷贝相关数据表进入同一目录即可。
如果MYSQL数据表使用不同的账户,还需要在MYSQL创建账户,或直接使用原来的MYSQL数据表覆盖(需确认之前的MSYQL数据表是未损坏的)。
解决无法启动
遇到无法启动MYSQL时常见解决方法:
A、先使用命令C:\\Programfiles\\mysql\\bin\\mysqladmin-uroot-pshutdown来关闭MYSQL
B、再在cmd命令行下,执行netstartmysql启动mysql。
二、1067错误常见解决方法
故障现象
如果在停止MYSQL(netstopmysql)或启动MYSQL时,出现1067错误,错误信息“MySql服务正在停止...系统出错(Asystemerrorhasoccurred.)...系统发生1067错误(Systemerror1067hasoccurred.),进程意外终止(Theprocessterminatedunexpectedly.)”等。
常见解决方法
如果以前一直运行OK的,请先按照上面的“无法启动”解决方法执行一次看看。
如果进行过RemoveInstance操作,再次重建时后,一定要检查my.ini文件中的datadir是否已被还原了,如果该地址下数据库不存在,也将报告1067错误,只需要修改成真实的数据库目录地址,然后手动启动即可。
检查MYSQL目录权限
检查my.ini文件中[mysqld]字段下是否有basedir安装目录路径和datadir数据库路径,my.ini可能需要出现在两个地方,MYSQL的安装目录和Windows目录(假设是windows环境)下,都要检查一下。
有时候删除%windir%/my.ini文件然后再重新配置也可以解决,再次配置后检查一下Windir目录下是否有my.ini文件,有时把安装目录下最新的my.ini拷贝过去覆盖一下也能解决问题。
如果是Linux环境,试一下把mysql.server拷贝至/etc/rc.d/init.d/下,然后再运行chkconfigmysql.server,之后就可以在命令行中设置PATH、使用命令执行mysql启动。
三、非法关机造成的MYSQL无法启动问题
如果是因为非法关机等原因导致MYSQL无法启动或启动有问题的,最好使用重新安装的或确认是OK的MYSQL数据表及ibdata1、mysql.pid、ib_logfile0等文件进行覆盖,天缘试过遇到过多次这种情况,就是原来的MYSQL表有问题了,总是无法启动,但是更换成新表就可以。
四、重装MYSQL
发现MYSQL有问题时,最便捷的方法,是先把mysql卸载掉,然后重装重新配置,具体方法如下:
1、卸载MYSQL,清理掉安装目录和Windows目录下的my.ini文件。
2、检查任务管理器中是否还有mysql进程,如果有,可以把mysqld.exe杀掉,或者先杀掉再卸载也可以。
3、在cmd命令窗口,执行:scdeletemysql,该命令是清理注册服务命令。
3.重装mysql
如果是安全设置以后出现这个问题,可能是因为mysql以低权限运行的时候因为密码策略等问题导致,大家看恶意将mysql的启动用户更下下密码,然后在服务项里设置下即可。
小编结语:
更多内容尽在课课家教育!