Windows安装MySQL5.7解压版
1. 解压后根目录添加配置文件my.ini
[client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] character-set-server=utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' port = 3306 # mysql安装目录 basedir="D:/MySQL5.7.28" # mysql数据库的数据的存放目录 datadir="D:/MySQL5.7.28/data" # mysql默认引擎 default-storage-engine=INNODB
2. 管理员模式cmd,进入mysql的bin目录,初始化data目录
mysqld --initialize
tip:如果初始化错误,比如下图:
一般是VC++环境缺少组件导致的,到 https://github.com/abbodi1406/vcredist/releases/download/v0.29.0/VisualCppRedist_AIO_x86_x64_29.zip 这个地址下载zip包打开安装,之后再执行初始化命令即可
3.找到临时root初始密码
初始化之后会在 data目录生成一个 电脑主机名.err文件,如 DESKTOP-CGCA51R.err,用记事本打开这个文件,搜索关键词:A temporary password
定位到初始密码所在的行,如下图
此时root临时密码为:c&Fqqey&c85o
4.将mysql注册成windows服务
①管理员模式打开cmd,进入mysql的bin目录
②如果之前注册过服务或者装过mysql,则先卸载服务
mysqld --remove
③如果第一次安装,那直接注册服务
mysqld --install
④启动mysql
net start mysql
5.使用root临时密码登录mysql
mysql -u root -p
必须手动输入临时密码,登录mysql。(你会发现如果此时用明文密码形式,mysql -u root -pc&Fqqey&c85o,怎么都无法登录成功,因为临时密码必须手动输入)
登录后,由于此时这个是临时账户,所以无法做其他操作,比如use数据库都不行,会出现如下提示
翻译过来就是 “你必须使用 ALTER USER 语句之后,才可以执行其他语句”,因此必须修改root密码
6.修改root密码并刷新权限
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码'; FLUSH PRIVILEGES;
7.退出临时root密码登录
exit
此时就已经安装结束了,且也修改了root密码
8.用修改后的root密码正常登录
mysql -u root -p
9.可能出现的问题:
①:mysql命令不存在,需要将mysql的bin 目录放入path环境变量
②:依旧无法登陆,可能是plugin字段(密码认证插件)不是mysql_native_password,而是auth_socket或其他验证方式,需要改成mysql_native_password
USE mysql
UPDATE user SET plugin = 'mysql_native_password' WHERE user = 'root'; FLUSH PRIVILEGES;