Windows下MySQL解压版安装:

1. 安装目录下创建my.ini配置文件:

#代码开始

[Client]
#设置3306端口
port = 3306

[mysqld]
#设置3306端口
port = 3306

# 设置mysql的安装目录
basedir=E:\mysql-5.7.19-winx64\mysql-5.7.19-winx64

# 设置mysql数据库的数据的存放目录
datadir=E:\mysql-5.7.19-winx64\mysql-5.7.19-winx64\data

# 允许最大连接数
max_connections=1000

# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8

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

#skip-grant-tables

#如果想默认使用“mysql_native_password”插件认证,可以在配置文件中配置default_authentication_plugin项。

[mysqld]
default_authentication_plugin=mysql_native_password


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

#代码结束

2. 生成data文件夹:

有密码:  mysqld --initialize --user=mysql --console   6m>m0M#*.e_S

无密码:  mysqld --initialize-insecure

3. 安装服务:

mysqld -install

4. 设置、修改密码:

alter user 'root'@'localhost' identified by 'youpassword'; 

# 如果Navicat、jdbc连接报错,使用如下方式处理:
alter user 'root'@'localhost' identified with mysql_native_password by 'youpassword'; 

5. MySQL用户管理:

管理员root的host是localhost,代表仅限localhost登录访问。

如果要允许开放其他ip登录,则需要添加新的host。

如果要允许所有ip访问,可以直接修改成“%”

# 创建用户:

   create user 'xxh'@'%' identified with mysql_native_password by 'xxh123!@#';

# 检查用户 (需要注意:mysql8.0加密方式修改了)

   select user, host, plugin, authentication_string from user;

# 授权所有权限 授权远程数据库

   GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';

# 授权基本的查询修改权限,按需求设置

   GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';

# 查看用户权限

   show grants for 'xxh'@'%';

6. Navicat连接数据库MySQL报错2059

解释原因:据说,mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。

解决问题方法有两种:一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password。

第二种方式

命令行进入MySQL数据库,输入以下指令,逐行输入,每行后加一个回车

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则   
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码   
FLUSH PRIVILEGES; #刷新权限 

然后按理说应该是可以了,祝君好运。

7. 卸载mysql

卸载服务:

mysqld remove

在注册表里清除你的MYSQL服务:

点击开始→运行→输入regedit,然后有几个地方:

1. HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除

2. HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除

3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 目录删除