安装MYSLQ数据库异常cannot create windows service for mysql.error:0

本文详细介绍了在遇到MySQL服务无法启动时,如何通过多种方法进行排查和解决,包括使用命令行工具、服务管理工具、注册表清理以及卸载重装MySQL等步骤,确保问题得到妥善解决。

安装MYSLQ数据库,安装好运行MySQL Server Instance Config Wizard,在最后一步却发现无法启动服务,出现这样的提示“cannot create windows service for mysql.error:0”!

原因:错误的原因多数由于重新安装mysql或者对mydql升级,使用MySQL Configuration Wizard而产生。简单说就是你以前装过,没卸载干净,系统里有旧的mysql服务存在。

解决方法:

方法一:

在DOS窗口下用 sc delete mysql命令

方法二:

首先,在管理工具->服务里面将MySQL的服务给停止,然后打开cmd 进入你的MySQL bin目录下,例如 C:\Program Files\MySQL\MySQL Server 5.5\bin 然后使用如下命令mysqld-nt -remove 然后就会显示......success! 好了下面进入添加删除程序,找到MySQL选择卸载,记得选择remove。最后将MySQL目录删除,还有数据库的目录也删除。

方法三:

查看服务中有没有mysql,如果有将该服务停掉;

在控制面板中运行添加删除程序,将mysql卸载;

卸载后打开注册表,查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的键值,如果有相关mysql键值(mysql、mysqladmin)则删掉,即可;

重启,将mysql的安装残余目录删掉 (查看服务,此时服务中已没有mysql);

重新安装mysql.安装后先不要运行Server Instance Configuration wizard,重启后在开始菜单中运行该向导,即可。

方法四:

解决步骤:

1、开始-MySQL-MySQL Server 5.5-MySQL Server Instance Config Wizard-Next-Remove Instance。

2、进入添加删除程序,找到MySQL选择卸载,选择remove。

3、进入注册表。

3.1、查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的键值,如果有相关mysql键值(mysql、mysqladmin)则删掉,即可;

3.2、查看HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\下有mysql目录就要删除。

3.3、查看HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\下有mysql目录就要删除。

3.4、查看HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services下有没有关于Mysql键值,有删除,即可。

3.5、查看HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services下有没有关于Mysql键值,有删除,即可。

3.6、查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下有没有关于Mysql键值,有删除,即可。

4、删除C:\Documents and Settings\All Users\Application Data目录下的MySQL目录。

5、进入MySql安装目录,删除目录。

不需要重启电脑,直接重新安装即可。

注意:在重新安装MySql之前,最好是把数据库备份一下。(win7系统打开Dos窗口以管理员的身份打开)

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'mydb' at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:483) at com.mysql.jdbc.Util.handleNewInstance(Util.java:404) at com.mysql.jdbc.Util.getInstance(Util.java:387) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:939) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:871) at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1694) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1215) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2255) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2286) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2085) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:795) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44) at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:483) at com.mysql.jdbc.Util.handleNewInstance(Util.java:404) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:400) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:327) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:613) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:199) at JDBCtest.DBUtil.getConnection(DBUtil.java:18) at JDBCtest.CreateDatabaseDemo.main(CreateDatabaseDemo.java:12) Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException: Cannot invoke "java.sql.Connection.createStatement()" because "conn" is null at JDBCtest.CreateDatabaseDemo.main(CreateDatabaseDemo.java:20) Caused by: java.lang.NullPointerException: Cannot invoke "java.sql.Connection.createStatement()" because "conn" is null at JDBCtest.CreateDatabaseDemo.main(CreateDatabaseDemo.java:16)
最新发布
12-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值