MySQL - 8.0.16-8.4 - winx64 安装教程

本文详细介绍了 MySQL 8.0 的安装步骤,包括下载解压、自制配置文件、初始化、安装启动服务、登录数据库及修改默认密码。同时针对安装和使用过程中可能遇到的身份认证、登录报错、连接失败等问题,给出了相应的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.下载并解压缩

解压缩 mysql-8.0.16-winx64.zip

我的目录是

D:\Program Files\mysql-8.0.16-winx64

2.自制一个配置文件

在解压的根目录内创建一个文本文件,命名为:my.ini

内容如下:

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

[mysqld]
#选项可以禁用dns解析,但是,这样不能在mysql的授权表中使用主机名了,只能使用IP(用于解决2013错误)
skip-name-resolve 

# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4

#设置3306端口
port = 3306 

# 设置mysql的安装目录
basedir=D:\\Program Files\\mysql-winx64

# 设置mysql数据库的数据的存放目录
datadir=D:\\Program Files\\mysql-winx64\\data

#设置协议认证方式(更改默认加密方式) 版本<8.4可用该配置
#default_authentication_plugin=mysql_native_password

#8.4版本
mysql_native_password=ON

# 允许最大连接数
max_connections=200

# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

#设置缓存池(提升性能)
innodb_buffer_pool_size=4G

#binlog日志留存天数(非主从可保留较少天数)版本<8.4可用该配置
#expire_logs_days = 1

 注意:

默认的密码加密方式是:caching_sha2_password,而目前许多数据库管理软件还不支持这种加密认证方式,连接测试的时候就会报错:client does not support  authentication protocol requested by server; consider upgrading MySQL client,这里的错误信息就是不支持身份认证方式。

解决方案:在my.ini里面在 [mysqld] 节点下添加:

default_authentication_plugin=mysql_native_password

3.运行命令:初始化

初始化命令: mysqld --initialize --console

输入该命令后,mysql根目录会自动生成一个data文件夹,并在控制台中显示如下内容:

在第四行末尾位置会有一个随即生成的默认密码,这里需要记录下来。

如果没有记住或者意外关闭了,就删除data文件夹,重新执行该命令即可。

4.安装并启动服务

安装命令:mysqld install mysql

启动服务:net start mysql

5.登录数据库

登录命令:mysql -uroot -p

一、可能会遇到 Access denied for user 'ODBC'@'localhost' (using password: YES)之类的问题

解决方案:

1.服务没开;

2.保证一定是先执行初始化命令再安装启动,否则密码是不生效的

3.密码输入错误;(注:系统随机生成的密码前面的空格不算)

 二、可能会出现报错:Host '127.0.0.1' is not allowed to connect to this MySQL server

解决方案:

则将my.ini文件中 skip-name-resolve 注释掉即可(配置注释中有说明)

6.修改默认密码

通过输入生成的随即的密码以登录进数据库后,修改密码:

ALTER USER root@localhost IDENTIFIED  BY '123456';

一、可能遇到Navcat 无法连接的情况: Authentication plugin 'caching_sha2_password' cannot be loaded.

MySQL8 之前的版本中加密规则是mysql_native_password,而在MySQL8之后,加密规则是caching_sha2_password,解决问题方法有两种:

        一种是升级navicat驱动;

        二是把mysql用户登录密码加密规则还原成mysql_native_password

#修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

#更新一下用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; 

#再次修改密码,以使用新策略
ALTER USER root@localhost IDENTIFIED  BY '123456';

#刷新权限
FLUSH PRIVILEGES; 

到这里基本就可以正常使用Mysql8.0了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值