MySQL学习笔记_1_MySQL数据库管理系统概述

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 1、 MySQL架构 C/S: client / server架构 MySQL DBMS(Data Bank Management System): 数据库管理系统 客户端  服务器 ---> 数据库 ---> 数据表 ---> (记录/行,字段/列) 2、 数据库程序员需要精通的操作:(不是DBA(数据库管理员)) 一、为项目设计表 二、使用SQL语句(SQL语句编程) 其他、都可以通过工具来完成。

1、 MySQL架构

C/S: client / server架构

MySQL DBMS(Data Bank Management System): 数据库管理系统

客户端 <---> 服务器 ---> 数据库 ---> 数据表 ---> (记录/行,字段/列)


2、 数据库程序员需要精通的操作:(不是DBA(数据库管理员))

一、为项目设计表

二、使用SQL语句(SQL语句编程)

其他、都可以通过工具来完成。

3、MySQL文件结构

  配置文件:my.ini: 可以通过修改该文件,来配置MySQL相应的属性

bin文件目录: 保存了MySQL所有的命令

data文件目录: 保存了MySQL所包含的库,各个库里面包含的是相应的 表!

【备份时,只需将data文件夹打包备份出去就可以了,Linux下为var/】

4、SQL语句操作

SQL(Structured Query Language)是一种高级的非过程化的语言。

SQL语句:结构简单,功能强大,简单易学!

按功能划分:

DDL:创建数据库,数据表的语句

DML:操作数据的语句

DQL:数据库查询语句

DCL:数据控制的语句,可以工具执行。

如: \s 查看状态

show databases; 查看所有库

show tables;  查看所有表

desc tables; 查看表结构

show variables; 查看配置文件中的变量

DDL: 1、执行SQL语句,首先要连接到数据库服务器上:

mysql -h localhost -u root -p #以root用户登录到本地数据库

\s:查看数据库状态

show variables;:查看系统中默认配置的变量,谨记:以;结束

show variables like 'time_zone';

show variables like 'port'; : 查看端口

show databases; : 显示系统中所有的库

2、创建数据库

create database [name];

如: create database boost;

3、删除数据库

drop database [name];

如: drop datebase boost;

  拓展: cteate database if not exists boost;

drop database if exists boost;

4、创建一张数据表

create table boost.users(id int,name char(30),age int,sex char(3)); 

5、选择一个库作为默认数据库

use boost;

6、查看所有的表

show tables;

7、查看表结构

desc users;

8、删除表

drop table users; // drop table if exists users;

9、继续在默认数据库中创建

create table users(id int,name char(32),age int,sex char(2));

拓展:

       create table is not exists users(id int,name char(32));

10、再创建一张表

create table is not exists articles(title char(64));

DML: 11、插入数据

insert into users values('2012','xiaofang','34','nan');

或:  insert into users values(2012,'xiaofang',34,'man'); //弱类型检查

最佳实践: insert into users(id,name,age) values('2334','wangwu','56');

即可插入部分,又可不按顺序插入。

12、更新数据信息

update users set name='AShun' where id='2012';

推广: update users set name='XiaoChang',sex='Nv' where id='2012';

13、删除数据信息

delete from users where id='2012';

推广: delete from users //全部删除

DQL: 14、查看数据信息,查询语句

select * from users;

5、帮助的使用

1、查看帮助所能够提供的信息

? contents;

2、进一步查看详细信息

? data types; //需是上面所列出的信息类型

3、更进一步查看具体信息

? int;

? show;

? create tables; // 查看创建表结构语法

? update;

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
MySQL底层概述—9.ACID与事务
本文介绍了数据库事务的ACID特性(原子性、一致性、隔离性、持久性),以及事务控制的演进过程,包括排队、排它锁、读写锁和MVCC(多版本并发控制)。文章详细解释了每个特性的含义及其在MySQL中的实现方式,并探讨了事务隔离级别的类型及其实现机制。重点内容包括:ACID特性(原子性、持久性、隔离性和一致性的定义及其实现方式)、事务控制演进(从简单的全局排队到复杂的MVCC,逐步提升并发性能)、MVCC机制(通过undo log多版本链和Read View实现高效并发控制)、事务隔离级别(析了四种隔离级别(读未提交、读已提交、可重复读、可串行化)的特点及适用场景)、隔离级别与锁的关系。
MySQL底层概述—2.InnoDB磁盘结构
InnoDB磁盘结构主要包括表空间(Tablespaces)、数据字典(Data Dictionary)、双写缓冲区(Double Write Buffer)、重做日志(redo log)和撤销日志(undo log)。其中,表空间分为系统、独立、通用、Undo及临时表空间,分别用于存储不同类型的数据。数据字典从MySQL 8.0起不再依赖.frm文件,转而使用InnoDB引擎存储,支持事务原子性DDL操作。
270 100
MySQL底层概述—2.InnoDB磁盘结构
MySQL底层概述—1.InnoDB内存结构
本文介绍了InnoDB引擎的关键组件和机制,包括引擎架构、Buffer Pool、Page管理机制、Change Buffer、Log Buffer及Adaptive Hash Index。
293 97
MySQL底层概述—1.InnoDB内存结构
MySQL索引学习笔记
本文深入探讨了MySQL数据库中慢查询分析的关键概念和技术手段。
336 80
MySQL底层概述—10.InnoDB锁机制
本文介绍了:锁概述、锁分类、全局锁实战、表级锁(偏读)实战、行级锁升级表级锁实战、间隙锁实战、临键锁实战、幻读演示和解决、行级锁(偏写)优化建议、乐观锁实战、行锁原理分析、死锁与解决方案
148 24
MySQL底层概述—10.InnoDB锁机制
MySQL底层概述—8.JOIN排序索引优化
本文主要介绍了MySQL中几种关键的优化技术和概念,包括Join算法原理、IN和EXISTS函数的使用场景、索引排序与额外排序(Using filesort)的区别及优化方法、以及单表和多表查询的索引优化策略。
137 22
MySQL底层概述—8.JOIN排序索引优化
MySQL底层概述—7.优化原则及慢查询
本文主要介绍了:Explain概述、Explain详解、索引优化数据准备、索引优化原则详解、慢查询设置与测试、慢查询SQL优化思路
153 15
MySQL底层概述—7.优化原则及慢查询
MySQL底层概述—6.索引原理
本文详细回顾了:索引原理、二叉查找树、平衡二叉树(AVL树)、红黑树、B-Tree、B+Tree、Hash索引、聚簇索引与非聚簇索引。
118 11
MySQL底层概述—6.索引原理
MySQL底层概述—5.InnoDB参数优化
本文介绍了MySQL数据库中与内存、日志和IO线程相关的参数优化,旨在提升数据库性能。主要内容包括: 1. 内存相关参数优化:缓冲池内存大小配置、配置多个Buffer Pool实例、Chunk大小配置、InnoDB缓存性能评估、Page管理相关参数、Change Buffer相关参数优化。 2. 日志相关参数优化:日志缓冲区配置、日志文件参数优化。 3. IO线程相关参数优化: 查询缓存参数、脏页刷盘参数、LRU链表参数、脏页刷盘相关参数。
116 12
MySQL底层概述—5.InnoDB参数优化
MySQL底层概述—4.InnoDB数据文件
本文介绍了InnoDB表空间文件结构及其组成部分,包括表空间、段、区、页和行。表空间是最高逻辑层,包含多个段;段由若干个区组成,每个区包含64个连续的页,页用于存储多条行记录。文章还详细解析了Page结构,分为通用部分(文件头与文件尾)、数据记录部分和页目录部分。此外,文中探讨了行记录格式,包括四种行格式(Redundant、Compact、Dynamic和Compressed),重点介绍了Compact行记录格式及其溢出机制。最后,文章解释了不同行格式的特点及应用场景,帮助理解InnoDB存储引擎的工作原理。
MySQL底层概述—4.InnoDB数据文件
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等