安装过程:
1.去官网下载mysql 8.0 解压版mysql
2.直接解压,解压路径为(F:\develop\mysql-8.0.16-winx64,可以自己决定,建议不要选择C盘),配置path路径(F:\develop\mysql-8.0.16-winx64\bin追加到path下)
3.cmd(超级管理员下)进入到mysql的bin目录下。
4.mysqld --initialize --console 生成data目录,console会显示root用户密码,记住这个初始密码,后面需要用到
5.mysqld --install,检查服务中是否出现了mysql,出现了表示安装完成,出现安装失败的,可能是因为不是超级管理员打开的cmd。
6.net start mysql,启动成功则成功,启动失败的话,看看my.ini文件,删除skip-grant-tables(8.0不允许直接跳过密码)
7.mysql -uroot -p,输入初始密码,登录
8.修改初始密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE NEVER;
退出重新登录。
附:
1.登陆的时候,容易出现
Access denied for user 'root'@'localhost' (using password: NO)
Access denied for user 'root'@'localhost' (using password: YES)
解决办法:
1.多尝试输入几次密码,密码错误的概率比较大,因为密码是初始化随机生成的,建议先在文本文件中打出来,直接复制到cmd中。
2.参考其他大部分解决方案都是在my.ini文件的[mysqld]下添加skip-grant-tables,添加这个将导致net start mysql无法启动mysql服务,使用命令行的方式
# 这里路径改为自己路径
mysqld --defaults-file="F:\develop\mysql-8.0.16-winx64\my.ini" --console --skip-grant-tables
使用这个命令的时候,步骤4初始化生成的data文件夹不要删除,然后重新输入mysql -uroot -p,输入密码登录(初始密码)进行登录,本人使用这个方式成功登录,但是也怀疑是密码或者命令输入错误,mysql -uroot -p多次输入成了mysql -u root -p
2.my.ini文件
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=F:\develop\mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=F:\develop\mysql-8.0.16-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8