TL;NRs 初始化服务时最好使用Mysqld --initialized --console命令; mysql8.0的配置变量与Mysql5.7不同,[mysqld]下面设置字符集的变量名为character_set_server;
Mysqld --initialized --console
命令;[mysqld]
下面设置字符集的变量名为character_set_server
;alter user "root"@"localhost"identified by "密码";
之前装5.7没有什么问题,结果装8.0的时候一直无法启动服务。
由于之前是采用mysqld --initialized -insecure
命令初始化,因此一头雾水。在改为mysqld --initialized --console
命令后,发现出现了很多报错的信息:
红线上面这句是核心,意思是不知道你这个default-character-set
变量是什么。然后对症下药,经过搜索发现MySQL8.0的配置变量与MySQL5.7不同,[mysqld]
下面设置字符集的变量名为character_set_server
而非default_character_set
([mysql]
下依然为default_character_set
)。
下面那句话的意思是创建的data
文件夹已经没用了,可以删除(重新初始化的时候必须把旧的data
文件夹删除)。所以看上去是3个error,其实是一个error。
在修改过后,MySQL就可以正常启动了。由于使用mysqld --initialized --console
命令,会生出一个随机密码,使用随机密码登录后,需要使用alter user "root"@"localhost"identified by "密码";
命令修改密码,否则无法使用MySQL。
在修改过密码后,就可以正常使用了。
mysqld --initialized -insecure
:初始化MySQL,并且默认密码为空;mysqld --initialized --console
:初始化MySQL;mysqld --install
:安装MySQL服务;mysqld -remove
:删除MySQL服务;mysql -u 用户名 -p
:登录MySQL;alter user "root"@"localhost"identified by "密码";
:修改管理员用户的密码;最后,附上配置文件my.ini
:
# CLIENT SECTioN
[mysql]
default_character_set=utf8
[client]
port=3306
# SERVER SECTION
[mysqld]
port=3306
basedir="D:mysql"
datadir="D:mysqldata"
character_set_server=utf8
default-storage-engine=INNODB
原文地址:https://www.cnblogs.com/CounterX/arcHive/2022/04/17/16156455.html
--结束END--
本文标题: MySQL8.0解决“MySQL 服务无法启动。 服务没有报告任何错误。”
本文链接: https://www.lsjlt.com/news/9266.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
2024-05-03
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0