MySQL 数据库简介
MySQL是一个开源的关系型数据库管理系统(RDBMS),使用结构化查询语言(SQL)进行数据管理。作为 LAMP 技术栈(Linux + Apache + MySQL + PHP/Python)的核心组件,它具有以下特点:
- 数据存储结构:采用表格式存储数据,支持主键、外键等关系约束
- 事务支持:提供 ACID(原子性、一致性、隔离性、持久性)事务保证
- 高可用性:支持主从复制、集群部署等高可用方案
- 跨平台性:可在 Linux、Windows、macOS 等多种操作系统运行
安全配置流程详解
步骤一:管理员身份登录 MySQL
sudo mysql # 适用于使用auth_socket认证的系统
# 标准密码验证登录(-u后必须空格)
mysql -u root -p # 输入root密码
步骤二:创建用户与数据库
CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'SecurePass123!';
-- 创建数据库
CREATE DATABASE app_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
步骤三:精细化权限分配
1. 数据库级权限控制
-- 授予app_db所有权限
GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'localhost';
2. 表级权限控制
-- 授予特定表权限(修正原命令空格缺失)
GRANT SELECT, INSERT ON app_db.user_table TO 'app_user'@'localhost';
MySQL 权限类型详解
权限 | 功能描述 | 风险等级 |
---|---|---|
CREATE | 创建新表/数据库 | 高 |
DROP | 删除表或数据库 | 极高 |
DELETE | 删除数据行 | 高 |
INSERT | 插入新数据 | 中 |
SELECT | 读取数据 | 低 |
UPDATE | 修改现有数据 | 高 |
GRANT OPTION | 授予他人权限 | 极高 |
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。