mysql8.x 安装全流程

一、安装

1:首先去官网下载安装包

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

2:将解压文件解压

将文件解压到磁盘,目录不要中文,防止乱码

3:创建mysql配置文件

在mysql-8.0.17-winx64文件夹下面新建一个my.ini文件和一个data文件夹
例如:F:\develop\mysql-8.0.17-winx64\my.ini
my.ini文件内容:

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

4.配置环境变量

1)新增MYSQL_HOME环境变量
例如:MYSQL_HOME=F:\develop\mysql-8.0.17-winx64
2) 在path中添加%MYSQL_HOME%\bin

在dos窗口执行 mysqld --version 正常显示版本号为配置成功

5.初始化mysql数据库

  1. dos窗口执行:mysqld --initialize --user=mysql --console
    初始化成功会有root的初始密码,后续初始化登录需要用到;--密码前面有个空格,注意忽略
    root用户的初始化密码
  2. 安装mysql到系统服务
    安装服务:mysqld install
    启动服务:net start mysql
F:\develop\mysql-8.0.17-winx64\bin>mysqld install
Service successfully installed.

F:\develop\mysql-8.0.17-winx64\bin>
F:\develop\mysql-8.0.17-winx64\bin>net start mysql
MySQL 服务正在启动 ..
MySQL 服务已经启动成功。

二、登录和使用

1.登录mysql,并修改root用户密码

  1. dos窗口登录:mysql -uroot -p默认密码
  2. 修改root用户密码策略:ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘admin123’;

mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,升级navicat驱动,或修改mysql用户登录密码加密规则为mysql_native_password.

  • 不修改可能导致dos正常登录,工具登录不了,错误号:1251
  1. 修改root用户密码: ALTER USER root@localhost IDENTIFIED BY ‘admin123’ PASSWORD EXPIRE NEVER;
  2. 刷新权限:FLUSH PRIVILEGES;
F:\develop\mysql-8.0.17-winx64\bin>mysql -u root -p
Enter password: ************
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.17

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER root@localhost IDENTIFIED  BY 'admin123';
Query OK, 0 rows affected (0.05 sec)

mysql>

2.允许其他机器访问数据

查看权限:SELECT Host,User FROM user;
更新权限:UPDATE user SET Host = ‘%’ WHERE User = ‘root’ LIMIT 1;
刷新权限:FLUSH PRIVILEGES;

三、其他

1. 忘记root密码重置

  1. 先关掉已启动的mysql服务,管理员权限的cmd下,命令:net stop mysql
  2. 启动不校验密码的mysql服务,命令:mysqld --console --skip-grant-tables --shared-memory
  3. 重新开1个cmd窗口,输入:mysql -u root -p,回车,默认进入mysql命令行
  4. 修改root用户密码: ALTER USER root@localhost IDENTIFIED BY ‘admin123’ PASSWORD EXPIRE NEVER;
  5. 刷新权限:FLUSH PRIVILEGES;

2.mysql创建用户

CREATE USER ‘chengDB’@’%‘IDENTIFIED BY ‘chengPwd’;
GRANT ALLON . TO ‘chengDB’@’%’ WITH GRANT OPTION;
Flush privileges;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章