赞
踩
启动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服务,如果第三次还是同样的问题,那就换别的方法试试吧。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。