【MySQL】数据库基本使用

文章目录

一、数据库介绍

MySQL本质是基于C(mysql)S(mysqld)模式的一种网络服务。

是一套提供数据存取服务的网络程序。

  • mysqld:数据库的服务器端(d表示守护进程)

  • mysql:数据库的客户端

数据库是在磁盘或内存中存储的结构化数据文件。

  • 为什么不用一般文件存储?

文件确实能存储,但是站在用户角度没有提供较好的数据管理能力。(比方说在文件中查找以120开头的ip地址)

而如果是数据库,它对数据内容存储有一套解决方案,我们提交字段或者要求,数据库返回结果。

二、数据库使用

2.1 登录MySQL

sql 复制代码
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 实例中所有的数据库列表

sql 复制代码
show databases;

2.2.2 创建数据库

sql 复制代码
create database test;

数据库存放于/var/lib/mysql目录下。查看:


创建数据库,本质上就是在创建Linux下创建一个目录。

2.2.3 创建数据库表

可以看到有很多数据库,所以先选择其中一个数据库:

sql 复制代码
use test;

接下来就可以创建数据库表了:

sql 复制代码
mysql> create table person(
    -> name varchar(32),
    -> age int,
    -> gender varchar(2)
    -> );


在数据库中建立表,本质上就是在Linux中创建对应的文件。

2.2.4 在表中插入数据

sql 复制代码
insert into person (name, age, gender) values ('张三', '20', '男');

2.2.5 在表中查询数据

sql 复制代码
select* from person;


数据库本质其实也是文件,只不过这些文件并不由程序员直接操作,而是由数据库服务帮我们进行操作

三、服务器、数据库、表之间的关系

其实安装数据库服务器(mysqld)就是在linux上安装了一个数据库管理的应用程序,在后台以守护进程的方式运行。这个程序就可以一次管理多个数据库(表):

四、SQL语句分类

SQL语句分为三种:

DDL 数据定义语言,自然是用来维护存储数据的结构 ,代表指令:create,drop,alter,操作表
DML 数据操纵语言,用来对数据进行操作 ,代表指令:insert,delete,updata,操作数据

DML中又单独分了一个DQL,数据查询语言,代表指令:select
DCL 数据控制语言,主要负责权限管理和事务 ,代表指令:grant,revoke,commit

五、存储引擎

存储引擎:

数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。也就是真正和操作系统打交道的程序。

查找引擎:

sql 复制代码
show engines;


MySQL的核心就是插件式存储引擎,支持多种存储引擎

最常用的存储引擎就是InnoDB,MyISAM

默认的存储引擎是InnoDB

相关推荐
haogexiaole3 小时前
Redis优缺点
数据库·redis·缓存
在未来等你3 小时前
Redis面试精讲 Day 27:Redis 7.0/8.0新特性深度解析
数据库·redis·缓存·面试
新法国菜4 小时前
MySql知识梳理之DML语句
数据库·mysql
老华带你飞4 小时前
校园交友|基于SprinBoot+vue的校园交友网站(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园交友网站
许泽宇的技术分享5 小时前
Text2API与Text2SQL深度对比:自然语言驱动的数据交互革命
数据库·windows·microsoft
两张不够花8 小时前
Shell脚本源码安装Redis、MySQL、Mongodb、PostgreSQL(无报错版)
linux·数据库·redis·mysql·mongodb·postgresql·云计算
Java 码农8 小时前
nodejs 集成mongodb实现增删改查
数据库·mongodb
少陵野小Tommy8 小时前
Python能用古诗词数据库做什么7:根据标题、诗句查找诗歌
开发语言·数据库·python
花花无缺10 小时前
MySQL--B+树
后端·mysql
khystal10 小时前
HUMS 2023齿轮箱数据分析
数据库·数据分析·信号处理