文章目录
- 一、数据库介绍
- 二、数据库使用
- 2.1 登录MySQL
- 2.2 基本使用
- 2.2.1 显示当前 MySQL 实例中所有的数据库列表
- 2.2.2 创建数据库
- 2.2.3 创建数据库表
- 2.2.4 在表中插入数据
- 2.2.5 在表中查询数据
- 三、服务器、数据库、表之间的关系
- 四、SQL语句分类
- 五、存储引擎
一、数据库介绍
MySQL本质是基于C(mysql)S(mysqld)模式的一种网络服务。
是一套提供数据存取服务的网络程序。
-
mysqld
:数据库的服务器端(d表示守护进程) -
mysql
:数据库的客户端
数据库是在磁盘或内存中存储的结构化数据文件。
- 为什么不用一般文件存储?
文件确实能存储,但是站在用户角度没有提供较好的数据管理能力。(比方说在文件中查找以120开头的ip地址)
而如果是数据库,它对数据内容存储有一套解决方案,我们提交字段或者要求,数据库返回结果。
二、数据库使用
2.1 登录MySQL
mysql -h 127.0.0.1 -P 3306 -u root -p
-h
:指定部署了MySQL的主机名或 IP 地址。在这里,127.0.0.1 表示要连接的主机为本地主机,即连接本机上的 MySQL 数据库。不指明-h,默认连上本地服务器搭建的MySQL。
-P
:指定要连接的 MySQL 数据库所在的端口号。在这里,3306 表示 MySQL 数据库的默认端口号。不指明-P,默认使用配置文件指明的端口号连接MySQL。
-u
:指定要连接 MySQL 数据库的用户名。在这里,root 表示使用 root 用户名连接 MySQL 数据库。
-p
:表示连接 MySQL 数据库时需要输入密码。在这里,-p 后面没有指定密码,所以会提示输入密码。
2.2 基本使用
2.2.1 显示当前 MySQL 实例中所有的数据库列表
show databases;
2.2.2 创建数据库
create database test;
数据库存放于/var/lib/mysql
目录下。查看:
创建数据库,本质上就是在创建Linux下创建一个目录。
2.2.3 创建数据库表
可以看到有很多数据库,所以先选择其中一个数据库:
use test;
接下来就可以创建数据库表了:
mysql> create table person(
-> name varchar(32),
-> age int,
-> gender varchar(2)
-> );
在数据库中建立表,本质上就是在Linux中创建对应的文件。
2.2.4 在表中插入数据
insert into person (name, age, gender) values ('张三', '20', '男');
2.2.5 在表中查询数据
select* from person;
数据库本质其实也是文件,只不过这些文件并不由程序员直接操作,而是由数据库服务帮我们进行操作
三、服务器、数据库、表之间的关系
其实安装数据库服务器(mysqld)就是在linux上安装了一个数据库管理的应用程序,在后台以守护进程的方式运行。这个程序就可以一次管理多个数据库(表):
四、SQL语句分类
SQL语句分为三种:
DDL数据定义语言,自然是用来维护存储数据的结构,代表指令:
create
,drop
,alter
,操作表
DML数据操纵语言,用来对数据进行操作,代表指令:insert
,delete
,updata
,操作数据
DML中又单独分了一个DQL,数据查询语言,代表指令:select
DCL数据控制语言,主要负责权限管理和事务,代表指令:grant
,revoke
,commit
五、存储引擎
存储引擎:
数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。也就是真正和操作系统打交道的程序。
查找引擎:
show engines;
MySQL的核心就是插件式存储引擎,支持多种存储引擎
最常用的存储引擎就是InnoDB,MyISAM
默认的存储引擎是InnoDB