news 2026/6/25 4:42:11

【MySQL 数据库】数据库基础

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【MySQL 数据库】数据库基础

大家好,最近在系统梳理 MySQL 数据库基础知识点,结合学习资料整理了这篇超详细、零基础友好的 MySQL 入门博客,涵盖数据库本质、主流数据库对比、MySQL 安装连接、库表操作、SQL 分类、存储引擎等核心内容,无论是课堂作业、面试复习还是入门自学,都能直接用。


一、为什么要使用数据库?文件存储到底差在哪?

很多刚接触编程的同学都会有一个疑问:存数据用普通文件不就行了,为什么非要用数据库?

其实文件存储数据有非常明显的缺陷,这也是数据库诞生的核心原因:

  1. 安全性极差文件容易被误删、篡改、泄露,没有权限控制,任何人都能打开修改。
  2. 查询与管理极其低效文件只能顺序读取,想快速查找某条数据非常麻烦,无法实现高效筛选、排序、统计。
  3. 无法支撑海量数据小数据量用文件没问题,一旦数据达到百万、千万级,文件读写会卡死,完全扛不住。
  4. 程序控制不方便在代码里读写文件需要手动处理格式、异常、并发,开发成本极高,还容易出错。

而数据库就是为了解决以上所有问题设计的高效数据管理工具,它能统一存储、规范管理、安全控制、高速查询,是后端开发的核心基础。

数据库的数据主要存储在两个介质:

  • 磁盘:持久化存储,断电不丢失,用于保存所有真实数据。
  • 内存:高速缓存,提升查询速度,用于临时存放高频使用的数据。

二、主流数据库全面对比(常用 + 面试高频)

目前业界有很多数据库产品,适用场景各不相同,下面是最常用的数据库介绍:

1. MySQL

  • 目前世界上最受欢迎的开源关系型数据库。
  • 隶属甲骨文公司,并发性能极强。
  • 适合电商、社交、论坛、Web 应用等中高并发场景。
  • 优点:轻量、高效、免费、生态完善。
  • 缺点:不适合极其复杂的业务逻辑。

2. Oracle

  • 甲骨文公司的商用重量级数据库。
  • 适合大型项目、金融、银行、复杂业务系统。
  • 功能最全面,安全性极高,但费用昂贵。

3. SQL Server

  • 微软旗下数据库,.NET 技术栈首选。
  • 界面友好,适合中大型项目,Windows 生态兼容性强。

4. PostgreSQL

  • 加州大学伯克利分校开发的开源关系型数据库。
  • 免费使用、修改、分发,功能强大,扩展性极高。

5. SQLite

  • 超轻量级嵌入式数据库,核心代码只有几百 K。
  • 无需安装、无独立进程,直接嵌入程序使用。
  • 广泛用于手机 App、嵌入式设备、小型工具软件。

6. H2

  • Java 语言开发的嵌入式数据库。
  • 纯 Java 实现,可直接嵌入 Java 项目,常用于单元测试。

三、MySQL 基础使用(安装、连接、服务管理)

1. MySQL 安装方式

不同系统安装方式不同,常用方案:

  • Windows:安装 MySQL 5.7 / 8.0 版本。
  • CentOS 7:通过 yum 安装 MariaDB(MySQL 分支)。
  • CentOS 6.5:源码编译安装 MySQL 5.6。

2. 连接 MySQL 服务器

安装完成后,通过命令行连接 MySQL:

bash

运行

mysql -h 127.0.0.1 -P 3306 -u root -p

参数说明:

  • -h:数据库主机地址,不写默认连接本地。
  • -P:端口号,MySQL 默认端口 3306,不写默认 3306。
  • -u:登录用户名,默认管理员 root。
  • -p:登录密码,执行后输入密码即可。

连接成功后会显示:

plaintext

Welcome to the MySQL monitor. Commands end with ; or \g.

3. MySQL 服务管理(Windows)

想启动 / 停止 / 重启 MySQL,用系统服务管理器:

  1. 按下Win + R
  2. 输入services.msc打开服务。
  3. 找到MySQL57MySQL80,即可控制服务状态。

4. 核心关系:服务器 → 数据库 → 表

很多新手搞不清三者的关系,这里用最通俗的话解释:

  • 数据库服务器:你安装的 MySQL 软件,一台电脑可以装一个。
  • 数据库(DB):服务器里的 “大文件夹”,一个服务器可以建很多库。
  • :库里面的 “表格”,一个库可以建很多张表,真正存数据的地方是表

简单层级:MySQL 服务器多个数据库多张数据表多条数据记录


四、MySQL 基础操作案例(从建库到查询)

下面是一套最完整、最标准的 MySQL 入门操作流程,新手必须背会:

1. 创建数据库

sql

CREATE DATABASE helloworld;

2. 使用数据库(进入库)

sql

USE helloworld;

3. 创建数据表

以学生表为例,包含 id、姓名、性别:

sql

CREATE TABLE student( id INT, name VARCHAR(32), gender VARCHAR(2) );

字段说明:

  • id INT:学号,整数类型。
  • name VARCHAR(32):姓名,字符串类型,最长 32 字符。
  • gender VARCHAR(2):性别,存男 / 女。

4. 向表中插入数据

sql

INSERT INTO student (id, name, gender) VALUES (1, '张三', '男'); INSERT INTO student (id, name, gender) VALUES (2, '李四', '女'); INSERT INTO student (id, name, gender) VALUES (3, '王五', '男');

5. 查询表中所有数据

sql

SELECT * FROM student;

执行结果:

plaintext

+------+--------+--------+ | id | name | gender | +------+--------+--------+ | 1 | 张三 | 男 | | 2 | 李四 | 女 | | 3 | 王五 | 男 | +------+--------+--------+

五、MySQL 整体架构(理解底层原理)

MySQL 是一个跨平台数据库,支持 Windows、Linux、Mac 等系统,且底层结构保持一致。

整体架构分为三层:

  1. 客户端层负责连接 MySQL,支持 JDBC、ODBC、PHP、Python、C 等各种语言连接。
  2. 服务层(核心层)连接管理、权限验证、SQL 解析、SQL 优化、查询缓存、存储过程、触发器、视图等。
  3. 存储引擎层 + 文件系统层真正负责数据存储、索引管理、数据读写,是 MySQL 的核心特色。

六、SQL 语言三大分类(面试必考)

SQL 是操作数据库的语言,按功能分为三类,必须严格区分:

1. DDL 数据定义语言

作用:管理数据库 / 表的结构(建库、建表、改表、删库、删表)关键字:

  • CREATE:创建(库、表、索引)
  • DROP:删除(库、表)
  • ALTER:修改表结构(加字段、改字段、删字段)

2. DML 数据操纵语言

作用:操作表中的数据(增、删、改)关键字:

  • INSERT:插入数据
  • DELETE:删除数据
  • UPDATE:修改数据

其中查询单独划分:DQL 数据查询语言

  • SELECT:查询数据

3. DCL 数据控制语言

作用:管理权限、事务关键字:

  • GRANT:授权
  • REVOKE:回收权限
  • COMMIT:提交事务

七、存储引擎(MySQL 最核心特性)

1. 什么是存储引擎?

存储引擎就是MySQL 存储数据、建立索引、更新 / 查询数据的具体实现方式

简单理解:存储引擎 = 数据库的 “存储模式”,不同引擎存数据的方式不一样。

2. MySQL 存储引擎特点

MySQL 最核心的设计就是插件式存储引擎,可以自由切换、按需使用。

3. 查看所有存储引擎

sql

SHOW ENGINES;

4. 常见存储引擎

  • InnoDB:MySQL 默认引擎,支持事务、外键、行锁,适合大多数业务。
  • MyISAM:查询速度极快,不支持事务,适合只读场景。
  • Memory:数据存在内存,速度最快,断电丢失。
  • Archive:只支持插入和查询,用于日志存储。
  • Cluster:分布式集群引擎。

八、总结(快速回顾)

  1. 数据库解决了文件存储不安全、难管理、效率低的问题。
  2. MySQL 是最流行开源数据库,适合高并发 Web 项目。
  3. 操作层级:服务器 → 数据库 → 表 → 数据。
  4. 基础流程:建库 → 建表 → 插入 → 查询。
  5. SQL 分三类:DDL(结构)、DML(数据)、DCL(权限)。
  6. 存储引擎是 MySQL 核心,支持插件式切换。

这篇 MySQL 基础笔记覆盖了入门所有核心知识点,适合新手打基础、学生写作业、面试前快速复习。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/14 5:40:59

计算机毕业设计之基于Java Web的高校选课管理系统设计与实现

随着高校教育规模的不断扩大,传统选课管理方式效率低下、易出错等问题日益凸显,严重影响教学管理的质量与效率,基于JavaWeb的高校选课管理系统应运而生。该系统借助B/S架构,以SpringBoot作为后端开发框架,搭配Java语言…

作者头像 李华
网站建设 2026/6/25 4:42:10

Obsidian科研模板终极指南:三步构建高效学术知识管理系统

Obsidian科研模板终极指南:三步构建高效学术知识管理系统 【免费下载链接】obsidian_vault_template_for_researcher This is an vault template for researchers using obsidian. 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian_vault_template_for_rese…

作者头像 李华
网站建设 2026/6/14 5:41:02

Windows电脑安装安卓应用的终极指南:APK-Installer完整教程

Windows电脑安装安卓应用的终极指南:APK-Installer完整教程 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为Windows电脑上无法直接安装安卓应用而烦恼…

作者头像 李华
网站建设 2026/6/20 6:30:38

AI辅助文献综述:从PubMed检索到结构化数据的科研工作流

1. 为什么文献综述正在成为科研人的“时间黑洞”——一个临床医生的真实切口我带过三届硕士生,审过不下两百份开题报告,最常听到的抱怨不是“实验做不出来”,而是“文献实在看不完”。去年帮一位耳鼻喉科同事梳理“AI辅助内镜诊断”的研究现状…

作者头像 李华
网站建设 2026/6/14 5:41:00

2026年6月5日科技热点新闻

一、国内科技要闻 1.工信部发布6G部省协同试点方案,锁定2029年自研技术落地目标 工信部正式印发6G创新发展部省协同专项行动通知,启动全国多地试点布局,规划至2029年落地全套自主6G技术方案、新型终端产品与商用落地场景,重点围…

作者头像 李华
网站建设 2026/6/14 5:41:16

Word长表格跨页排版进阶:实现自动重复标题行与添加续表字样

1. 项目概述:Word长表格处理的痛点与进阶需求 在撰写技术文档、项目报告或者学术论文时,我们经常会遇到一个让人头疼的排版问题:表格太长,一页放不下。对于电子工程师来说,无论是BOM清单、测试数据记录,还是…

作者头像 李华