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

article/2025/6/25 11:01:47

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.hkcw.cn/article/vsiUBykbme.shtml

相关文章

vscode中的markdown表格列宽

vscode中的markdown表格列宽 当然&#xff0c;这个问题在csdn中应该是没有的&#xff0c;csdn是自适应文档页面的。这个自适应在vscode中好像不太好实现&#xff0c;至少目前我没能实现。 表格生成如上图&#xff0c;缩在一起&#xff0c;当然也会随着表格中录入数据自适应…

CangjieMagic 智能体框架嵌入式系统实测:以树莓派 4B 为例

目录 引言 CangjieMagic 对嵌入式开发板的要求 编译环境准备 本地编译 交叉编译 实战测试 程序编写 对cjpm.toml文件的修改 运行结果 结束语 引言 在人工智能与物联网技术飞速发展的今天&#xff0c;嵌入式系统作为连接物理世界与数字世界的桥梁&#xff0c;承担着越…

数值与字典解决方案二十七讲:两列数据相互去掉重复值后合并

《VBA数组与字典方案》教程&#xff08;10144533&#xff09;是我推出的第三套教程&#xff0c;目前已经是第二版修订了。这套教程定位于中级&#xff0c;字典是VBA的精华&#xff0c;我要求学员必学。7.1.3.9教程和手册掌握后&#xff0c;可以解决大多数工作中遇到的实际问题。…

林夏薇否认破产传闻,已发律师声明回应 正交律师处理

近期,TVB“视后”林夏薇被一家公司向香港高等法院申请破产。根据司法机构资料,案件延期至8月26日下午在高等法院提讯。对于破产一事,林夏薇回应称:“我丈夫Jason租住房子的公司有官司,正在上诉中,所以我莫名其妙,现在已交给律师处理,我也没有收到任何通知。”5月30日,…

下次放假安排已定可连休8天 国庆中秋合并假期

今天是端午节假期的最后一天,许多人已经开始期待下一次休假。根据国务院办公厅发布的2025年部分节假日安排通知,下一个长假将在四个月后的国庆节和中秋节期间。届时,国庆节与中秋节将合并放假,共8天。责任编辑:zx0176

24岁台大学霸暗网全球贩毒,3年海1亿多美元

24岁台大学霸暗网全球贩毒,3年海1亿多美元!据台媒报道,近日,美国联邦调查局(FBI)破获暗网毒品交易平台“隐身市场”,而该平台经营者“法老”的真实身份竟是24岁台湾大学资管系学生林睿庠。林睿庠因贩毒资产暴增,3年多其不法所得超过1亿美元(约7.2亿元人民币)。据悉,…

孙连城扮演者直播带货望远镜 从“宇宙区长”到带货主播

5月31日晚,曾在热播电视剧《人民的名义》中饰演“懒政区长孙连城”的演员李威,在短视频平台上开启直播带货,所售商品为天文望远镜。近一周内,李威已进行了三场关于望远镜的直播带货。6月1日上午,李威此前发布的带货直播预告视频疑似已被隐藏或删除,其商品橱窗中的天文望远…

互联网女皇340页AI报告猛料刷屏:AI增速创纪录

当地时间5月30日,玛丽米克尔发布了长达340页的“AI趋势报告”。报告指出,AI的发展速度前所未见,用户增长、使用量和资本支出均呈现出爆炸式增长,其影响力可能远超技术本身。玛丽米克尔是美国风险投资家,曾就职于摩根士丹利和凯鹏华盈,于2018年创立了自己的风投公司邦德资…

为何说中国“车圈恒大论”是误读 主流车企财务稳健

端午前夕,“车圈恒大论”再次成为业内焦点。5月30日,比亚迪集团品牌及公关处总经理李云飞通过社交媒体发布长文,首次正面回应被暗指为“汽车圈恒大”的流言,直言感觉好气又好笑,并列出财报数据逐一反驳,指出中国主流车企根本不存在所谓的“车圈恒大”。事情起源于前不久的…

关于免费版MQTT.fx 1.7.1下载与安装(附带下载链接)

MQTT.fx目前官网已经更新到5.x的版本&#xff0c;该版本需要付费使用&#xff0c;作为学习使用的话还是建议用免费的1.7.1版本&#xff0c;但是官网已经没有这个版本的安装包了&#xff0c;以下链接是我在网上找到的资料&#xff0c;该仓库仅用于学习交流&#xff0c;请勿用于商…

海外tk抓包简单暴力方式

将地址替换下面代码就可以 function hook_dlopen(module_name, fun) {var android_dlopen_ext Module.findExportByName(null, "android_dlopen_ext");if (android_dlopen_ext) {Interceptor.attach(android_dlopen_ext, {onEnter: function (args) {var pathptr …

编译原理实验 之 TINY 之 语义分析(第二次作业)

文章目录 本实验是接着前面的两个实验的基础上进行完善的&#xff0c;所以对于前面的实验如何操作&#xff1f;请看我的另外两个博客~ 编译原理 之 实验一 编译原理实验 之 Tiny C语言编译程序实验 语法分析 首先明确一下这次实验的任务&#xff1f; 主要目的&#xff1a;实现…

数组与元组:TypeScript 的基础

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 &#x1f35a; 蓝桥云课签约作者、…

Transformer核心技术深度解析:多头注意力机制与架构精粹

一、多头注意力&#xff1a;模型理解的「多棱镜」 核心思想&#xff1a;并行化特征空间探索 传统注意力的局限&#xff1a;单一注意力机制如同单眼观察世界&#xff0c;只能捕捉单一维度的关联 多头机制的本质&#xff1a;为模型配备多组「认知透镜」&#xff0c;同时从不同子…

【C语言入门级教学】assert断⾔和指针的使用

文章目录 1.assert断⾔2.指针的使⽤和传址调⽤2.1 strlen的模拟实现2.2 传值调⽤和传址调⽤ 1.assert断⾔ assert.h 头⽂件定义了宏 assert() &#xff0c;⽤于在运⾏时确保程序符合指定条件&#xff0c;如果不符合&#xff0c;就报错终⽌运⾏。这个宏常常被称为“断⾔”。 a…

拓扑排序 + 深度优先搜索解决问题

如大家所知&#xff0c;使用深度优先搜索实现拓扑排序的总体思想是&#xff1a;对于一个特定节点&#xff0c;如果该节点的所有相邻节点都已经搜索完成&#xff0c;则该节点也会变成已经搜索完成的节点&#xff0c;在拓扑排序中&#xff0c;该节点位于其所有相邻节点的前面。一…

cnn训练并用grad-cam可视化

使用大米图片训练集&#xff0c;包含五个文件&#xff0c;分别是5种品牌的大米&#xff0c;使用cnn进行分类训练。 -Arborio/ &#xff1a;代表 Arborio 品种的大米图像数据&#xff0c;根据 Rice_Citation_Request.txt 文件可知&#xff0c;该数据集中包含 Arborio 品种的大米…

放弃 tsc+nodemon 使用 tsx 构建Node 环境下 TypeScript + ESM 开发环境搭建指南

放弃 tscnodemon 使用 tsx 构建Node 环境下 TypeScript ESM 开发环境搭建指南 目标 在 node 环境下构建 typescript esmodule模块 开发环境&#xff0c;这样可以使用 typescript 提供的类型安全和类型提示便利性。 我们要实现下面的效果 文件目录 src/index.ts 注意是 esmod…

Geogebra中导出3D Graphics窗口

导出没有特别的自定义设置&#xff0c;默认的第一个窗口是Graphics, 还有Graphics 2和3D Graphics ,优先顺序依次递减。如果要想导出的是3D Graphics, 需要确保关闭另外两个窗口。 这个是视频转换&#xff1a; 下面是直接导出&#xff1a; 带渲染效果的&#xff0c;其实是Al…

LeetCode 高频 SQL 50 题(基础版) 之 【高级查询和连接】· 上

题目&#xff1a;1731. 每位经理的下属员工数量 题解&#xff1a; select employee_id,name,reports_count,average_age from Employees t1,(select reports_to,count(*) reports_count,round(avg(age)) average_agefrom Employeeswhere reports_to is not nullgroup by repor…