当前位置: 首页 > article >正文

MySQL安装及启用详细教程(Windows版)

MySQL安装及启用详细教程(Windows版)

📋 概述

本文档将详细介绍MySQL数据库在Windows系统下的下载、安装、配置和启用过程。


📥 MySQL下载

官方下载地址

  • 官方网站: https://dev.mysql.com/downloads/
  • 社区版本: https://dev.mysql.com/downloads/mysql/
  • 推荐版本: MySQL 8.0.x(最新稳定版)

版本选择建议

  • MySQL 8.0: 最新功能,性能最佳,推荐生产环境使用
  • MySQL 5.7: 成熟稳定,兼容性好,适合传统项目
  • MySQL 5.6: 较老版本,仅在特殊兼容性需求下使用

🪟 Windows系统安装

MSI安装包

1. 下载安装包
# 访问官网下载页面
https://dev.mysql.com/downloads/mysql/
# 选择:MySQL Installer for Windows
2. 安装步骤
  1. 运行安装程序

    • 双击mysql-installer-web-community-8.0.x.x.msi
    • 如果提示需要.NET Framework,请先安装
  2. 选择安装类型

    Developer Default    - 开发环境(推荐)
    Server only         - 仅服务器
    Client only         - 仅客户端
    Full               - 完整安装
    Custom             - 自定义安装
    

    我自己大概选了这些:

在这里插入图片描述

  1. 产品配置

    • MySQL Server配置
    • MySQL Workbench(图形化工具)
    • MySQL Shell(命令行工具)
    • 示例数据库
  2. 服务器配置

    Config Type: Development Computer
    Connectivity: TCP/IP, Port: 3306
    Authentication: Use Strong Password Encryption
    
  3. 设置root密码

    # 设置强密码(建议包含大小写字母、数字、特殊字符)
    # 例如:MyPass@123
    
  4. Windows服务配置

    ✅ Configure MySQL Server as a Windows Service
    ✅ Start the MySQL Server at System Startup
    Service Name: MySQL80
    

⚙️ MySQL配置详解

配置文件位置

# Windows MSI安装
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

重要配置参数

[mysqld]
# 基本设置
port=3306
basedir=C:\mysql-8.0.35
datadir=C:\mysql-8.0.35\data# 字符集设置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci# 连接设置
max_connections=200
max_connect_errors=100# 内存设置(根据电脑配置调整)
innodb_buffer_pool_size=512M
key_buffer_size=128M
sort_buffer_size=2M# 日志设置
log-error=error.log
slow_query_log=1
slow_query_log_file=slow.log
long_query_time=2# InnoDB设置
innodb_flush_log_at_trx_commit=1
innodb_lock_wait_timeout=50

🚀 服务启动与停止

图形界面方式

# 方法1:服务管理器
1. Win + R 输入 services.msc
2. 找到 "MySQL80" 服务
3. 右键选择启动/停止/重启# 方法2:任务管理器
1. Ctrl + Shift + Esc 打开任务管理器
2. 切换到"服务"选项卡
3. 找到MySQL80服务进行操作

命令行方式

# 启动MySQL服务
net start MySQL80# 停止MySQL服务
net stop MySQL80# 重启MySQL服务
net stop MySQL80 && net start MySQL80# 查看服务状态
sc query MySQL80

🔐 首次连接与配置

获取初始密码

# MSI安装:安装过程中设置的密码
# ZIP安装:查看初始化时控制台输出的临时密码
# 或在data目录下的.err文件中搜索"temporary password"

首次连接

# 使用设置的密码连接(MSI安装)
mysql -u root -p# 使用临时密码连接(ZIP安装)
mysql -u root -p
# 输入临时密码后,必须立即修改密码

修改root密码

-- 方法1:使用ALTER USER(MySQL 8.0推荐)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword@123';-- 方法2:使用SET PASSWORD
SET PASSWORD FOR 'root'@'localhost' = 'NewPassword@123';-- 刷新权限
FLUSH PRIVILEGES;

🔧 客户端工具介绍

命令行客户端

mysql命令
# 本地连接
mysql -u root -p# 指定数据库连接
mysql -u root -p database_name# 执行SQL文件
mysql -u root -p < script.sql# 常用参数
-u, --user        用户名
-p, --password    密码(回车后输入)
-D, --database    指定数据库
-e, --execute     执行SQL语句
mysqladmin工具
# 查看服务器状态
mysqladmin -u root -p status# 查看服务器变量
mysqladmin -u root -p variables# 创建数据库
mysqladmin -u root -p create database_name# 删除数据库
mysqladmin -u root -p drop database_name# 关闭服务器
mysqladmin -u root -p shutdown

图形化客户端

MySQL Workbench(官方推荐)
  • 下载地址: https://dev.mysql.com/downloads/workbench/
  • 特点: 官方工具,功能完整,免费
  • 功能: 数据库设计、SQL开发、服务器管理
Navicat for MySQL(商业)
  • 特点: 界面友好,功能强大
  • 功能: 数据同步、备份、报表生成
DBeaver(免费)
  • 下载地址: https://dbeaver.io/
  • 特点: 支持多种数据库,免费开源
  • 功能: SQL编辑、数据查看、ER图

🐛 常见问题与解决方案

安装问题

1. 安装失败
# 问题:提示需要Microsoft Visual C++ Redistributable
# 解决:下载安装最新版本的VC++运行库# 问题:端口3306被占用
# 解决:修改端口或停止占用服务
netstat -ano | findstr :3306
taskkill /PID <进程ID> /F
2. 服务无法启动
# 问题:MySQL服务启动失败
# 解决:检查配置文件和日志
# 查看错误日志:data目录下的.err文件
3. 防火墙问题
# Windows防火墙设置
1. 控制面板 -> 系统和安全 -> Windows Defender防火墙
2. 点击"允许应用或功能通过Windows Defender防火墙"
3. 找到MySQL相关程序,勾选允许

连接问题

1. 连接被拒绝
-- 检查用户权限
SELECT user, host FROM mysql.user;-- 创建新用户(如需要)
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';
FLUSH PRIVILEGES;
2. 密码认证问题
-- MySQL 8.0密码认证插件问题
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
3. 字符集问题
-- 查看字符集设置
SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation%';-- 设置数据库字符集
CREATE DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

性能问题

1. 服务启动慢
# 在my.ini中调整
[mysqld]
innodb_flush_log_at_trx_commit=2
2. 内存使用过高
# 调整内存相关参数
[mysqld]
innodb_buffer_pool_size=256M    # 根据可用内存调整
key_buffer_size=64M
sort_buffer_size=1M

📋 验证安装

基本连接测试

# 1. 连接MySQL
mysql -u root -p# 2. 查看版本信息
SELECT VERSION();# 3. 查看当前数据库
SELECT DATABASE();# 4. 显示所有数据库
SHOW DATABASES;# 5. 查看服务器状态
SHOW STATUS;# 6. 退出
EXIT;

创建测试数据库

-- 创建测试数据库
CREATE DATABASE test_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;-- 使用数据库
USE test_db;-- 创建测试表
CREATE TABLE test_table (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50) NOT NULL,email VARCHAR(100) UNIQUE,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);-- 插入测试数据
INSERT INTO test_table (name, email) VALUES 
('张三', 'zhangsan@example.com'),
('李四', 'lisi@example.com');-- 查询数据
SELECT * FROM test_table;-- 删除测试数据库
DROP DATABASE test_db;
http://www.lryc.cn/news/2396817.html

相关文章:

  • Vue3.5 企业级管理系统实战(二十一):菜单权限
  • kafka幂等生产者和事务生产者区别
  • 【HarmonyOS Next之旅】DevEco Studio使用指南(二十九) -> 开发云数据库
  • 批量导出CAD属性块信息生成到excel——CAD C#二次开发(插件实现)
  • 可视化大屏如何制作
  • Goreplay最新版本的安装和简单使用
  • Android Studio 解决报错 not support JCEF 记录
  • SMT高速贴片机核心技术深度剖析
  • sigmastar实现SD卡升级
  • kafka学习笔记(三、消费者Consumer使用教程——配置参数大全及性能调优)
  • yarn、pnpm、npm
  • JVM——Truffle:语言实现框架
  • C++ STL vector容器详解:从原理到实践
  • 视频压制(Video Encoding/Compression)
  • 【论文笔记】Transcoders Find Interpretable LLM Feature Circuits
  • 音视频融合中的语音分离技术实现
  • 每天总结一个html标签——a标签
  • 在Babylon.js中创建3D文字:简单而强大的方法
  • CSS 渐变完全指南:从基础概念到实战案例(线性渐变/径向渐变/重复渐变)
  • 初识Docker:容器化技术的入门指南
  • android binder(1)基本原理
  • 行业分析---小米汽车2025第一季度财报
  • 边缘计算网关支撑医院供暖系统高效运维的本地化计算与边缘决策
  • GO环境配置
  • `docker run`、`docker start`、`docker exec` 区别
  • 简单了解string类的特性及使用(C++)
  • FastAPI+Pyomo实现线性回归解决饮食问题
  • 16.FreeRTOS
  • Redis最佳实践——购物车优化详解
  • 【计算机网络】传输层UDP协议