mysql启动不了服务启动不了该怎么办

mysql启动不了服务启动不了该怎么办,第1张

一、确认MYSQL已经配置且正确

重新配置

如果是重新安装的MYSQL,请确认安装后的MYSQL经过第一次配置,否则会缺少my.ini文件,配置方法,可以在安装到最后一步时选择,现在开始配置MYSQL,或在程序组中运行MYSQL配置向导。配置完成后,要确保my.ini文件中[mysqld]字段下至少有basedir安装目录路径和datadir数据库路径。

配置之前,如果原来已经有过MySQL配置,可以先在MYSQL向导中进行执行一次REMOVE INSTANCE,然后再重新配置。

覆盖数据表

默认的MYSQL数据库会安装到My Document下,所以如果您的数据库目录在其它路径下,可以先把MYSQL停止掉,然后把数据库剪切到其它路径,然后拷贝相关数据表进入同一目录即可。

如果MYSQL数据表使用不同的账户,还需要在MYSQL创建账户,或直接使用原来的MYSQL数据表覆盖(需确认之前的MSYQL数据表是未损坏的)。

解决无法启动

遇到无法启动MYSQL时常见解决方法:

A、先使用命令C:\Program files\mysql\bin\mysqladmin-u root -p shutdown来关闭MYSQL

B、再在cmd命令行下,执行net start mysql启动mysql。

二、1067错误常见解决方法

故障现象

如果在停止MYSQL(net stop mysql)或启动MYSQL时,出现1067错误,错误信息“MySql 服务正在停止...系统出错(A system error has occurred.)...系统发生 1067 错误(System error 1067 has occurred.),进程意外终止(The process terminated unexpectedly.)”等。

常见解决方法

如果以前一直运行OK的,请先按照上面的“无法启动”解决方法执行一次看看。

如果进行过Remove Instance *** 作,再次重建时后,一定要检查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/下,然后再运行chkconfig mysql.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命令窗口,执行:sc delete mysql,该命令是清理注册服务命令。

3. 重装 mysql

如果是安全设置以后出现这个问题,可能是因为mysql以低权限运行的时候因为密码策略等问题导致,大家看恶意将mysql的启动用户更下下密码,然后在服务项里设置下即可。

mysql,碰到了一个mysql stop fail的问题,在这里把碰到的问题以及解决的过程写出来,不是这个问题有多难,而是我在解决此问题的过程中没有发现一个行之有效的解决问题的中文网页,搞得白白浪费了很多时间。在这里我把解决的过程写下来,希望给后来者解决相同的问题节省点时间。好了,废话不多说,开始进入正题。

我的 *** 作系统环境是ubuntu 14.04,64位,安装mysql过程如下:

由于更改了mysql的配置文件,需要重启一下mysql,我通过下面两个命令来stop mysql:

当然也试过网上所说的service mysql stop,然后并没有卵用。在搜索了多次以后,最后在一个英文的论坛中找到的解决方法。在该问题的版面也有很多的回答者给出了“方法”,只有一位给出的方法解决了我的问题。

该问题的解决过程是这样子的:

1、以root权限登陆mysql,执行如下的sql语句:

select User from mysql.user

看看在mysql数据库下的user表中是不是存在一个名为:debian-sys-maint的用户,执行上面的sql语句在我的机器上返回的结果如下图所示:

如果在你的查询返回的结果集中不存在用户debian-sys-maint,那么你需要执行第二个步骤,如果有debian-sys-maint用户,那么你需要执行第三个步骤。

2、执行sql语句:CREATE USER 'debian-sys-maint‘@'localhost' identified by 'password'

我简单解释一下该sql语句:创建一个名为debian-sys-maint的用户,password为该用户使用mysql的密码,那么password字段的值我们如何指定呢?是任意指定吗?不是,password字段的值得需要与文件/etc/mysql/debian.cnf中的debian-sys-maint的密码保持一致,在我的机器上/etc/mysql/debian.cnf文件的内容如下:

3、如果执行了第二步了,那么你就可以成功stop mysql,不需要执行第三步了。第三步的过程如下:

首先执行如下的sql语句,查看debian-sys-maint所在行的password字段的值与/etc/mysql/debian.cnf中的debian-sys-maint所对应的password是否相同,由于在mysql中密码是被加密存储的,所以我们根本无法比较两个密码,由于我们需要的是两处的密码保持一致,所以执行下面的sql语句:

update user set password=PASSWORD("password from /etc/mysql/debian.cnf") where User='debian-sys-maint'

此处password from /etc/mysql/debian.cnf为在/etc/mysql/debian.cnf文件中debian-sys-maint所对应的密码,大家千万别搞错了。

这样就可以成功stop mysql了。

多说一句,大家平时解决问题还是多采用英文,中文的东西鱼龙混杂,很多噪音,不仅不能帮你解决问题,还把带到沟里,白白浪费时间。

好了,还是最后标志性的那句话:我所说的都是错的,当然也包括这一句。

在本地计算机无法启动MYSQL服务错误1067进程意外终止 这种情况一般是my.ini文件配置出错了,

你可以删除系统目录下的my.ini文件,

把下面的内容重新写入my.ini文件试试,

要适当地改写一下文件路径

我的my.ini 2007年12月31日

[WinMySQLAdmin]

Server=C:/MYSQL/mysql/bin/mysqld-opt.exe

user=root

[mysqld]

basedir=C:/MYSQL/mysql

datadir=C:/MYSQL/mysql/data

#bind-address=192.168.0.2

#language=D:/MYSQL/share/chinese

===========================================

[WinMySQLAdmin]

Server=D:/MYSQL/bin/mysqld-opt.exe

user=root

[mysqld]

basedir=D:/MYSQL

datadir=D:/MYSQL/data

#bind-address=192.168.0.2

#language=D:/MYSQL/share/chinese

============================================

查找Windows目录下的my.ini文件,编辑内容(如果没有该文件,则新建一个),至少包含basedir,datadir这两个基本的配置。

[mysqld]

# set basedir to installation path, e.g., c:/mysql

# 设置为MYSQL的安装目录

basedir=D:/www/WebServer/MySQL

# set datadir to location of data directory,

# e.g., c:/mysql/data

# 设置为MYSQL的数据目录

datadir=D:/www/WebServer/MySQL/data

另外,要注意:

[WinMySQLadmin]

Server=D:/www/WebServer/MySQL/bin/mysqld-nt.exe

user=root

password=xxxxxxxx

#以上是设置WinMySQLadmin的配置

[Client]

user=root

password=xxxxxxxx

将Mysql添加到Windows系统服务中:

1.、 安装服务。

在Windows2000下,安装完成后,并没有把MySQL安装成服务,我们必须执行下面的语句把MySQL注册为服务:installdir\mysql\bin\mysqld-nt –-install。

Windows98下没有服务的概念,所以不用安装服务。

2.、 启动服务

在Windows2000下,安装服务后可以启动MySQL服务:net start mysql。

在Windows98下,可以用下面的命令启动服务:c:\mysql\bin\mysqld,服务启动后在后台运行,并没有界面。

3.、 停止服务

在Windows2000下,可以通过下面的命令停止MySQL服务:net stop mysql。

在Windows98下,可以通过下面命令停止服务:C:\>C:\mysql\bin\mysqladmin -u root shutdown


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8657666.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存