Windows 下 MySQL 8.X 的安装教程

所属分类: 数据库 / Mysql 阅读数: 180
收藏 0 赞 0 分享

之前一直使用的是MySQL5.7,但由于MySQL增加了一些新特性,所以选择了更新。

下载MySQL

进入MySQL官网下载地址,选择Windows (x86, 64-bit), ZIP Archive。

下载地址:https://dev.mysql.com/downloads/mysql/

可不用登录,直接跳过。下载过程也许有丢丢慢,耐心等待下。

下载完成后,直接解压到自己喜欢的位置即可。

卸载原有版本

如果之前有安装低版本的MySQL,需要先卸载之前的MySQL。如果没有安装过,可直接跳过该步骤。

管理员打开cmd,先 net stop mysql 停掉 mysql 服务,然后使用 mysqld remove MySQL 移除MySQL。

net stop mysql 
mysqld remove MySQL 

删除注册表信息,以免有时候无法正常安装新版本。以下有就删除,但我在操作时仅仅只有第一个存在。

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Application/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Application/MySQL

修改原有MySQL_HOME的环境变量指向新版本位置。

安装MySQL

在MySQL的解压目录里,新建data文件夹,并创建my.ini配置文件。

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\\tools\\MySQL\\mysql-8.0.18-winx64
# 设置mysql数据库的数据的存放目录
datadir=E:\\tools\\MySQL\\mysql-8.0.18-winx64\\data
# 允许最大连接数
max_connections=3000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
# 设置mysql客户端连接服务端时默认字符集
default-character-set=utf8

进入bin目录,执行mysqld --initialize --console,执行成功会输出临时密码。

mysqld --initialize --console

执行成功后会输出: A temporary password is generated for root@localhost: a4lcly4e8f-G
a4lcly4e8f-G就是临时密码

然后使用该密码就可以进行了,幸运的话,就可以正常进入MySQL。

登录报错

如果不幸地,在使用临时密码登录时报错,ERROR 1045 (28000):Access denied for user 'root'@'localhost' (using password: YES)。

遇到此问题,需要跳过密码校验。

先停掉MySQL服务:net stop mysql

在MySQL安装路径的bin目录,输入mysqld --console --skip-grant-tables --shared-memory,此时cmd窗口会被挂起,也就是看起来卡住一样,不用担心,这是正常现象。

然后再打开另一个窗口,同样是MySQL安装路径的bin目录,直接输入mysql,在执行use mysql。

使用flush privileges刷新权限,再alter user'root'@'localhost' IDENTIFIED BY '1234';更改密码。

保险起见,再次使用flush privileges刷新权限。

关闭窗口,使用刚刚的密码重新连接MySQL:mysql -u root -p,然后再输入密码。若显示服务未启动,需先启动MySQL服务,输入net start mysql。

# 关闭MySQL
net stop mysql

# 跳过权限校验
mysqld --console --skip-grant-tables --shared-memory

# 刷新权限
flush privileges

# --skip-grant-tables模式下连接MySQL
mysql

# 使用系统mysql库
use mysql

# 更改密码
alter user 'root'@'localhost' IDENTIFIED BY '1234';

# 刷新权限
flush privileges

# 连接MySQL,-u、-p后空格可省略,-p后可不输入密码,再回车后再键入密码,这样更安全
mysql -u root -p 1234

# 退出MySQL
\q
exit
quit

以上所述是小编给大家介绍的Windows 下 MySQL 8.X 的安装教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

更多精彩内容其他人还在看

MariaDB(MySQL)创建、删除、选择及数据类型使用详解

这篇文章主要介绍了MariaDB(MySQL)创建、删除、选择及数据类型使用详解的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql索引学习教程

在mysql 中,索引可以分为两种类型 hash索引和 btree索引。这篇文章主要介绍了mysql索引的相关知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

MySQL修改默认字符集编码的方法

这篇文章主要介绍了MySQL修改默认字符集编码的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL中实现插入或更新操作(类似Oracle的merge语句)

这篇文章主要介绍了在MySQL中实现插入或更新操作(类似Oracle的merge语句)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法

这篇文章主要介绍了mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

LNMP下使用命令行导出导入MySQL数据库的方法

这篇文章主要介绍了LNMP下使用命令行导出导入MySQL数据库的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySql中的IFNULL、NULLIF和ISNULL用法详解

在做项目中发现MySql里的isnull和mssql里的有点不同。接下来小编通过本文给大家介绍MySql中的IFNULL、NULLIF和ISNULL用法详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Mysql 5.7 服务下载安装图文教程(经典版)

MySQL 5.7在诸多方面都进行了大幅的改进,主要在于安全性、灵活性、易用性、可用性和性能等几个方面。这篇文章主要介绍了Mysql5.7服务下载安装图文教程(经典版),需要的朋友可以参考下
收藏 0 赞 0 分享

SQL重复记录查询 查询多个字段、多表查询、删除重复记录的方法

下面小编就为大家带来一篇SQL重复记录查询 查询多个字段、多表查询、删除重复记录的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

mysql socket文件作用详解

这篇文章主要介绍了mysql socket文件作用的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多