运维——MYSQL(一)

本文介绍了数据库系统的基本概念,包括DBMS的功能、数据库架构、RDBMS的特点及范式要求。此外,还探讨了SQL语言及其解释器的工作原理,以及MariaDB的特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库是数据的汇集,它以一定的形式存于存储介质上

DBMS是管理数据库的系统文件,它实现数据库系统的各种功能。是数据库系统的核 心。程序与数据相互独立

DBA(数据库管理员):负责数据库的规划、设计、协调、维护和管理等工作。

应用程序指以数据库为基础的应用程序。

RDBMS:关系型数据管理系统

数据库管理系统的基本功能
数据定义
数据处理
数据安全

数据备份

数据库系统的架构

单机架构 :数据库存放在一台主机上,并且访问也在本台主机(acsses)
大型主机/终端架构:multics  一个主机带很多终端(现在极少用)
主从式架构(C/S):现在的主流  一个服务器带很多终端
分布式架构


不是所有的数据库都是关系型数据库   如:  memcached  redis  mongodb


关系型数据库:
关系:就是二维表。并满足如下性质
表中的行、列次序并不重要
行row:表中的每一行,又称为一条记录
列column:表中的每一列,称为属性,字段
主键(primary key):用于唯一确定一个记录的字段   简称PK

域domain:属性的取值范围,如,性别只能是男女两个值

最大缺点性能不好

RDBMS:relational date base manage system分类
MySQL: MySQL(6上转用) MariaDB(7专用), Percona Server
PostgreSQL: 简称为pgsql,EnterpriseDB
Oracle:
MSSQL:
DB2:


事务transaction:多个操作被当作一个整体对待
ACID特性:(面试会问)
A: 原子性
C:一致性  dirty  data (脏数据)还未做完的数据
I: 隔离性

D:持久性

实体-联系模型E-R

实体Entity
客观存在并可以相互区分的客观事物或抽象事件称为实体

在E-R图中用矩形表示实体,把实体名写在框内

属性:实体所具有的特征或性质

联系:是数据之间的关联的集合,是客观存在的应用语义链

实体内部的联系:指组成实体的各属性之间的联系。

                                    如职工实体中,职工号和部门经理之间有一种关联联系

实体之间的联系:指不同实体之间联系。例:学生选课实体和学生基本信息实体之间
实体之间的联系用菱形框表示

联系类型(表与表之间的关系)
pk 主键   fk外键 (foreign key) uk唯一键 可以为空
一对一联系(1:1)
一对多联系(1:n)
多对多联系(m:n) (一般构建第三张表)

数据三要素
数据结构:
包括两类:
一类是与数据类型、内容、性质有关的对象,比如关系模型中的
域、属性和关系等;
另一类是与数据之间联系有关的对象,它从数据组织层表达数据记录与字段的结构

数据的操作:
数据提取:在数据集合中提取感兴趣的内容。(SELECT)
数据更新:变更数据库中的数据。(INSERT、DELETE、UPDATE)

数据的约束条件 :是一组完整性规则的集合
实体(行)完整性 Entity integrity:保证每一行的记录都不同  
域(列)完整性 Domain Integrity :限定某个字段在某一个范围内
参考完整性 Referential Integrity:就是外键 

简易数据规划流程
第一阶段:收集数据,得到字段
收集必要且完整的数据项
转换成数据表的字段
第二阶段:把字段分类,归入表,建立表的关联
关联:表和表间的关系
分割数据表并建立关联的优点
节省空间
减少输入错误
方便数据修改
第三阶段:
规范化数据库


数据库的正规化分析
RDMBS设计范式基础概念
设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不
同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小

目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴德斯科范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)即可


范式:

1NF:无重复的列,每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。除去同类型的字段,就是无重复的列

说明:第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库
2NF:属性完全依赖于主键,第二范式必须先满足第一范式,要求表中的每个行必须可以被唯一地区分。通常为表加上一个列,以存储各个实例的唯一标识PK,非PK的字段需要与整个PK有直接相关性
3NF:属性不依赖于其它非主属性,满足第三范式必须先满足第二范式。第三范式要求一个数据库表中不包含已在其它表中已包含的非主关键字信息,非PK的字段间不能有从属关系


SQL概念
SQL: Structure Query Language结构化查询语言
SQL解释器:
数据存储协议:应用层协议,C/S
S:server, 监听于套接字,接收并处理客户端的应用请求
C:Client
程序接口
CLI
GUI
应用编程接口
ODBC:Open Database Connectivity
JDBC:Java Data Base Connectivity
约束
约束:constraint,表中的数据要遵守的限制

主键:一个或多个字段的组合(复合字段),填入的数据必须能在本表中唯一标识本行;必须提供数据,即NOT NULL,一个表只能有一个

惟一键:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行;允许为NULL,一个表可以存在多个

外键:一个表中的某字段可填入的数据取决于另一个表的主键或唯一键已有的数据
检查:字段值在一定范围内

基本概念
索引:将表中的一个或多个字段中的数据复制一份另存,并且此些需要按特定次序排序存储
关系运算:
选择:挑选出符合条件的行
投影:挑选出需要的字段
连接:表间字段的关联(外键)
数据模型
数据抽象:
物理层:数据存储格式,即RDBMS在磁盘上如何组织文件
逻辑层:DBA角度,描述存储什么数据,以及数据间存在什么样的关系
视图层:用户角度,描述DB中的部分数据
关系模型的分类:
关系模型
基于对象的关系模型
半结构化的关系模型:XML数据

MariaDB的特性
插件式存储引擎:也称为“表类型”,存储管理器有多种实现版本,功能和特
性可能均略有差别;用户可根据需要灵活选择,Mysql5.5.5开始innoDB引擎是
MYSQL默认引擎
MyISAM ==> Aria
InnoDB ==> XtraDB
存储引擎比较
单进程,多线程
诸多扩展和新特性
提供了较多测试组件
开源
以下是运维工程师在MySQL面试中可能会遇到的问题: 1. 如果发现MySQL导致的性能问题,你会如何解决? - 首先,可以使用show processlist命令查看当前MySQL的会话情况,确定是否有消耗资源的SQL语句正在运行。然后,可以通过优化查询语句、调整索引、增加缓存等方法来改善性能问题。 2. 请列举些常用的MySQL数据库配置文件。 - 些常用的MySQL数据库配置文件包括my.cnf、my.ini和my-default.ini。 3. 你所在公司使用的MySQL数据库是哪个版本?使用的存储引擎是什么? - 我们公司使用的是MySQL 5.7版本的数据库,存储引擎是InnoDB。选择InnoDB的原因是它具有安全事务的提交、回滚和崩溃恢复能力,虽然效率相对较低,但在业务中安全性是首要考虑的。 4. 请解释MySQL主从复制的原理。 - MySQL主从复制的原理是,主服务器将对数据库的修改记录放入bin-log日志中,从服务器通过IO线程获取主服务器上的这些修改记录,并通过dump线程将二进制日志发送到从服务器的中继日志上。然后,从服务器的SQL线程读取中继日志中的二进制日志,执行对数据库的修改,从而实现主从同步。 5. 如何查看MySQL数据库中有哪些用户? - 可以使用以下语句查询MySQL数据库中的用户信息:select user, host from mysql.user。 6. MySQL有哪些常见的存储引擎? - MySQL常见的存储引擎包括InnoDB存储引擎和MyISAM存储引擎[6]。 7. 你知道哪些MySQL的版本? - 了解的MySQL版本有MySQL 5.7、MySQL 5.6和MySQL 5.1。MySQL 5.7是最新的稳定发布系列,MySQL 5.6是相对稳定的发布系列,MySQL 5.1是个稳定的发布系列。需要注意的是,较低于5.0的老版本,官方将不再提供支持。 希望这些问题的回答对你有所帮助。如果有其他问题,请随时提问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [MySQL面试常问问题(高可用/性能 + 运维) —— 赶快收藏](https://blog.youkuaiyun.com/weixin_43889788/article/details/128417356)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [常用mysql数据库配置文件](https://download.youkuaiyun.com/download/zslsh44/88278582)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [运维工程师面试题--(5 )(mysql篇)](https://blog.youkuaiyun.com/qq_44947614/article/details/106976504)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值