目录
- 一. 数据库的概念
- 二. 数据库基本操作
- 1. 连接数据库
- 2. 退出数据库
- 3. 服务器、数据库、表关系
- 三. MySQL语句分类
- 四. MySQL框架
- 五. 存储引擎
一. 数据库的概念
数据库是按照数据结构来组织, 存储和管理数据的仓库; 是一个长期存储在计算机内的, 有组织的, 可共享的, 统一管理的大量数据的集合;
数据库与普通的文件系统相同, 都是存储数据的, 其主要区别是 数据库能够快速查找对应的数据;
数据库的本质是一种基于 CS 模式的网络服务, 由客户端 (Client )和服务器 (Server) 组成, 用户只需使用客户端 MySQL 发出 SQL 语句, 服务器 mysqld 就会读取数据并处理请求, 数据库的可以存储在磁盘或内存上;
二. 数据库基本操作
1. 连接数据库
mysql -h IP地址 -P 端口 -u 用户 -p
选项:
- -h: 表示 MySQL 服务部署机器的 IP 地址; 若省略, 默认为连接本地;
- -P: 表示 MySQL 服务进程所使用的端口号; 若省略, 默认为连接配置文件中的端口号 3306 ;
- -u: 表示登录 MySQL 的用户名, 比如 root;
- -p: 表示使用密码登录, 可以紧跟密码, 也可以回车后输入;
若在云服器中登录, 也可以省略 -h, -P选项
mysql -u 用户 -p
2. 退出数据库
直接输入 quit 语句即可
quit
3. 服务器、数据库、表关系
在 MySQL 中, 一切的数据都是以行和列, 也就是表的形式表示的, 表是 MySQL 中最常见, 最常用的结构;
而 MySQL 服务相当于一个数据库管理系统程序, 可以管理多个数据库, 一般一个项目对应一个数据库, 而数据库中存储着表;
在磁盘上, 数据库的本质是一个目录(文件夹), 而表则是数据库中的文件;
查看当前 MySQL 系统中数据库
show databases;
这些数据库实际上存储在 /var/lib/mysql 目录中
创建一个数据库, 在磁盘就会创建一个目录;
create database test;
在使用数据库前需要先指明数据库, 相当于指明使用目录;
use test;
可以使用函数显示当前所在数据库;
select database;
创建一张表 t1, 相当于创建文件, 其中包含num一个列属性;
create table t1(
num int
);
显示当前数据库的所有数据表;
show tables;
在磁盘上也会创建 t1 文件;
查看表的详细信息;
desc t1;
可以看到属性名 num 和类型 int;
插入在表中数据;
insert into t1 values (1);
查询表的数据
select * from t1;
三. MySQL语句分类
MySQL 中的语句可分为三类:
- DDL 数据定义语句: 用来维护存储数据的结构, 常用于对数据库, 表进行操作;
- DML 数据操纵语句: 用来对数据进行操作, 比如对表中的数据进行增删改查;
-
- DML中又单独分了一个DQL 数据查询语言, 例如 select 指令;
- DCL 数据控制语句: 主要负责权限和事务的管理, 可以给用户赋予数据库的权限;
四. MySQL框架
MySQL 是一个可移植的数据库, 可以在几乎所有操作系统上运行, 但主要在 Linux 类似的服务器后端中运行;
得益于优秀的分层设计, MySQL 能保证在各个平台运行时, 物理体系结构的一致性;
其主要可以分为三层:
- 第一层: 解决安全和连接管理;
- 第二层: 词法, 语法分析以及 SQL 语句优化;
- 第三层: 完成数据的存储方案;
五. 存储引擎
存储引擎是数据库系统如何存储数据, 为存储的数据建立索引和更新, 查询数据等技术的实现方法;
查看存储引擎;
show engines;
每一种存储引擎都有自己对应的功能, 大部分情况下 MySQL 常用的存储引擎是MyISAM 和 InnoDB;