安装MySQL 5后无法启动(不能Start service)解决方法小结
程序员文章站
2023-12-19 21:16:52
安装的 mysql 5.1.48 或是 mysql 5.5.8,配置好最后点击 execute 按钮了,但是进行不到 start service 这一步。检查了下 mysq...
安装的 mysql 5.1.48 或是 mysql 5.5.8,配置好最后点击 execute 按钮了,但是进行不到 start service 这一步。检查了下 mysql 系统服务已添加,但是无法启动,手工也不行。这时候用事件查看器可以看到程序事件里有几个来自于 mysql 的错误:
plugin 'innodb' registration as a storage engine failed.
unknown/unsupported table type: innodb
原来是因为这两版本的 mysql 默认使用了支持事物的 innodb 引擎,打开 my.ini 文件,在 mysql 的安装文件夹, 如 c:program filesmysql 中,看到:
default-storage-engine=innodb
解决办法是把该设置改为
default-storage-engine=myisam
仍然使用 myisam 作为默认的数据库引擎,保存 my.ini 文件,然后手工启动 mysql 服务,成功;再把刚刚的配置窗口关掉就行了。
你完全可以在创建数据库时指定所创建数据库所用的数据库引擎,或创建表时所用的数据库引擎,或者创建后再更改都可以。
你可以再次回忆一下刚刚配置的过程:
安装的最后一个步骤,在点 finish 按钮时,可以选择 configure the mysql server now,或者是从开始菜单里直接运行 mysql 的 mysql server instance configuration wizard 来进行配置数据库,在选择 database usage 时有三个选项:
1) multifunctional database
2) transactional database only
3) no-transactional database only
默认是第一项,选第二项也会让数据库默认的引擎为 innodb,生成的 my.ini 文件里都会是 default-storage-engine=innodb。至于在 my.ini 中注释掉了 --skip-innodb 并不太会影响到数据库的启动,只是决定了数据库的事物特性。
那么在最后一步 processing configuration ... 里写完 my.ini 文件后,进行到 start service 就不动了,也就是启动不了 mysql 服务,在系统服务里已经加了 mysql 服务名。
如果你这一步选择的是第三项,不使用支持事件的数据库,那么在 my.ini 文件里就是 default-storage-engine=myisam,那么你也很幸运,能顺利配置成功,并启动好数据库。不过这将使你不能使用 innodb 引擎(error 1286 (42000): unknown table engine 'innodb'),其实也就是把 my.ini 中的 skip-innodb 给启用了,你可以把它再次注释掉试试事物。
作者 mywaylife
如果还是不能解决可以参考下面的方法:
安装mysql时无法启动服务(could not start the service )
1、建议使用360卸载已经安装的mysql数据库,因为360会查看相关的注册信息,卸载比较彻底。
2、检查3306端口是否已经占用,如果已经占有,杀死此进程。
3、查看服务列表中,是否还有mysql的服务进程。
4、要确保安装目录的访问权限是everyone,这里我建议不要把mysql安装的c盘中,因为xp有时候为了系统安全,会限制文件夹的访问权限。
5、建议安装在干净的文件夹里,如果安装在上次安装过的文件夹,建议删除文件夹下的所有文件。
mysql安全设置后导致mysql无法运行,建议重置运行mysql服务的登陆用户名密码,然后进服务里面重新输入刚修改的用户名与密码,这样就可以了
如果还是不可以,我们可以通过查看错误日志的方法解决:
mysql错误日志位于mysql安装目录下的扩展名为.err的文件,复制一份通过记事本等工具打开即开,如果err日志过大建议不要用记事本,可以用editplus打开
plugin 'innodb' registration as a storage engine failed.
unknown/unsupported table type: innodb
原来是因为这两版本的 mysql 默认使用了支持事物的 innodb 引擎,打开 my.ini 文件,在 mysql 的安装文件夹, 如 c:program filesmysql 中,看到:
default-storage-engine=innodb
解决办法是把该设置改为
default-storage-engine=myisam
仍然使用 myisam 作为默认的数据库引擎,保存 my.ini 文件,然后手工启动 mysql 服务,成功;再把刚刚的配置窗口关掉就行了。
你完全可以在创建数据库时指定所创建数据库所用的数据库引擎,或创建表时所用的数据库引擎,或者创建后再更改都可以。
你可以再次回忆一下刚刚配置的过程:
安装的最后一个步骤,在点 finish 按钮时,可以选择 configure the mysql server now,或者是从开始菜单里直接运行 mysql 的 mysql server instance configuration wizard 来进行配置数据库,在选择 database usage 时有三个选项:
1) multifunctional database
2) transactional database only
3) no-transactional database only
默认是第一项,选第二项也会让数据库默认的引擎为 innodb,生成的 my.ini 文件里都会是 default-storage-engine=innodb。至于在 my.ini 中注释掉了 --skip-innodb 并不太会影响到数据库的启动,只是决定了数据库的事物特性。
那么在最后一步 processing configuration ... 里写完 my.ini 文件后,进行到 start service 就不动了,也就是启动不了 mysql 服务,在系统服务里已经加了 mysql 服务名。
如果你这一步选择的是第三项,不使用支持事件的数据库,那么在 my.ini 文件里就是 default-storage-engine=myisam,那么你也很幸运,能顺利配置成功,并启动好数据库。不过这将使你不能使用 innodb 引擎(error 1286 (42000): unknown table engine 'innodb'),其实也就是把 my.ini 中的 skip-innodb 给启用了,你可以把它再次注释掉试试事物。
作者 mywaylife
如果还是不能解决可以参考下面的方法:
安装mysql时无法启动服务(could not start the service )
1、建议使用360卸载已经安装的mysql数据库,因为360会查看相关的注册信息,卸载比较彻底。
2、检查3306端口是否已经占用,如果已经占有,杀死此进程。
3、查看服务列表中,是否还有mysql的服务进程。
4、要确保安装目录的访问权限是everyone,这里我建议不要把mysql安装的c盘中,因为xp有时候为了系统安全,会限制文件夹的访问权限。
5、建议安装在干净的文件夹里,如果安装在上次安装过的文件夹,建议删除文件夹下的所有文件。
mysql安全设置后导致mysql无法运行,建议重置运行mysql服务的登陆用户名密码,然后进服务里面重新输入刚修改的用户名与密码,这样就可以了
如果还是不可以,我们可以通过查看错误日志的方法解决:
mysql错误日志位于mysql安装目录下的扩展名为.err的文件,复制一份通过记事本等工具打开即开,如果err日志过大建议不要用记事本,可以用editplus打开