一、数据库核心概念解析
1. 数据库与数据库管理系统
- 数据库(DataBase):按照一定数据结构组织、存储和管理数据的仓库,本质上是通过文件系统存储在计算机中的数据集合。
- 数据库管理系统(DBMS):用于操纵和管理数据库的大型软件,负责数据库的建立、使用和维护,保证数据的安全性和完整性。用户通过 DBMS 访问数据库中的数据。
2. 数据库的分类
-
关系型数据库(RDBMS):基于关系模型(表格结构)存储数据,通过 SQL 语言管理,支持事务和 ACID 特性。常见的有:
- MySQL:开源免费,适合 Web 应用和中小型企业。
- Oracle:企业级收费数据库,性能强、可靠性高。
- SQL Server:微软开发,与 Windows 系统集成良好。
- SQLite:轻量级嵌入式数据库,常用于移动应用。
-
非关系型数据库(NoSQL):不采用关系模型,适合大规模数据和高并发场景,常见类型包括:
- 键值数据库(如 Redis)
- 文档数据库(如 MongoDB)
- 列族数据库(如 HBase)
- 图形数据库(如 Neo4j)
3. 数据安全的重要性
数据库存储着核心业务数据,其安全性至关重要。近年来多次发生 "删库跑路" 事件,如链家 DBA 删除财务数据导致公司损失 18 万元,微盟程序员删除服务器数据造成 2260 余万元损失,相关责任人均被追究刑事责任。这提醒我们:数据库操作需谨慎,权限管理要严格,数据备份要及时。
二、MySQL 简介与安装配置
1. MySQL 的特点
MySQL 是由瑞典 MySQL AB 公司开发、现属 Oracle 旗下的关系型数据库管理系统,其优势包括:
- 开源免费,降低企业成本;
- 性能优异,适合 Web 应用;
- 支持多平台,兼容性强;
- 社区活跃,文档丰富。
2. MySQL 安装步骤
(1)下载安装包
- 访问MySQL 官网下载页,选择 "MySQL Community Server";
- 根据操作系统选择对应版本(如 Windows 64 位),推荐下载 MSI 安装包(如
mysql-installer-community-8.0.39.0.msi)。
(2)安装过程
- 运行安装包,选择安装类型(推荐 "Server only" 仅安装服务器,或 "Custom" 自定义组件);
- 选择 MySQL Server 版本(如 8.0.39),点击 "Execute" 开始安装;
- 安装完成后进入配置向导,依次设置:
- 服务器类型:开发环境选 "Development Computer";
- 端口号:默认 3306(需确保未被占用);
- 认证方式:推荐使用 "Strong Password Encryption"(新版加密方式);
- root 密码:设置管理员密码(务必牢记);
- 服务配置:可将 MySQL 注册为 Windows 服务,方便自动启动。
(3)环境变量配置
- 找到 MySQL 安装目录的
bin文件夹(如C:\Program Files\MySQL\MySQL Server 8.0\bin); - 右键 "此电脑"→"属性"→"高级系统设置"→"环境变量";
- 在 "系统变量" 的
Path中添加bin目录路径,便于在命令行直接调用 MySQL 命令。
(4)验证安装
- 按下
Win+R打开命令提示符,输入mysql -uroot -p; - 输入安装时设置的 root 密码,若出现
mysql>提示符,说明安装成功。
3. 客户端工具 Navicat
Navicat 是一款强大的数据库管理工具,支持连接 MySQL、SQL Server 等多种数据库,安装后通过以下步骤连接 MySQL:
- 点击 "连接"→"MySQL";
- 输入连接名(自定义)、主机名(默认
localhost)、端口(3306)、用户名(root)和密码; - 点击 "测试连接",成功后即可管理数据库。
三、SQL 语言基础
1. SQL 的概念与组成
SQL(结构化查询语言)是操作数据库的标准语言,主要由四部分组成:
- 数据定义语言(DDL):定义数据库结构,如
CREATE(创建)、ALTER(修改)、DROP(删除); - 数据操纵语言(DML):操作数据,如
INSERT(插入)、UPDATE(更新)、DELETE(删除); - 数据查询语言(DQL):查询数据,核心命令为
SELECT; - 数据控制语言(DCL):管理权限,如
GRANT(授权)、REVOKE(撤销权限)。
2. 常用 SQL 命令
sql
-- 查看所有数据库
SHOW DATABASES;
-- 创建数据库(若不存在)
CREATE DATABASE IF NOT EXISTS mydb;
-- 使用数据库
USE mydb;
-- 查看当前数据库中的表
SHOW TABLES;
-- 查看表结构
DESC 表名;
-- 查看MySQL版本
SELECT VERSION();
四、MySQL 数据定义(DDL)
1. 数据库操作
sql
-- 创建数据库
CREATE DATABASE 数据库名;
-- 创建数据库时指定字符集
CREATE DATABASE 数据库名 CHARACTER SET utf8mb4;
-- 删除数据库(谨慎操作!)
DROP DATABASE 数据库名;
2. 表操作
(1)创建表
sql
CREATE TABLE 表名 (
列名1 数据类型 约束,
列名2 数据类型 约束,
...
);
-- 示例:创建学生表
CREATE TABLE student (
id INT PRIMARY KEY AUTO_INCREMENT, -- 主键,自动增长
name VARCHAR(50) NOT NULL, -- 姓名,非空
age INT CHECK (age > 0 AND age < 150), -- 年龄,范围限制
gender ENUM('男', '女') DEFAULT '男', -- 性别,枚举类型,默认男
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- 创建时间,默认当前时间
);
(2)修改表
sql
-- 添加列
ALTER TABLE student ADD COLUMN score DECIMAL(5,2);
-- 修改列的数据类型
ALTER TABLE student MODIFY COLUMN score FLOAT;
-- 重命名列
ALTER TABLE student CHANGE COLUMN score exam_score FLOAT;
-- 删除列
ALTER TABLE student DROP COLUMN exam_score;
(3)删除表
sql
-- 删除表(谨慎操作!数据将全部丢失)
DROP TABLE student;
-- 删除表前判断是否存在
DROP TABLE IF EXISTS student;
五、MySQL 数据类型与约束
1. 常用数据类型
-
字符型:
CHAR(n):固定长度,适合短字符串(如手机号);VARCHAR(n):可变长度,适合长字符串(如姓名);TEXT:大文本(如文章内容)。
-
数值型:
INT:整数(-21 亿~21 亿);BIGINT:大整数;DECIMAL(p,d):定点数(如金额,p 为总位数,d 为小数位);FLOAT/DOUBLE:浮点数。
-
日期时间型:
DATE:日期(YYYY-MM-DD);TIME:时间(HH:MM:SS);DATETIME:日期时间(YYYY-MM-DD HH:MM:SS);TIMESTAMP:时间戳,自动更新。
-
特殊类型:
ENUM:枚举(只能选预定义值);SET:集合(可多选预定义值)。
2. 常用约束
NOT NULL:列值不能为空;UNIQUE:列值唯一(允许 NULL);PRIMARY KEY:主键(唯一且非空,表中只能有一个);AUTO_INCREMENT:自动增长(通常用于主键);FOREIGN KEY:外键(关联另一表的主键,保证数据一致性);CHECK:检查列值范围(MySQL 8.0 + 支持);DEFAULT:默认值。
总结
本文介绍了 MySQL 数据库的基础概念、安装配置、SQL 语言组成及数据定义操作。掌握这些知识是进行数据库开发和管理的前提。下一阶段,我们将深入学习数据操纵(增删改查)和高级查询技巧,敬请期待!
4万+

被折叠的 条评论
为什么被折叠?



