MySQL安装及加固(ZIP压缩包)-windows

MySQL安装及加固(ZIP压缩包)-windows

下载

在MySQL官网下载安装:MySQL :: Download MySQL Community Server

安装

  1. 将压缩包解压到指定目录下。

  2. 在解压后的MySQL目录下,创建配置文件my.ini

    ini 复制代码
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8
    
    [mysqld]
    # 3306端口
    port = 3306
    
    # 设置mysql的安装目录
    basedir = D:\Program Files\mysql-5.7.44-winx64
     
    # 设置mysql数据库的数据的存放目录
    datadir = D:\Program Files\mysql-5.7.44-winx64\data
     
    # 允许最大连接数
    max_connections=200
     
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
     
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
     
    # 创建模式
    sql_mode='NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES'
    
    # InnoDB引擎相关配置
    innodb_buffer_pool_size = 128M    # InnoDB缓冲池大小,根据物理内存适当调整
    innodb_log_file_size = 50M        # InnoDB日志文件大小
    
    # 其他性能优化相关的配置
    max_connections = 100             # 最大并发连接数
    query_cache_size = 0              # 查询缓存大小(MySQL 8.0中已废弃查询缓存功能)
    tmp_table_size = 32M              # 临时表的最大大小
    thread_cache_size = 8             # 线程缓存大小
  3. 初始化MySQL。在MySQL的bin 目录下摁住shift,然后点击鼠标右键,选择在此处打开Powershell窗口(S),或者通过cmd命令行进入到MySQL的bin目录,执行下面的命令(根据自己所用窗口,选择一个执行):

    bat 复制代码
    #cmd窗口
    mysqld --initialize-insecure --user=mysql
    
    #Powershell窗口
    .\mysqld.exe --initialize-insecure --user=mysql
  4. 执行上面的初始化命令后,可以看到MySQL目录下新增了一个data目录:

  5. 安装MySQL为服务。此时需要以管理员打开cmd窗口,进入MySQL的bin目录,执行下面的命令

    bat 复制代码
    #cmd窗口
    mysqld install
  6. 此时查看windows的服务下,多了一个MySQL的服务

  7. 右键启动MySQL服务。启动后可用工具,使用root账户直接连接,上面的初始化时,root账户是没有密码的,需要马上设置密码。

等保二级加固

MySQL安装完成后,在某此场景下,要对其进行进行安全加固,修改my.ini,添加等保二级要求的加固措施,完整的my.ini如下:

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

[mysqld]
# 3306端口
port = 3306

# 设置mysql的安装目录
basedir = D:\Program Files\mysql-5.7.44-winx64
 
# 设置mysql数据库的数据的存放目录
datadir = D:\Program Files\mysql-5.7.44-winx64\data
 
# 允许最大连接数
max_connections=200
 
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
 
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 
# 创建模式
sql_mode='NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES'

# InnoDB引擎相关配置
innodb_buffer_pool_size = 128M    # InnoDB缓冲池大小,根据物理内存适当调整
innodb_log_file_size = 50M        # InnoDB日志文件大小

# 其他性能优化相关的配置
max_connections = 100             # 最大并发连接数
query_cache_size = 0              # 查询缓存大小(MySQL 8.0中已废弃查询缓存功能)
tmp_table_size = 32M              # 临时表的最大大小
thread_cache_size = 8             # 线程缓存大小

# 等保二级加固配置
# 密码策略插件
plugin-load-add=validate_password.dll
validate-password=FORCE_PLUS_PERMANENT
## 密码最小8位长度
validate_password_length=8
## 密码至少要包含1个大小写字母
validate_password_mixed_case_count=1
## 密码至少要包含1个数字
validate_password_number_count=1
## 密码强度检查等级 1/MEDIUM
validate_password_policy=1

# 登录失败处理插件
plugin-load-add=connection_control.dll
connection-control=FORCE_PLUS_PERMANENT
connection-control-failed-login-attempts=FORCE_PLUS_PERMANENT
connection_control_failed_connections_threshold=5
connection_control_min_connection_delay=108000

## 超时30分钟,默认是8小时
wait_timeout=1800
interactive_timeout=1800

## 此项配置后对所有用户有效,慎用!要求是密码过期不得超过90天
default_password_lifetime=90
相关推荐
广州灵眸科技有限公司36 分钟前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
Cloud云卷云舒3 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
憧憬成为web高手3 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学3 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh5 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
用户71333585156246 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
z123456789866 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD6 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
java_logo7 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
王维同学7 小时前
[原创][Windows C++]LSA 认证、安全与通知包的注册表枚举
c++·windows·安全