【mysql】数据库基础

1. 认识数据库

  1. mysql 是一套提供数据存储的服务的网络程序,即它是数据库服务的客户端
  2. 数据库一般指的是,在内存或磁盘上存储的特斯那个组织结构是数据 ---- 将来在磁盘上存储的一套数据方案(可以通过字段和要求,返回结果)
  3. mysqld 是数据库服务的服务端 (属于守护进程,在后台运行)
  4. mysql 本质是基于 C(客户端)S(服务端)模式的一种网络服务
  5. 一般的文件提供了存储功能,而数据库既提供了存储和管理的功能

2. 主流数据库

  • SQL Sever: 微软的产品,Net程序员的最爱,中大型项目
  • Oracle:甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。
  • MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好
  • PostgreSQL :加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发
  • SQLite: 是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库 中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了
  • H2: 是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中

3. mysql 基本使用

(一)连接服务器

  • mysql - h + 主机名 + -P + 端口号 + -u + 用户名 + -p

注意:

  1. -h -P 指令可以不带,默认采取的是配置文件里面配置好的,默认地址是采用本地回环,端口号默认3306
  2. -p 输入的密码是不会在显示器上回显的

(二)创建数据库

  • create database + 数据库名;

(三)创建表

use + 数据库名

指定数据库

create table + 表名(

变量名 变量类型,

变量名 变量类型

...

);

在制定的数据库下创建表

(四)表中插入数据

insert into + 数据库名 (数据库中变量名1, 数据库中变量名2 ...) values ('', '' ...);

(五)查询表中内容

  • select * from + 数据库名;

查询数据库的内容

注意:

这里数据库可以和linux进行类比

  1. 建立数据库,相当于linux下创建一个目录
  2. 在数据库下创建一个表,相当于在目录下创建一个文件
  3. 在表中插入数据,相当于在文件内添加数据

所以数据库的本质也是文件,只不过这些文件不由程序员直接操作,而是交给数据库服务器去操作

4. MySQL架构

MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、Windows、

Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体

系结构的一致性

5. SQL分类

  1. DDL【data definition language】 数据定义语言,用来维护存储数据的结构

代表指令: create, drop, alter

  1. DML【data manipulation language】 数据操纵语言,用来对数据进行操作

代表指令: insert,delete,update

DML中又单独分了一个DQL,数据查询语言,代表指令: select

  1. DCL【Data Control Language】 数据控制语言,主要负责权限管理和事务

代表指令: grant,revoke,commit

6. 存储引擎

(一)认识存储引擎

存储引擎是:数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术

的实现方法

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

(二)查看存储引擎

  • show engines;

(三)存储引擎对比

相关推荐
0xDevNull1 小时前
MySQL数据冷热分离详解
后端·mysql
科技小花1 小时前
数据治理平台架构演进观察:AI原生设计如何重构企业数据管理范式
数据库·重构·架构·数据治理·ai-native·ai原生
一江寒逸1 小时前
零基础从入门到精通MySQL(中篇):进阶篇——吃透多表查询、事务核心与高级特性,搞定复杂业务SQL
数据库·sql·mysql
D4c-lovetrain1 小时前
linux个人心得22 (mysql)
数据库·mysql
阿里小阿希2 小时前
CentOS7 PostgreSQL 9.2 升级到 15 完整教程
数据库·postgresql
荒川之神2 小时前
Oracle 数据仓库雪花模型设计(完整实战方案)
数据库·数据仓库·oracle
做个文艺程序员2 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
不吃香菜学java2 小时前
Redis简单应用
数据库·spring boot·tomcat·maven
一个天蝎座 白勺 程序猿2 小时前
Apache IoTDB(15):IoTDB查询写回(INTO子句)深度解析——从语法到实战的ETL全链路指南
数据库·apache·etl·iotdb
不知名的老吴2 小时前
Redis的延迟瓶颈:TCP栈开销无法避免
数据库·redis·缓存