【MySQL】数据库基础

文章目录

  • [1. 登陆选项的认识](#1. 登陆选项的认识)
  • [2. 什么是数据库](#2. 什么是数据库)
  • [3. 存储数据为什么不用文件?](#3. 存储数据为什么不用文件?)
  • [4. 见一见数据库](#4. 见一见数据库)
  • [5. SQL语句分类](#5. SQL语句分类)
  • [6. 查看MysQL存储引擎](#6. 查看MysQL存储引擎)

1. 登陆选项的认识

mysql -h 指明部署mysql服务的主机 127.0.0.1(单机访问)
mysql -P 指明要访问的端口号 (默认为3306)
mysql -u 指明登陆用户
mysql -p 指明需要输入的密码


对于 mysql登录指令 mysql -h 127.0.0.1 -P 3306 -u root -p q
若不加 - h ,则连接数据库时,默认连接本地服务器上所搭建的mysql服务
若 不加 -P ,则当前不使用用户自定义的端口,而是采用默认配置的3306端口号

由于 h和P都可以省略,所以可以只写成 mysql -u root - p 也可登录mysql


2. 什么是数据库

mysql 称之为 数据库的客户端


mysqld 称之为 数据库的服务端

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


mysql 是一套提供数据存取的服务的网络程序
数据库一般指的是,在磁盘或者内存中存储的特定结构组织的数据, 即在磁盘中存储的一套数据库方案
数据库服务 指的是 mysqld

3. 存储数据为什么不用文件?

一般的文件确实提供了数据的存储功能,但是文件并没有提供非常好的数据管理能力(站在用户角度)
每一个对内容做相关的管理工作, 全部都要程序员自己去做, 所以不方便


数据库本质:对数据内容存储的一套解决方案
将字段或要求给数据库,数据库直接给出结果
此时对内容做相关的管理工作,全部由数据库来做, 就不需要程序员自己做了


mysql提出某种需求后,mysql服务端(mysqld) 去数据库文件中 进行搜索 增加 等操作,
将结果交给mysqld,mysqld再将结果交给mysql


4. 见一见数据库

创建数据库

样例:
使用mysql建立一个数据库 建立一张表结构,插入一些数据


在终端1中输入 show databases;


在终端2中输入 vim /etc/my.cnf 指令

datadir 会保存mysql对应的数据存放的路径 ,默认存放路径为 /var/lib/mysql


退出vim后,输入 cd /var/lib/mysql 指令
数据存放的目录当中对应的数据内容


建立数据库
create database hello;

通过mysql 的客户端 向mysqld 服务端 下达 了一个创建数据库的请求


在终端1中输入 show databases; 查看数据库

发现此时多个一个hello的数据库


由于终端1创建了一个数据库,在终端2中,在数据目录中也会多了一个目录,叫做hello

结论1:建立数据库 ,本质就是Linux下的一个目录


创建表

建立表之前,需要选择数据库,此时选择了hello这个数据库


在终端1中,使用 create table student( 创建一个张表 student
name 叫做 类名称 varchar 叫做 类型

名字name的 类型为32个字节
年龄age 的类型为int
性别gender的 类型为2个字节


此时在终端2中可以看到hello的数据库中存在文件

结论2:在数据库内建立表,本质就是在Linux下创建对应的文件即可


insert into student (name,age,gender) values ('李四',19,'男');
向name age gender 中插入 数据
插入数据为 李四 19 男


使用 select * from student; 将学生信息筛选出来

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

5. SQL语句分类

DDL 数据定义语言 用来维护存储结构的相关语句
如:create (创建表) 、alter(修改表结构)

DML 数据操纵语言 用来对数据进行操作
如:insert(插入数据) 、delete(删除数据)

DCL 数据控制语言 负责权限管理和事务
如:grant(赋权)、revoke(取消权限)

6. 查看MysQL存储引擎

存储引擎:数据库管理系统如何存储数据等 技术 的具体实现方法

使用 show engines \G 查看存储引擎


常用的储存引擎为 InnoDB MyISAM

相关推荐
、BeYourself8 分钟前
PostgreSQL 向量扩展插件pgvector安装
数据库·postgresql
RPA机器人就选八爪鱼27 分钟前
RPA在银行IT运维领域的应用场景与价值分析
大数据·运维·数据库·人工智能·机器人·rpa
廋到被风吹走40 分钟前
【数据库】【Oracle】函数整理
数据库·oracle
冉冰学姐1 小时前
SSM校园二手物品交易系统051x4(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·商品全流程管理
遇见火星1 小时前
MySQL 5.7/8.0 物理备份实战:XtraBackup 全量+增量+验证+恢复
数据库·mysql·adb·xtrabackup·mysql8.0
妄汐霜1 小时前
小白学习笔记(MySQL增删改查)
笔记·学习·mysql
咕噜企业分发小米1 小时前
阿里云函数计算如何与ECS共享MySQL数据库?
数据库·mysql·阿里云
martin10171 小时前
Oracle 11g 数据库卡顿排查与实战优化:一次真实的慢 SQL 定位全过程
数据库·后端
Linux Huang1 小时前
spring注册组件/服务无效,问题排查
大数据·服务器·数据库·spring
SweetCode1 小时前
汉诺塔问题
android·java·数据库