文章目录

  • 下载
  • 安装
  • 软件配置
  • 环境配置
  • 验证
  • 重启服务
  • 卸载
  • 番外记录 - 安装多个版本
  • 番外记录 - 5.x字符集配置
  • 番外记录 - binlog配置
  • 番外记录 - binlog时间设置
  • 1、MySQL 8.x
  • 2、MySQL 5.x
  • 番外记录 - 查看binlog
  • 查看指定binlog文件的内容


下载

安装

双击点开mysql-installer-community-8.0.27.1.msi

  1. 自定义安装
  2. 选择要安装的服务
  3. 点击 Advanced Options,设置程序安装路径数据存放路径
  4. 软件安装

软件配置

  1. 开始配置
  2. 服务器类型选择
  • 我自己是开发学习而已,给自己电脑装,就选开发模式,占用内存少
  • 如果专门做服务器使用,选择下面两种,占用内存多,视情况选择
  1. 学习而已,端口就默认 3306,如果生产环境,建议设置专用端口,安全
    强调:如果同一台机子装多个版本,此处端口Port需要设置不一样
  2. 密码策略设置:为了使用旧版本的navicat连接数据库,我选择的5.x加密策略
  • mysql_native_password(MySQL 5.7版本)
  • caching_sha2_password(MySQL 8.0版本)
  1. 设置root超管密码,新增dbadmin数据库管理员账号

datagripH离线安装mysql驱动文件 windows离线安装mysql_Server


10. 配置Windows服务

datagripH离线安装mysql驱动文件 windows离线安装mysql_mysql_02


11. Execute 校验所有配置是否通过

datagripH离线安装mysql驱动文件 windows离线安装mysql_Server_03


datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_04


12. 安装完成

datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_05


datagripH离线安装mysql驱动文件 windows离线安装mysql_Server_06


datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_07

环境配置

其实就是配置个环境变量而已:E:\Program Files\MySQL\MySQL Server 8.0\bin 配置、然后重启电脑

datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_08

验证

mysql -uroot -p 登进去看看呗,没毛病,干的漂亮

d:> mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.27 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.02 sec)

mysql> quit
Bye

-u:小写u,user,登录用户名

-p:小写p,password,登录密码

-P:大写P,port,指定访问端口,同一台机子安装不同版本(5.x | 8.x),可通过端口区分

-h:小写h,host,db服务器地址

datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_09

重启服务

  1. 方法一:命令行
E:> net stop MySQL80
MySQL80 服务正在停止.
MySQL80 服务已成功停止。

E:> net start MySQL80
MySQL80 服务正在启动 ..
MySQL80 服务已经启动成功。
  1. 方法二:服务图像化界面

卸载

  1. 先停止服务
  2. 卸载软件
    方法一:控制面板卸载

    方法二:再次打开*.msi,点击Remove…卸载
  3. 卸载是不会删除数据文件的,不要数据话,可以手动删除
  4. 删除环境变量

番外记录 - 安装多个版本

  1. 直接点击*.msi
  2. datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_10


  3. 点击Add…,然后重复上面步骤即可,端口 Port设置不一样就行

    多个版本特性,学习测试,岂不爽哉

番外记录 - 5.x字符集配置

MySQL5.x 默认字符集是 latin1,不识别汉字,需要改成utf8

# 查看编码命令
mysql> show variables like '%character%';

mysql> show variables like '%collation%';

datagripH离线安装mysql驱动文件 windows离线安装mysql_MySQL_11


修改mysql数据目录下my.ini配置文件

路径:E:\ProgramData\MySQL\MySQL Server 5.7\my.ini

[mysql] # 大概在63行,在其下面添加
……
default-character-set=utf8

[mysqld] # 大概在77行,在其下面添加
……
character-set-server=utf8
collation_server=utf8_general_ci

修改完保存,然后重启mysql57服务,大功告成

E:>net stop mysql57
MySQL57 服务正在停止.
MySQL57 服务已成功停止。

E:>net start mysql57
MySQL57 服务正在启动 .
MySQL57 服务已经启动成功。

番外记录 - binlog配置

以前还真没注意,Windows的mysql binlog文件命名居然是hostname,呀呀呸,改成mysql最好
捎带手把hostname全改成mysql

general_log_file="mysql.log" # 大概115行上下

slow_query_log_file="mysql-slow.log" # 大概115行上下

# Error Logging.
log-error="mysql.err" # 大概124行上下

# ***** Group Replication Related *****
# Specifies the base name to use for binary log files. With binary logging
# enabled, the server logs all statements that change data to the binary
# log, which is used for backup and replication.
# log-bin
log-bin="mysql-bin" # 大概131行上下,5.x没有,手动新增

重启服务,搞定

E:>net stop mysql57
MySQL57 服务正在停止.
MySQL57 服务已成功停止。

E:>net start mysql57
MySQL57 服务正在启动 .
MySQL57 服务已经启动成功。

datagripH离线安装mysql驱动文件 windows离线安装mysql_mysql_12

番外记录 - binlog时间设置

1、MySQL 8.x

MySQL 8.x使用binlog_expire_logs_seconds设置日志过期时间,默认过期时间是30天。
废弃参数:expire_logs_days

mysql> show variables like "%expire_logs%";

datagripH离线安装mysql驱动文件 windows离线安装mysql_mysql_13


设置过期时间为7天:

mysql> set global binlog_expire_logs_seconds=604800;

2、MySQL 5.x

MySQL 5.x 使用expire_logs_days设置日志过期时间,默认为0,binlog不过期。

mysql> show variables like "%expire_logs%";

datagripH离线安装mysql驱动文件 windows离线安装mysql_Server_14


设置过期时间为7天:

mysql> set global expire_logs_days=7;

番外记录 - 查看binlog

查看指定binlog文件的内容

mysql> show binlog events in 'mysql-bin.000001';