如何解决本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止

启动mysql服务时出现该错误: 
本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止。

因为最近也碰到了这个问题,所以写博客记下

mysql版本:8.0.20(在官网下载的无需安装版,直接解压的)

系统:win10

第一步:(大前提:进入mysql安装目录下的bin目录运行!)删除你的服务(此处mysql对应你的服务名称,我的服务名就是mysql)

mysqld --remove mysql

 

第二步:将根目录下的data文件夹删除(如果有需要,请一定要转存sql文件且备份,因为这里面有你建的数据库!如果是小白第一次弄mysql则忽略)

(注意:如果在你的mysql的安装路径中没有配置文件,则自己手动创建一个,文件名为:my.ini,添加内容如下:


[mysqld]
port = 3306
#mysql安装目录
basedir =E:\mysql-8.0.20-winx64\mysql-8.0.20-winx64
#mysql数据存放目录
datadir =E:\mysql-8.0.20-winx64\mysql-8.0.20-winx64\data
#允许最大连接数
max_connections = 1024
#服务端默认使用字符集
character-set-server = utf8mb4
#默认存储引擎
default-storage-engine = INNODB
#服务唯一标识
server_id = 1
#是否启用慢查询
slow_query_log = 1
#指定慢查询日志文件的路径和名字
slow_query_log_file = slow.log
#SQL语句运行时间超过该值才会被记录
long_query_time = 10
#开启binlog日志
log-bin = mysql-bin
#sql模式
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#注意这里,mysql8默认密码验证插件改为了caching_sha2_password
#为了与之前的兼容,这里改回mysql_native_password
default_authentication_plugin = mysql_native_password
 
[mysql]
default-character-set = utf8mb4
 
[client]
port = 3306
default-character-set = utf8mb4

第三步:初始化(第一次执行的话,时间会久一些,执行结束后没有输出信息,查看bin的同级目录下会多出一个data文件夹,里面一堆文件)

mysqld --initialize-insecure

第四步:注册mysql服务(之前试过mysqld --install mysql --defaults-file=E:\mysql-8.0.20-winx64\mysql-8.0.20-winx64\my.ini  发现不好使,在mysqld后面加个.exe后发现好使了)

mysqld.exe --install mysql --defaults-file=E:\mysql-8.0.20-winx64\mysql-8.0.20-winx64\my.ini

(注:此处的mysql是你将要生成的服务名称,E:\mysql-8.0.20-winx64\mysql-8.0.20-winx64\my.ini要改成你自己的ini文件的位置)

第五步:启动服务

net start mysql

最后进行数据恢复就可以啦

这是完成后的

可能是因为我的bin目录下有mysqld.exe,所以第四步才有用吧

注:完成后尝试3次开启mysql服务,如果第三次还是同样的问题,那就换别的方法试试吧。

  • 75
    点赞
  • 227
    收藏
    觉得还不错? 一键收藏
  • 52
    评论
评论 52
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值