MySQL——基础知识

目录

一、为什么选择数据库而非文件存储?

二、主流数据库简介

三、MySQL安装与连接

[1. 安装方式](#1. 安装方式)

[2. 连接服务器](#2. 连接服务器)

四、核心操作实战

[1. 数据库与表管理](#1. 数据库与表管理)

[2. 数据逻辑存储示例](#2. 数据逻辑存储示例)

五、MySQL架构解析

六、SQL分类与存储引擎

[1. SQL分类](#1. SQL分类)

[2. 存储引擎对比](#2. 存储引擎对比)

七、学习建议


一、为什么选择数据库而非文件存储?

文件存储数据存在以下问题:

  • 安全性低:文件易被误删或非法访问。

  • 管理困难:数据查询、修改效率低,难以支持复杂操作。

  • 扩展性差:无法高效处理海量数据。

  • 程序控制复杂:需自行实现数据读写逻辑。

数据库通过结构化存储、高效查询、事务支持等特性解决了上述问题,成为数据管理的核心工具。


二、主流数据库简介

数据库 特点
MySQL 最流行的开源数据库,并发性能好,适合电商、论坛等场景。
Oracle 功能强大,适合复杂业务逻辑,但成本高。
SQL Server 微软生态首选,适合中大型项目。
SQLite 轻量级嵌入式数据库,资源占用极低。
PostgreSQL 开源且功能丰富,支持复杂查询和自定义类型。

三、MySQL安装与连接

1. 安装方式

  • Linux(CentOS)

    bash 复制代码
    # CentOS 7 安装 MariaDB(MySQL分支)
    sudo yum install mariadb-server
    sudo systemctl start mariadb
  • Windows

    下载MySQL 5.7安装包,按向导完成安装。

2. 连接服务器

bash 复制代码
mysql -h 127.0.0.1 -P 3306 -u root -p
  • -h 默认为本地(127.0.0.1),-P 默认为3306端口。

四、核心操作实战

1. 数据库与表管理

bash 复制代码
-- 创建数据库
CREATE DATABASE helloworld;
USE helloworld;

-- 创建表
CREATE TABLE student (
    id INT PRIMARY KEY,
    name VARCHAR(32) NOT NULL,
    gender VARCHAR(2)
);

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

-- 查询数据
SELECT * FROM student;

2. 数据逻辑存储示例

执行 SELECT * FROM student; 输出:

bash 复制代码
+----+--------+--------+
| id | name   | gender |
+----+--------+--------+
| 1  | 张三   | 男     |
| 2  | 李四   | 女     |
| 3  | 王五   | 男     |
+----+--------+--------+

五、MySQL架构解析

MySQL采用分层设计,核心组件包括:

  1. 连接池:管理客户端连接与认证。

  2. SQL接口:处理DML、DDL等操作。

  3. 解析器与优化器:解析SQL语法并优化执行计划。

  4. 存储引擎:插件式设计,支持InnoDB、MyISAM等。

  5. 文件系统:存储数据文件、日志(如Binlog、Undo Log)。


六、SQL分类与存储引擎

1. SQL分类

类型 功能 示例指令
DDL 定义数据结构 CREATE, ALTER, DROP
DML 操作数据 INSERT, UPDATE, DELETE
DQL 查询数据(DML子集) SELECT
DCL 权限与事务控制 GRANT, REVOKE, COMMIT

2. 存储引擎对比

引擎 特点
InnoDB 支持事务、外键,适合高并发写入(默认引擎)。
MyISAM 查询速度快,不支持事务,适合读多写少场景。
Memory 数据存于内存,速度快,但服务重启后数据丢失。

查看支持的引擎:

bash 复制代码
SHOW ENGINES;

七、学习建议

  1. 实践优先:从简单项目(如学生管理系统)入手,练习表设计和CRUD操作。

  2. 工具辅助:使用MySQL Workbench或Navicat管理数据库。

  3. 深入原理:学习索引优化、事务隔离级别等高级主题。

  4. 官方文档MySQL官方文档 是最权威的参考资料。


通过本文,您已掌握MySQL的核心概念、基础操作与架构原理。下一步可探索复杂查询、性能调优及分布式数据库设计,逐步成为数据库领域的高手!

相关推荐
憧憬成为web高手2 分钟前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学15 分钟前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh2 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
用户71333585156243 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
z123456789863 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD3 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
用户71333585156244 小时前
MySQL - InnoDB 的 Buffer Pool
mysql
TlSfoward4 小时前
抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具
数据库·爬虫·网络协议·搜索引擎·php
数智化管理手记4 小时前
账龄分析手工统计易遗漏?自动账龄分析工具怎么搭建
大数据·网络·数据库·人工智能·数据挖掘
LabVIEW开发5 小时前
NI Package Manager安装LabVIEW时InternalServerError错误
网络·数据库·labview·labview知识·labview功能·labview程序