MySQL体系管理
2022/8/4 2:22:55
本文主要是介绍MySQL体系管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Mysql体系管理
客户端与服务端模型
C/S架构的服务
client/server
客户端
- mysql
- mysqladmin
- mysqldump
mysql的连接方式
- TCP/IP
mysql -uroot -p123 -h10.0.0.51
- socket
mysql -uroot -p123 -S /application/mysql/tmp/mysql.sock
问题
1.mysql默认连接方式是什么? socket 不需要经过TCP三次握手四次挥手 2.mysql -uroot -p123 socket 什么都不加,走的是默认方式 3.mysql -uroot -p123 -hllocalhost socket 不是所有的-h都是TCP 4.mysql -uroot -p123 -h127.0.0.1 TCP 只要-h后面加了ip,就是TCP # 错误写法 5.mysql -uroot -p123 -h10.0.0.61 -S /application/mysql/tmp/mysql.sock TCP 6.mysql -uroot -p123 -S /application/mysql/tmp/mysql.sock -h10.0.0.61 TCP 只要加-h后面是IP地址,不管socket写在什么位置,一律TCP连接
mysql服务器构成
实例
mysql的后台进程+多个线程+预分配内存结构
mysql守护进程的程序结构
- 连接层
1.提供两种连接方式 - TCP - socket 2.验证用户的合法性 3.提供了一个专用的线程,接收SQL,并与SQL层进行交互
- SQL层
1.接收连接层传递来的有权限的SQL语句 2.验证SQL语句(syntax)的语法 3.验证SQL语句的语义,执行的是查询,删除,修改...之类的操作 - DML - DDL - DCL - DQL - DTL 4.解析器,解析SQL语句,生成多种执行计划 5.优化器,根据解析器生成的多种执行计划,选择最优的执行 6.执行器,执行最优的一条SQL语句 - 提供一个专用的线程,和存储引擎交互 7.接收存储引擎返回的数据,将数据返回给连接层 8.如果前面有缓存,将数据写入缓存 9.如果开启binlog,记录日志(binlog)
- 存储引擎层
1.接收SQL层传递来的SQL语句信息 2.去对应的库下找对应的表中数据,结构化成表的形式,返回给SQL层 3.提供了一个专用的线程和SQL层交互
mysql的结构
-
逻辑结构
mysql的逻辑对象;做为管理人员的操作对象
- 库
- 表
- 元数据
- 列(字段,列名)
- 其他属性(数据类型,是否非空、默认值、主键、自增...
- 真实数据
- 物理结构
- 最底层的数据文件
mysql表结构划分
段: 有多个区构成,一张表就是一个段
区: 由多个页构成,一个区,由64个页构成,1m
(块、页)block:mysql最小的存储单位,默认16k
使用systemctl管理mysql
[root@db04 bin]# vim /usr/lib/systemd/system/mysql.service [Unit] Description=MySQL Server Documentation=man:mysqld(8) Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target After=syslog.target [Install] WantedBy=multi-user.target [Service] User=mysql Group=mysql ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf LimitNOFILE = 5000
这篇关于MySQL体系管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-19Mysql安装教程:新手必看的详细安装指南
- 2024-11-18Mysql安装入门:新手必读指南
- 2024-11-18MySQL事务MVCC原理入门详解
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南