MySQL保姆级入门教程:从安装配置到索引事务与存储过程

MySQL入门MySQL安装SQL语句
于 2026-10-01 07:59:52 修改
·本内容遵循CC 4.0 BY-SA版权协议

从零开始折腾MySQL:一篇喂到嘴边的保姆级入门梳理

如果你第一次接触MySQL,八成是卡在“老师直接让你建表写SQL”和“网上的教程默认你啥都会”之间的这种尴尬位置。这篇文章就是为完全没基础、甚至不知道MySQL怎么装、装完怎么连、连完该干嘛的读者准备的。我会把从下载安装、建库建表、增删改查,到索引、事务、存储过程这些入门必踩的知识点全部过一遍,尽量用大白话讲清楚“为什么”,而不只是“怎么操作”。内容量大,建议先收藏,然后找一个下午边看边动手操作一遍。

这篇东西覆盖面比较广——既能解决你“MySQL 安装配置”的问题,也会把“MySQL 常用 SQL 语句”、“MySQL 索引原理”、“事务隔离级别”、“存储过程怎么写”、“自动备份脚本怎么做”这些高频话题全部带一遍。适合刚上完数据库课但实际没怎么动过手的同学、转行准备面试的选手,以及工作里需要自学的Java后端和测试同学。看完全文,你可以自己独立搭一套MySQL环境,写出规范的基础SQL,知道索引大概是怎么回事,还能给自己写一个一键备份的bat脚本。

1. 环境准备:MySQL的下载、安装与连接

1.1 版本选择和安装包怎么挑

很多新手第一步就卡在下载上——一搜“MySQL 下载官网”出来一堆第三方站,点进去全是广告和大大的下载按钮,一不留神就装了一堆全家桶。记住一句话:MySQL 认准官方,也就是 mysql.com,进 Downloads 页面,选 MySQL Community Server 版本,这是免费的开源社区版,开发和学习完全够用。

版本上建议直接选 8.0 系列,比如 8.0.4x 的压缩版或安装版。老项目可能还在用 5.7,但新学的没必要追老,8.0 的窗口函数、CTE、更好用的默认字符集,以及更强的性能优化,都值得你从它开始。Windows 下有两种包:一种是 ZIP 压缩版,免安装,解压就能用;另一种是 MSI 安装程序,图形化点击下一步。我的建议是——新手优先用 MSI 安装版,减少你折腾环境的时间;如果以后你需要在多台机器快速部署,再接触压缩版。

压缩版的自定义安装步骤大概是:解压到一个纯英文路径,比如 D:\mysql-8.0.46-winx64,然后在根目录新建 my.ini 配置文件,里面至少要有 [mysqld] 和 basedir、datadir 这仨关键项,然后再用管理员权限的 cmd 执行 mysqld --initialize-insecure(记住这个参数,后面谈初始密码时会细说)初始化数据目录,最后 mysqld --install 注册成 Windows 服务,net start mysql 启动。

1.2 第一次连接:初始密码这个坑

踏入MySQL的第一步不是写SQL,而是先能连上它。安装完成后,第一次用命令行连接时新手最常见的灵魂发问是:“MySQL 的初始密码是什么?”

不同安装方式不一样。如果是 MSI 安装版,安装过程中会让你设置 root 密码(比如 root/123456),这个是你自己的密码,没问题。如果你用的是 ZIP 压缩版,用了 mysqld --initialize-insecure 这个初始化命令,那么默认的 root 账号是空密码,直接 mysql -u root -p 回车再回车就能进去。如果你用了 mysqld --initialize(不带 insecure),系统会在数据目录的 .err 日志文件里生成一个临时密码,你需要把这个日志打开,找 a temporary password is generated for root@localhost 这一行,后面那串乱码一样的字母数字就是临时密码。第一次登录后立刻执行 ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 修改掉。

命令行的连接姿势也有讲究:在 Windows 下,建议把 MySQL 安装目录下的 bin 文件夹路径加到系统环境变量的 Path 里,这样在任何路径下都能直接输入 mysql,不用每次 cd 到安装目录。连接命令的完整形态是 mysql -h 127.0.0.1 -P 3306 -u root -p,其中 -h 是主机地址、-P 是端口号(默认3306)、-u 是用户名、-p 表示需要输入密码。

1.3 可视化工具:MySQL Workbench 还是 Navicat

命令行当然可以操作一切,但对学习阶段来说,可视化工具有一个巨大的优势:你能直观看到一张表长什么样、一张表里有几行数据、哪些字段是索引,这对建立数据库的“空间感”非常有帮助。我见过太多纯命令行选手,建了几张表之后逻辑开始混乱,最后连自己都搞不清楚表之间的关系。

MySQL 官方自带的 Workbench 完全免费,功能也足够了。安装MSI包时可以选择附带安装,或者去官网单独下载。打开后新建连接,填主机名、端口、用户名和密码,点击 Test Connection 测试通不通。如果之前用命令行已经建了库表,这里都能看到。它的左侧栏有 Administration 标签页,可以看服务状态、配置、导入导出数据,非常省事。商用环境下很多团队用 Navicat,界面更友好,但它是收费的,初学阶段用 Workbench 完全够用。

提示:如果 Workbench 连接时报 2059 错误,一般是因为 MySQL 8.0 修改了默认认证插件为 caching_sha2_password,而旧版客户端不支持。解决方式是改密码时显式指定 mysql_native_password,稍后在第7章会给出具体命令。

2. 建库建表与增删改查:SQL基本功要打牢

2.1 库和表:先搞清楚MySQL里到底有什么

MySQL 是一个数据库管理系统,你可以在里面创建多个“数据库(database)”,每个数据库里放若干“表(table)”,表是真正存数据的地方。用一个最朴素的类比:数据库像是一个仓库,表是仓库里的货架,每一行是货架上的一个货品,每一列是货品的一个属性。你要做的第一步,不是急着写 SELECT,而是先建仓库、再摆货架。

建库的SQL很简单:

SQL
CREATE DATABASE IF NOT EXISTS school DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE school;

这里的 utf8mb4 是 MySQL 8.0 的默认字符集,它比老的 utf8 多支持了 Emoji 和更多特殊符号,实际项目中几乎都推荐用它。库建好后,你后面对表的操作之前要先 USE school,告诉 MySQL“我要在这个库里面干活”。忘记USE就操作表,系统会报“No database selected”,这是新手接触最多的报错之一。

2.2 建表语句:字段类型和主键怎么选

表的创建是数据库设计最核心的动作。还是以 student 表为例,把一张学生表的结构设计出来,你就能理解大部分字段类型怎么选:

SQL
CREATE TABLE student (
id BIGINT UNSIGNED AUTO_INCREMENT COMMENT '主键ID',
stu_no VARCHAR(20) NOT NULL COMMENT '学号',
name VARCHAR(50) NOT NULL COMMENT '姓名',
gender TINYINT NOT NULL DEFAULT 0 COMMENT '性别 0未知 1男 2女',
birthday DATE COMMENT '出生日期',
phone VARCHAR(20) DEFAULT NULL COMMENT '手机号',
score DECIMAL(5,2) DEFAULT 0.00 COMMENT '总分',
status TINYINT NOT NULL DEFAULT 1 COMMENT '状态 1有效 0删除',
create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
up
最低 0.47元/天 开通会员,解锁全文
left
成为会员后, 你将解锁
right
benefits 下载资源随意下
benefits 优质VIP博文免费学
benefits 优质文库回答免费看
benefits 付费资源9折优惠
mysql索引、事务、锁、存储过程、存储函数与触发器
本文详细介绍了MySQL数据库中的核心功能,包括索引的创建与管理、事务与锁的使用、存储过程及触发器的编写等,提供了丰富的语法实例。
小绵羊与狮子的爱情故事
2529
MySQL的存储过程,触发器,索引,事务和日志
本文详细介绍了MySQL中的存储过程,包括其格式、参数传递方式、流程控制(如if/case、循环结构),以及游标、句柄等概念。此外,还涵盖了索引的种类、事务的特性与日志类型,如错误日志、二进制日志和慢查询日志。
learn_more1
1767
【MySQL】索引与事务
本文详细介绍了MySQL中的索引概念、创建与注意事项,重点讲解了B树和B+树在索引实现中的应用,以及事务的定义、必要性、操作和并发问题,包括脏读、不可重复读和幻读。,
轩。528
1997
【MySQL】MySQL索引与事务
本文围绕MySQL索引与事务展开。索引可加快查询速度、减少硬盘访问,但会占用额外空间,其数据结构为B+树。事务能将多个SQL语句打包,保证要么全成功要么全失败,具有原子性、一致性、持久性和隔离性。还介绍了事务并发的问题及隔离级别。
小黑屋的黑小子
2371
MySQL 之 事务、存储过程、索引
本文深入探讨了MySQL的事务处理,包括事务的基本原理和ACID特性,详细介绍了如何开始和结束事务。此外,文章还讨论了存储过程的概念、优点、语法以及如何创建、使用和删除。在索引部分,讲解了索引的重要性,不同类型的索引(如主键、唯一键和普通索引)以及它们对查询性能的影响。最后,提到了b+树作为索引的数据结构以及如何优化慢查询。
LinWoW
585
mysql的事务知识、视图、索引、存储过程、函数
本文详细介绍了数据库技术中的重要概念,包括事务的原子性、一致性、隔离性和持久性,视图的封装和使用,索引优化查询,以及MySQL中存储过程和函数的创建、调用和区别。
尼根12
891
【MySQL】 MySQL索引事务
本文详细介绍了MySQL中的索引概念、不同类型及其作用,涉及B树和B+树的数据结构,以及事务的定义、四大条件和不同级别的并发控制,包括锁定机制。最后讨论了索引的创建、删除策略和事务控制语句的应用。,
遇事问春风乄
1742
MySQL核心功能详解:索引、事务、视图、存储过程与触发器的应用
本文围绕MySQL中索引、事务、视图、存储过程和触发器展开,介绍了这些概念在数据库管理和优化中的重要性,并分别阐述其基本用法与简单示例,掌握这些内容有助于更有效地管理和查询数据库。
AitTech
1824
⭐️MySQL索引与事务的透析
本文深入探讨MySQL索引与事务。介绍了MySQL历史、架构和特点,阐述索引概念、类型、机制及创建管理方法,讲解事务定义、属性、机制和管理控制。分析了索引与事务的关联及最佳实践,并通过案例说明其在性能优化中的作用,最后对未来研究方向进行展望。
Python老吕
2073
MySql之索引,视图,事务以及存储过程举例详解
本文详细介绍了MySQL中的内连接、外连接、左连接、右连接、子查询,以及存储过程的定义、语法和示例,还包括视图的创建、使用和删除,事务的概念及其在银行系统中的应用,以及索引的作用、创建和管理。
布凡哦
1075
【Mysql】事务与索引
本文详细介绍了MySQL事务的定义、特性及并发事务的问题,探讨了不同隔离级别的应用,深入剖析了聚集索引、非聚集索引及其优缺点,讲解了覆盖索引、联合索引和最左前缀匹配原则,同时提供了创建索引的注意事项和避免索引失效的方法。
王果冻ddd
1170
MySQL索引与事务
本文聚焦于MySQL索引与事务。介绍了索引的概念、作用、分类,如普通索引、唯一索引等,还阐述了创建和删除索引的方法及原则。同时讲解了MySQL事务,包括其适用场景、ACID原则,以及用BEGIN、ROLLBACK、COMMIT和SET改变自动提交模式来处理事务的方法。
kgcc
1367
MySQL的索引、事务、存储过程与存储引擎
本文介绍了数据库中的索引概念及其作用,包括不同类型的索引及其创建方法。此外,还详细阐述了事务的概念、特点以及控制方法,帮助读者理解如何有效地管理和优化数据库性能。
灬小特曼
1896
MySQL入门教程安装与配置指南
本博客是MySQL入门教程安装与配置指南。项目旨在助初学者学MySQL,覆盖基础知识等多方面。使用Markdown编写,借助GitHub托管。介绍了安装前准备,包括安装Git和MySQL,还给出详细安装步骤,如克隆代码、安装配置、验证及浏览教程等。
伍冠跃Barbara
1050
深入MySQL:掌握索引、事务、视图、存储过程与性能优化
本文介绍MySQL进阶特性,包括索引、事务、视图、存储过程和函数,以及性能优化。索引可提高查询效率,事务保证数据库一致性,视图简化查询,存储过程和函数提高代码可维护性。还给出性能优化技巧,如优化查询、表结构和配置等。
CoderWangj
1266
mysql 索引、事务、视图、存储过程、存储引擎(mylsam、innodb)
本文深入讲解数据库优化关键:索引、事务、视图、存储过程与存储引擎,涵盖索引的创建与分类、事务的ACID特性、视图与存储过程的使用,以及MylSAM与InnoDB存储引擎的特性对比。
weixin_45726050
1035
MySQL事务及存储过程_mysql事务 mysql的存储过程
本文介绍了MySQL中的事务处理,包括开始事务、提交和回滚操作,并探讨了InnoDB存储引擎对事务的支持。此外,详细讲解了存储过程的定义、特性和创建方法,以及如何调用和删除存储过程。还涉及了MySQL的索引类型,如主键、唯一索引、普通索引和组合索引,以及全文索引的使用。最后讨论了索引的优缺点。
浪客宏非
608
MySQL 索引、事务和视图
本文介绍了数据库中的事务概念,包括其ACID特性,展示了如何使用SQL进行事务操作以保证数据安全。接着讨论了事务并发问题,如脏读、不可重复读和幻读。此外,讲解了视图的作用和好处,以及如何创建和使用视图。接着提到了存储过程,解释了它的概念和优点。最后,探讨了索引在提升查询性能方面的重要性,以及创建、删除和使用索引的基本操作。
书生-w
18580
MySQL 索引和事务
本文围绕MySQL索引和事务展开。介绍了索引的概念、作用、分类(普通、唯一、主键、组合、全文索引),以及创建、查看和删除索引的方法与原则。还阐述了MySQL事务,包括适用场景、支持引擎、事务特性(ACID)、开启方式和控制语句。
眠修
1261
Navicat for MySQL免费版安装配置教程(超级详细、保姆级)_51CTO博客_navicat for mysql下载安装教程(1).html
Navicat for MySQL免费版安装配置教程(超级详细、保姆级)_51CTO博客_navicat for mysql下载安装教程(1).html
番茄酱肉包.
15268
mysql安装教程(保姆级)-mysql-8.0.32-winx64
"mysql安装教程(保姆级)-mysql-8.0.32-winx64"本教程详细介绍了在Windows系统上安装MySQL 8.0.32的步骤,适合初学者或需要快速安装MySQL的用户。MySQ
OnePQ@
6372
MySQL安装配置教程(超级详细、保姆级).pdf
MySQL是一个强大且灵活的关系型数据库管理系统,广泛应用于网站开发、数据存储和分析等领域。通过学习这个保姆级的教程,你将能够熟练地安装、配置和管理MySQL服务器,为你的项目提供可靠的数据支持。
2438
mysql索引、触发器、事务、存储过程说明
- **InnoDB**:这是MySQL的默认存储引擎,它支持事务处理、外键约束以及行级锁定。尽管批量插入速度较慢,但对于需要高度一致性的应用来说,InnoDB通常是更好的选择。
107
Mysql安装配置教程(保姆级超详细图文)-mysql安装及配置超详细教程
Mysql安装配置教程(保姆级超详细图文)_mysql安装及配置超详细教程 本科生,专科生
背包客研究
786
Mysql超详细安装配置教程(保姆级).md
### MySQL超详细安装配置教程(保姆级)#### 1. 下载MySQL安装包- **访问官网**:打开MySQL官方网站(https://dev.mysql.com/downloads/mysq
编程资源宝库
749
在Mysql存储过程中使用事务实例
以下是对在MySQL存储过程中使用事务的详细说明:1. **创建存储过程**: 在给出的示例中,创建了一个名为`createBusiness`的存储过程,它接受一个整型参数`parameter1`。
weixin_38625048
610
MySQL的保姆级安装教程
### MySQL的保姆级安装教程#### 一、彻底卸载删除电脑上的数据库软件在开始新的MySQL安装之前,确保你的电脑上没有遗留之前的MySQL安装是非常重要的。
Eqwaak00
459
YUM安装MySQL保姆级教程
YUM安装MySQL保姆级教程,包教包会,请看文档!YUM安装MySQL保姆级教程,包教包会,请看文档!YUM安装MySQL保姆级教程,包教包会,请看文档!YUM安装MySQL保姆级教程,包教包会,请
麋小鹿i
103