文章目录
- 下载地址
- 选择GPL
- 选择server
- 选择8.5.2LTS长期服务版
- 配置
- 解压
- 配置环境变量
- 初始化
- 新建my.ini
- 配置root密码
- 安装mysql
- 启动mysql服务
- 使用mysql
- 登陆mysql
- 修改mysql密码
- 设置客户端可连接远程MySQL服务器
- 修改host为值为”%“ 执行语句: update user set host='%' where user='root';
- 其它辅助命令
- 其它故障分析
- ERROR 2003 (HY000)
- ERROR 1524 (HY000)
- 卸载mysql
下载地址
官网:https://www.mysql.com/
配置
control sysdm.cpl,,3
安装前运行微软常用运行库全集(也可能称为依赖)
https://download.csdn.net/download/xzzteach/89132457
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4[mysqld]
# 设置端口,不设置默认3306
port = 3306
# 设置mysql的安装目录
basedir=C:\\WF\\program\\mysql-8.4.2-winx64
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=C:\\WF\\program\\mysql-8.4.2-winx64 #8.0以下版本需要配置数据目录
# 允许最大连接数
max_connections=100
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# MySQL8.0默认的身份验证插件为caching_sha2_password,这将导致远程户端无法连接,可使用“mysql_native_password”插件认证解决客户端无法连接的问题,mysql_native_password再MySQL8.0中已过时,但任然可使用
# 从MySQL8.4开始,配置为 mysql_native_password=ON
mysql_native_password=ON
# default_authentication_plugin=mysql_native_password 此配置是在8.4以下的版本中的配置方法,8.4无此项
以管理员身份打开cmd窗口,执行下面命令,产生root密码,牢记此密码
mysqld --initialize --console
选中密码,右键会直接复制。
mysqld --install
net start mysql
使用mysql
mysql -uroot -pj9oPgjyDYO;l
遇到如下密码含特殊字符时,密码单独输入:
mysql -uroot -p
alter user 'root'@'localhost' identified by 'openEuler@2021';
用root账号登陆,切换至mysql库
mysql> use mysql;
Database changed
mysql>
查看host字段
- localhost 表示只能在本地访问
- % 远程任何主机可以访问root账户
mysql> select user,host from user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)mysql>
mysql> update user set host='%' where user='root';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0mysql>
再次查看
mysql> select user,host from user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)
再次使用远程客户端连接成功
其它辅助命令
关于MySQL8中相关参数配置,可通过mysqld --verbose --help
命令查看
其它故障分析
- 问题描述
远程连接时出现如下问题
C:\Users\admin>>mysql -h 192.168.31.17 -p in cmd at 16:02:32
Enter password: ********
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.31.17:3306' (10060)
-
原因分析
此问题可能原因如下:
防火墙开启,且未开放3306端口。
在my.ini或my.cnf中配置了bind-address = 127.0.0.1 -
处理方法
关闭防火墙或开放3306端口
可将bind-address配置注释掉或改为bind-address=主机的ip
- 问题描述
远程登录时,输入root用的密码后出现如下问题
C:\Users\admin>>mysql -h 192.168.31.22 -p in cmd at 16:11:41
Enter password: ******** # 这里输入正确的密码如下
ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded
-
原因分析
ERROR 1524 (HY000): Plugin ‘mysql_native_password’ is not loaded的错误,通常是因为MySQL 8默认使用caching_sha2_password插件,而不是mysql_native_password插件,导致的 -
处理方法
-
修改用户密码插件
如果你需要将一个用户的身份验证插件更改为mysql_native_password,可以使用如下命令:
alter user 'username'@'host' identified with mysql_native_password by 'new_password';
具体操作如下:
use mysql;
alter user 'root'@'localhost' identified with mysql_native_password by 'openEuler@2021';
flush privileges;
或
use mysql;
alter user 'root'@'%' identified with mysql_native_password by 'openEuler@2021';
flush privileges;
- my.ini或my.cnf中配置密码插件
将密码插件配置为mysql_native_password=ON
从MySQL8.4开始,配置为 mysql_native_password=ON
卸载mysql
https://blog.csdn.net/xzzteach/article/details/140582768