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的核心概念、基础操作与架构原理。下一步可探索复杂查询、性能调优及分布式数据库设计,逐步成为数据库领域的高手!

相关推荐
快乐肚皮20 小时前
MySQL递归CTE
java·数据库·mysql·递归表达式
2301_8002561120 小时前
地理空间数据库中的CPU 和 I/O 开销
数据库·算法·oracle
Elseide艾思20 小时前
艾思政策数据库正式发布(1989年至今)
数据库
zhengfei61121 小时前
OrangeHRM RCE 最新漏洞利用 - CVE-2025-66224
数据库
中國移动丶移不动21 小时前
Python MySQL 数据库操作完整示例
数据库·python·mysql
木风小助理21 小时前
B+树何以成为数据库索引的“天选之结构”?
数据库
7ioik21 小时前
为什么lnnoDB存储引擎默认使用B+树作为索引结构?
数据库·b树·oracle
斯普信专业组1 天前
PostgreSQL高可用集群部署与配置指南
数据库·postgresql
利刃大大1 天前
【MyBatis】MyBatis操作动态sql && MyBatisGenerator
数据库·sql·mybatis
一瓢西湖水1 天前
loader命令导出大批量数据维护SQL
数据库·sql