哈特中尉's Blog

不会写代码的司机不是好厨师!

windows10安装mysql8(zip)

安装环境说明
解压安装包
  • 解压路径:D:\develop\software
  • 解压后mysql根目录:D:\develop\software\mysql-8.0.13-winx64

原则: 安装目录不能有空格、不能有中文

配置文件
  • my.ini文件拷贝到mysql根目录,文件路径为:D:\develop\software\mysql-8.0.13-winx64\my.ini

  • my.ini内容如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8mb4
    [mysqld]
    # 设置3306端口
    port=3306
    # 设置mysql的安装目录
    basedir=D:\\software\\mysql-8.0.13-winx64
    # 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
    # datadir=D:\\software\\mysql-8.0.13-winx64\\data
    # 允许最大连接数
    max_connections=20
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8mb4
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB

    注意:不需要设置data目录,自动生成,否则报错!双斜杠!!!!!!

  • mysql5.7配置文件参考

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8mb4
    [mysqld]
    # 设置3306端口
    port=3306
    # 设置mysql的安装目录
    basedir=D:\\software\\mysql-5.7.30-winx64
    # 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
    datadir=D:\\software\\mysql-5.7.30-winx64\\data
    # 允许最大连接数
    max_connections=20000
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8mb4
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    初始化mysql
  • 进入D:\develop\software\mysql-8.0.13-winx64\bin

  • 执行 mysqld --initialize --console

注意:管理员权限运行cmd程序,否则可能报错

[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 3yMoxa?*nMrl
自动成临时密码:【3yMoxa?*nMrl】

E:\mysql-8.0.13-winx64\bin\mysqld.exe (mysqld 8.0.13) initializing of server has completed
初始化完成提示。

注册mysql服务
1
2
3
mysqld install  
或者(指定服务名称,一台机器同时安装两个mysql版本时,区分mysql5.7和mysql8)
mysqld install mysql8
启动mysql
1
net start mysql
登录mysql
1
mysql -uroot -p

注意:输入上面生成的临时密码 【3yMoxa?*nMrl】

修改密码并且修改密码策略
1
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

注意:mysql8新的密码策略,很多mysql客户端工具不支持,所以用原来的密码策略。

完成。