## 数据库的基本概念
数据库,DataBase,DB,是一个文件系统,用于持久化存储和管理数据,使用统一的方式操作 -- SQL,方便存储和管理
### 数据库软件
* MySQL 是最常用的关系型数据库软件,Oracle 公司产品,[官网](https://downloads.mysql.com/archives/community/)可以下载,建议选择 5.7+ 或 8.0+ 版本
* 安装过程就略了,本机实验(Windows 环境)我是一路 next,最后配一下环境变量,服务器上(CentOS) 我一般使用宝塔面板一键安装或者 Docker安装
* MySQL 默认端口号 3306
### MySQL 配置
* 启动 MySQL 服务
```shell
# 启动mysql的服务
net start mysql
# 关闭mysql服务
net stop mysql
```
* MySQL登录
```shell
# 登录本地 MySQL
mysql -uroot -p密码
# 登录远程 MySQL
mysql -hip -uroot -p连接目标的密码
mysql --host=ip --user=root --password=连接目标的密码
```
* MySQL退出
```shell
exit
```
* MySQL 目录结构
1. MySQL 的安装目录:basedir="C:/Program Files/MySQL/MySQL Server 5.7/",该目录
2. MySQL 的数据目录:datadir="C:/ProgramData/MySQL/MySQL Server 5.7/Data",该目录下每个文件夹对应一个数据库,表则可以看做是文件夹下的文件
注意:安装新版本 MySQL 之前要卸载旧版本,并删除 C:/ProgramData (Windows系统)目录下的 MySQL 文件夹
## SQL
SQL即Structured Query Language,结构化查询语言,定义了操作所有**关系型数据库**的规则,每一种具体的数据库软件操作的方式会存在不一样的地方
### SQL通用语法
1. SQL 语句可以单行或多行书写,以分号结尾
2. 可使用空格和缩进来增强语句的可读性
3. MySQL 数据库的 SQL 语句不区分大小写,关键字**建议使用大写**
4. 3 种注释
* 单行注释: -- 注释内容(注意 -- 后有空格) 或 # 注释内容(MySQL 特有)
* 多行注释: /* 注释 */
### SQL分类
1. DDL(Data Definition Language)数据定义语言
用来定义**数据库对象**:数据库,表,列(字段)等。关键字:create,drop,alter 等
2. DML(Data Manipulation Language)数据操作语言
用来对数据库中表的数据进行**增删改**。关键字:insert, delete, update 等
3. DQL(Data Query Language)数据查询语言
用来**查询**数据库中表的记录(数据)。关键字:select, where 等
4. DCL(Data Control Language)数据控制语言
用来定义数据库的**访问权限**和**安全级别**,及创建用户。关键字:grant, revoke 等
## 参考
[黑马 JavaWeb](https://www.bilibili.com/video/BV1J4411877m)
[数据库复习笔记](https://blog.csdn.net/m0_37989980/article/details/103987924)

MySQL | 数据库基础