【MySQL】数据库基本使用

一、数据库介绍

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

猜你喜欢

转载自blog.csdn.net/qq_66314292/article/details/132028668