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

相关推荐
emo了小猫2 小时前
Mybatis #{} 和 ${}区别,使用场景,LIKE模糊查询避免SQL注入
数据库·sql·mysql·mybatis
潘yi.7 小时前
NoSQL之Redis配置与优化
数据库·redis·nosql
zdkdchao7 小时前
hbase资源和数据权限控制
大数据·数据库·hbase
伤不起bb7 小时前
NoSQL 之 Redis 配置与优化
linux·运维·数据库·redis·nosql
leo__5207 小时前
PostgreSQL配置文件修改及启用方法
数据库·postgresql
南風_入弦9 小时前
优化09-表连接
数据库·oracle
Snk0xHeart10 小时前
极客大挑战 2019 EasySQL 1(万能账号密码,SQL注入,HackBar)
数据库·sql·网络安全
····懂···10 小时前
数据库OCP专业认证培训
数据库·oracle·ocp
学习中的码虫11 小时前
数据库-MySQL
数据库
天天摸鱼的java工程师11 小时前
高考放榜夜,系统别崩!聊聊查分系统怎么设计,三张表足以?
java·后端·mysql