From 54248276cfb23bf09cb27413eed53df21ad063ff Mon Sep 17 00:00:00 2001 From: AaronXu <718827633@qq.com> Date: Sat, 31 Jan 2026 18:28:45 +0800 Subject: [PATCH] =?UTF-8?q?01-31-=E5=91=A8=E5=85=AD=5F18-28-45?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 02.企业服务/07.负载均衡.md | 2 +- 03.数据库/01.Mysql.md | 2503 ++++++++++------- ...7ueBBseL6MvenH-173958382539012.png!thumbnail} | Bin ...57ueBBseL6MvenH-173958392751660.png!thumbnail | Bin 0 -> 1361364 bytes ...7ueBBseL6MvenH-1739583976575105.png!thumbnail | Bin 0 -> 1361364 bytes ...sFS9HElaslP5ss-173958382539016.png!thumbnail} | Bin ...TsFS9HElaslP5ss-173958392751664.png!thumbnail | Bin 0 -> 208648 bytes ...sbxGtxBZzy6d1kN-17395838253895.png!thumbnail} | Bin ...sbxGtxBZzy6d1kN-173958392751553.png!thumbnail | Bin 0 -> 23943 bytes ...sbxGtxBZzy6d1kN-173958397657599.png!thumbnail | Bin 0 -> 23943 bytes ...WukGpm4kWFCtKy-173958382539013.png!thumbnail} | Bin ...1WukGpm4kWFCtKy-173958392751661.png!thumbnail | Bin 0 -> 589648 bytes ...WukGpm4kWFCtKy-1739583976575106.png!thumbnail | Bin 0 -> 589648 bytes ...T6YsqLtNayuI6Q-173958382539014.png!thumbnail} | Bin ...ET6YsqLtNayuI6Q-173958392751662.png!thumbnail | Bin 0 -> 629941 bytes ...T6YsqLtNayuI6Q-1739583976575107.png!thumbnail | Bin 0 -> 629941 bytes ...nL2YEThjuHERQPZ-17395838253896.png!thumbnail} | Bin ...nL2YEThjuHERQPZ-173958392751554.png!thumbnail | Bin 0 -> 10424 bytes ...L2YEThjuHERQPZ-1739583976575100.png!thumbnail | Bin 0 -> 10424 bytes ...aagjFIBB8C0CCF-173958382539015.png!thumbnail} | Bin ...kaagjFIBB8C0CCF-173958392751663.png!thumbnail | Bin 0 -> 323018 bytes ...aagjFIBB8C0CCF-1739583976575108.png!thumbnail | Bin 0 -> 323018 bytes ...8Ndjn2BuNL9IUl2-17395838253882.png!thumbnail} | Bin ...8Ndjn2BuNL9IUl2-173958392751550.png!thumbnail | Bin 0 -> 1003342 bytes ...ocess.jpg => MHA_process-173958382539124.jpg} | Bin .../01.Mysql/MHA_process-173958392751772.jpg | Bin 0 -> 78369 bytes .../01.Mysql/MHA_process-1739583976576116.jpg | Bin 0 -> 78369 bytes ...MHA_topo.jpg => MHA_topo-173958382539123.jpg} | Bin .../01.Mysql/MHA_topo-173958392751771.jpg | Bin 0 -> 21750 bytes .../01.Mysql/MHA_topo-1739583976576115.jpg | Bin 0 -> 21750 bytes ...5j17V2j8h153YXZ-17395838253881.png!thumbnail} | Bin ...5j17V2j8h153YXZ-173958392751549.png!thumbnail | Bin 0 -> 37933 bytes ...0AJl9FjrygD1S4-173958382538911.png!thumbnail} | Bin ...w0AJl9FjrygD1S4-173958392751659.png!thumbnail | Bin 0 -> 14290 bytes ...0AJl9FjrygD1S4-1739583976575104.png!thumbnail | Bin 0 -> 14290 bytes ...CtzPCFRsaTUTp3A-17395838253898.png!thumbnail} | Bin ...CtzPCFRsaTUTp3A-173958392751656.png!thumbnail | Bin 0 -> 7268 bytes ...tzPCFRsaTUTp3A-1739583976575102.png!thumbnail | Bin 0 -> 7268 bytes ...gMqU13UrbmuyFz0-17395838253899.png!thumbnail} | Bin ...gMqU13UrbmuyFz0-173958392751657.png!thumbnail | Bin 0 -> 59888 bytes .../01.Mysql/image-20240721145430464.png | Bin 0 -> 19958 bytes .../01.Mysql/image-20240721151426381.png | Bin 0 -> 65891 bytes ...1P7hTxOM3vKCIG2-17395838253894.png!thumbnail} | Bin ...1P7hTxOM3vKCIG2-173958392751552.png!thumbnail | Bin 0 -> 69666 bytes ...1P7hTxOM3vKCIG2-173958397657498.png!thumbnail | Bin 0 -> 69666 bytes ...K3mQW6m9VMwIgVD-17395838253897.png!thumbnail} | Bin ...K3mQW6m9VMwIgVD-173958392751555.png!thumbnail | Bin 0 -> 18604 bytes ...3mQW6m9VMwIgVD-1739583976575101.png!thumbnail | Bin 0 -> 18604 bytes ...l_goal.jpg => mysql_goal-173958382539022.jpg} | Bin .../01.Mysql/mysql_goal-173958392751770.jpg | Bin 0 -> 47887 bytes .../01.Mysql/mysql_goal-1739583976576114.jpg | Bin 0 -> 47887 bytes ...te_mem_larger_local_disk-173958382539020.jpg} | Bin ...ote_mem_larger_local_disk-173958392751768.jpg | Bin 0 -> 35734 bytes ...te_mem_larger_local_disk-1739583976576112.jpg | Bin 0 -> 35734 bytes ...synchronized_dual_master-173958382539021.jpg} | Bin ..._synchronized_dual_master-173958392751769.jpg | Bin 0 -> 33156 bytes ...synchronized_dual_master-1739583976576113.jpg | Bin 0 -> 33156 bytes .../{sql_MS.jpg => sql_MS-173958382539019.jpg} | Bin 03.数据库/01.Mysql/sql_MS-173958392751667.jpg | Bin 0 -> 50461 bytes .../01.Mysql/sql_MS-1739583976576111.jpg | Bin 0 -> 50461 bytes ...L76EP1rBEQKcpeU-17395838253893.png!thumbnail} | Bin ...L76EP1rBEQKcpeU-173958392751551.png!thumbnail | Bin 0 -> 12569 bytes ...L76EP1rBEQKcpeU-173958397657497.png!thumbnail | Bin 0 -> 12569 bytes ...oOhC6Rn5HuTfxg-173958382538910.png!thumbnail} | Bin ...CoOhC6Rn5HuTfxg-173958392751658.png!thumbnail | Bin 0 -> 8290 bytes ...oOhC6Rn5HuTfxg-1739583976575103.png!thumbnail | Bin 0 -> 8290 bytes ...H9iBpInyy8pwrk-173958382539017.png!thumbnail} | Bin ...xH9iBpInyy8pwrk-173958392751665.png!thumbnail | Bin 0 -> 20332 bytes ...H9iBpInyy8pwrk-1739583976575109.png!thumbnail | Bin 0 -> 20332 bytes ...WTJJz8GZkilbZN-173958382539018.png!thumbnail} | Bin ...hWTJJz8GZkilbZN-173958392751666.png!thumbnail | Bin 0 -> 393180 bytes ...WTJJz8GZkilbZN-1739583976575110.png!thumbnail | Bin 0 -> 393180 bytes 72 files changed, 1495 insertions(+), 1010 deletions(-) rename 03.数据库/01.Mysql/{157ueBBseL6MvenH.png!thumbnail => 157ueBBseL6MvenH-173958382539012.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/157ueBBseL6MvenH-173958392751660.png!thumbnail create mode 100644 03.数据库/01.Mysql/157ueBBseL6MvenH-1739583976575105.png!thumbnail rename 03.数据库/01.Mysql/{5TsFS9HElaslP5ss.png!thumbnail => 5TsFS9HElaslP5ss-173958382539016.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/5TsFS9HElaslP5ss-173958392751664.png!thumbnail rename 03.数据库/01.Mysql/{DsbxGtxBZzy6d1kN.png!thumbnail => DsbxGtxBZzy6d1kN-17395838253895.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/DsbxGtxBZzy6d1kN-173958392751553.png!thumbnail create mode 100644 03.数据库/01.Mysql/DsbxGtxBZzy6d1kN-173958397657599.png!thumbnail rename 03.数据库/01.Mysql/{G1WukGpm4kWFCtKy.png!thumbnail => G1WukGpm4kWFCtKy-173958382539013.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/G1WukGpm4kWFCtKy-173958392751661.png!thumbnail create mode 100644 03.数据库/01.Mysql/G1WukGpm4kWFCtKy-1739583976575106.png!thumbnail rename 03.数据库/01.Mysql/{HET6YsqLtNayuI6Q.png!thumbnail => HET6YsqLtNayuI6Q-173958382539014.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/HET6YsqLtNayuI6Q-173958392751662.png!thumbnail create mode 100644 03.数据库/01.Mysql/HET6YsqLtNayuI6Q-1739583976575107.png!thumbnail rename 03.数据库/01.Mysql/{JnL2YEThjuHERQPZ.png!thumbnail => JnL2YEThjuHERQPZ-17395838253896.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/JnL2YEThjuHERQPZ-173958392751554.png!thumbnail create mode 100644 03.数据库/01.Mysql/JnL2YEThjuHERQPZ-1739583976575100.png!thumbnail rename 03.数据库/01.Mysql/{KkaagjFIBB8C0CCF.png!thumbnail => KkaagjFIBB8C0CCF-173958382539015.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/KkaagjFIBB8C0CCF-173958392751663.png!thumbnail create mode 100644 03.数据库/01.Mysql/KkaagjFIBB8C0CCF-1739583976575108.png!thumbnail rename 03.数据库/01.Mysql/{L8Ndjn2BuNL9IUl2.png!thumbnail => L8Ndjn2BuNL9IUl2-17395838253882.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/L8Ndjn2BuNL9IUl2-173958392751550.png!thumbnail rename 03.数据库/01.Mysql/{MHA_process.jpg => MHA_process-173958382539124.jpg} (100%) create mode 100644 03.数据库/01.Mysql/MHA_process-173958392751772.jpg create mode 100644 03.数据库/01.Mysql/MHA_process-1739583976576116.jpg rename 03.数据库/01.Mysql/{MHA_topo.jpg => MHA_topo-173958382539123.jpg} (100%) create mode 100644 03.数据库/01.Mysql/MHA_topo-173958392751771.jpg create mode 100644 03.数据库/01.Mysql/MHA_topo-1739583976576115.jpg rename 03.数据库/01.Mysql/{R5j17V2j8h153YXZ.png!thumbnail => R5j17V2j8h153YXZ-17395838253881.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/R5j17V2j8h153YXZ-173958392751549.png!thumbnail rename 03.数据库/01.Mysql/{Tw0AJl9FjrygD1S4.png!thumbnail => Tw0AJl9FjrygD1S4-173958382538911.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/Tw0AJl9FjrygD1S4-173958392751659.png!thumbnail create mode 100644 03.数据库/01.Mysql/Tw0AJl9FjrygD1S4-1739583976575104.png!thumbnail rename 03.数据库/01.Mysql/{WCtzPCFRsaTUTp3A.png!thumbnail => WCtzPCFRsaTUTp3A-17395838253898.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/WCtzPCFRsaTUTp3A-173958392751656.png!thumbnail create mode 100644 03.数据库/01.Mysql/WCtzPCFRsaTUTp3A-1739583976575102.png!thumbnail rename 03.数据库/01.Mysql/{agMqU13UrbmuyFz0.png!thumbnail => agMqU13UrbmuyFz0-17395838253899.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/agMqU13UrbmuyFz0-173958392751657.png!thumbnail create mode 100644 03.数据库/01.Mysql/image-20240721145430464.png create mode 100644 03.数据库/01.Mysql/image-20240721151426381.png rename 03.数据库/01.Mysql/{k1P7hTxOM3vKCIG2.png!thumbnail => k1P7hTxOM3vKCIG2-17395838253894.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/k1P7hTxOM3vKCIG2-173958392751552.png!thumbnail create mode 100644 03.数据库/01.Mysql/k1P7hTxOM3vKCIG2-173958397657498.png!thumbnail rename 03.数据库/01.Mysql/{lK3mQW6m9VMwIgVD.png!thumbnail => lK3mQW6m9VMwIgVD-17395838253897.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/lK3mQW6m9VMwIgVD-173958392751555.png!thumbnail create mode 100644 03.数据库/01.Mysql/lK3mQW6m9VMwIgVD-1739583976575101.png!thumbnail rename 03.数据库/01.Mysql/{mysql_goal.jpg => mysql_goal-173958382539022.jpg} (100%) create mode 100644 03.数据库/01.Mysql/mysql_goal-173958392751770.jpg create mode 100644 03.数据库/01.Mysql/mysql_goal-1739583976576114.jpg rename 03.数据库/01.Mysql/{remote_mem_larger_local_disk.jpg => remote_mem_larger_local_disk-173958382539020.jpg} (100%) create mode 100644 03.数据库/01.Mysql/remote_mem_larger_local_disk-173958392751768.jpg create mode 100644 03.数据库/01.Mysql/remote_mem_larger_local_disk-1739583976576112.jpg rename 03.数据库/01.Mysql/{semi_synchronized_dual_master.jpg => semi_synchronized_dual_master-173958382539021.jpg} (100%) create mode 100644 03.数据库/01.Mysql/semi_synchronized_dual_master-173958392751769.jpg create mode 100644 03.数据库/01.Mysql/semi_synchronized_dual_master-1739583976576113.jpg rename 03.数据库/01.Mysql/{sql_MS.jpg => sql_MS-173958382539019.jpg} (100%) create mode 100644 03.数据库/01.Mysql/sql_MS-173958392751667.jpg create mode 100644 03.数据库/01.Mysql/sql_MS-1739583976576111.jpg rename 03.数据库/01.Mysql/{tL76EP1rBEQKcpeU.png!thumbnail => tL76EP1rBEQKcpeU-17395838253893.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/tL76EP1rBEQKcpeU-173958392751551.png!thumbnail create mode 100644 03.数据库/01.Mysql/tL76EP1rBEQKcpeU-173958397657497.png!thumbnail rename 03.数据库/01.Mysql/{uCoOhC6Rn5HuTfxg.png!thumbnail => uCoOhC6Rn5HuTfxg-173958382538910.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/uCoOhC6Rn5HuTfxg-173958392751658.png!thumbnail create mode 100644 03.数据库/01.Mysql/uCoOhC6Rn5HuTfxg-1739583976575103.png!thumbnail rename 03.数据库/01.Mysql/{uxH9iBpInyy8pwrk.png!thumbnail => uxH9iBpInyy8pwrk-173958382539017.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/uxH9iBpInyy8pwrk-173958392751665.png!thumbnail create mode 100644 03.数据库/01.Mysql/uxH9iBpInyy8pwrk-1739583976575109.png!thumbnail rename 03.数据库/01.Mysql/{yhWTJJz8GZkilbZN.png!thumbnail => yhWTJJz8GZkilbZN-173958382539018.png!thumbnail} (100%) create mode 100644 03.数据库/01.Mysql/yhWTJJz8GZkilbZN-173958392751666.png!thumbnail create mode 100644 03.数据库/01.Mysql/yhWTJJz8GZkilbZN-1739583976575110.png!thumbnail diff --git a/02.企业服务/07.负载均衡.md b/02.企业服务/07.负载均衡.md index db25d92..8f30391 100644 --- a/02.企业服务/07.负载均衡.md +++ b/02.企业服务/07.负载均衡.md @@ -1575,7 +1575,7 @@ net.ipv4.ip_forward = 1 [root@lvs ~]# sysctl -p net.ipv4.ip_forward = 1 -[root@lvs ~]# iptables -t nat -A POSTROUTING -s 192.168.153.0/24 -j MASQUERADE +[root@lvs ~]# iptables -t nat -A POSTROUTING -s 192.168.65.0/24 -j MASQUERADE [root@lvs ~]# iptables -t nat -L -n ``` diff --git a/03.数据库/01.Mysql.md b/03.数据库/01.Mysql.md index 4986b89..a5efcd7 100644 --- a/03.数据库/01.Mysql.md +++ b/03.数据库/01.Mysql.md @@ -1,33 +1,6 @@ -# 1. MySQL介绍 +# 1. 数据库介绍 -## 1.1 DBA工作内容 - -![img](01.Mysql/R5j17V2j8h153YXZ.png!thumbnail) - -- 数据管理 - - 增删改查 -- 用户管理 - - grant all on *.* to all@'%' identified by '123'; - - 敲完这条命令就可以等着被开除了( • ̀ω•́ )✧ - - root,运维用户ops,程序连接用户(只读用户,读写用户) -- 集群管理 -- 数据备份、恢复 - - 逻辑备份 - - 物理备份 - - 冷备 - - 热备 - - 温备 - - 全备 - - 增量备份 - - 差异备份 -- 监控 - - 进程,端口 - - 集群状态 - - 主从复制 延时情况 - - SQL读写速率 - - slowlog - -## 1.2 什么是数据 +## 1.1 什么是数据 数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的的原始素材。 @@ -35,57 +8,57 @@ 在计算机系统中,数据以二进制信息单元0,1的形式表示。 -**数据的定义:**数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。* +**数据的定义:**数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。 -## 1.3 什么是数据库管理系统 +## 1.2 什么是数据库 -DBMS(database management system) +数据库就是存储和管理数据的仓库,数据按照一定的格式进行存储,用户可以对数据库中的数据进行增加修改、删除、查询等操作。数据库的分为关系型数据库和非关系型数据库。 -![img](01.Mysql/L8Ndjn2BuNL9IUl2.png!thumbnail) +关系型数据库是指采用了关系模型来组织数据的数据库,简单来说就是二维表格模型,好比Excel文件中的表格,强调使用表格的方式存储数据。关系型数据库核心元素:数据行、数据列、数据表、数据库(数据表的集合),非关系型数据库强调Key-Value的方式存储数据。 -## 1.4 数据库管理系统种类 +**常用关系数据库:**MySQL、SQLite、Oracle等 +**常见非关系数据库:**MongoDB、Redis -### 1.4.1 RDBMS +数据库特点:持久化存储、读写速度极高、保证数据的有效性 -以多张二维表的方式来存储,又给多张表建立了一定的关系(关系型数据库) +关系型数据库管理系统是为管理关系型数据库而设计的软件系统,如果要使用关系型数据库就需要安装数据库管理系统,其实就是一个应用软件。关系型数据库管理系统分为关系型数据库服务端软件和关系型数据库客户端软件。 +关系型数据库服务端软件主要负责管理不同的数据库,而每个数据库里面会有一系列数据文件,数据文件是用来存储数据的,其实数据库就是一系列数据文件的集合。 +关系型数据库客户端软件主要负责和关系型数据库服务端软件进行通信,向服务端传输数据或者从服务端获取数据。 -### 1.4.2 NoSQL +### 1.2.1 RDMS与NoSQL对比 -nosql 很多以json格式进行存储数据的(mogodb) +#### 1.2.1.1 功能对比 -### 1.4.3 RDMS与NoSQL对比 +| | 关系型数据库(sql/RDBMS) | 非关系型数据库 | +| :------------: | :---------------------: | :------------: | +| 强大的查询功能 | √ | × | +| 强一致性 | √ | × | +| 二级索引(目录) | √ | × | +| 灵活模式 | × | √ | +| 扩展性 | × | √ | +| 性能 | × | √ | -#### 1.4.3.1 功能对比 - -| | 关系型数据库 | 非关系型数据库 | -| :------------- | :----------- | :------------- | -| 强大的查询功能 | √ | × | -| 强一致性 | √ | × | -| 二级索引 | √ | × | -| 灵活模式 | × | √ | -| 扩展性 | × | √ | -| 性能 | × | √ | - -#### 1.4.3.2 特点对比 +#### 1.2.1.2 特点对比 - 关系型数据库(RDBMS)的特点: - 二维表 - 典型产品Oracle传统企业,MySQL互联网企业 - - 数据存取是通过SQL(Structured Query Language结构化查询语言) + - 数据存取是通过SQL语句(Structured Query Language结构化查询语言) - 最大特点数据安全性方面强(ACID) + - 非关系型数据库(NoSQL:Not only SQL)的特点: - 不是否定关系型数据库,而是做关系型数据库的补充 -### 1.4.4 数据库市场 +### 1.2.2 数据库市场 -#### 1.4.4.1 MySQL的市场应用 +#### 1.2.2.1 MySQL的市场应用 - 中、大型互联网公司 - 市场空间:互联网领域第一 - 趋势明显 - 同源产品:MariaDB、PerconaDB -#### 1.4.4.2 类似产品 +#### 1.2.2.2 其他产品 - 微软:SQLserver - 微软和sysbase合作开发的产品,后来自己开发,windows平台 @@ -97,7 +70,42 @@ nosql 很多以json格式进行存储数据的(mogodb) - MongoDB - Redis -## 1.5 MySQL发展史 +## 1.3 MySQL数据库 + +MySQL是一个关系型数据库管理系统由瑞典 MySQL AB公司开发,属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之一。 + +**数据库管理员(Database Administrator,简称*DBA*):**是从事管理和维护数据库管理系统(DBMS)的相关工作人员的统称,属于运维工程师的一个分支,主要负责业务数据库从设计、测试到部署交付的全生命周期管理。 + +### 1.3.1 DBA工作内容 + +如下图所示,分别是开发DBA和运维DBA: + +image-20240721145430464 + +包括但不限于以下工作内容: + +- 数据管理 + + - 对库和表的创建 + + - 基本的数据增删改查 + +- 用户管理 + + - root,运维用户ops,程序连接用户(只读用户,读写用户) + - 以及对于不同用户的权限管理 + +- 集群管理 + +- 数据备份、恢复 + + - 逻辑备份、物理备份、冷备、热备、温备、全备、增量备份、差异备份等 + +- 健康及状态监控 + + - 进程,端口、集群状态、主从复制 延时情况、SQL读写速率等 + +### 1.3.2 MySQL发展史 - 1979年,报表工具Unireg出现。 - 1985年,以瑞典David Axmark为首,成立了一家公司(AB前身),ISAM引擎出现。 @@ -105,11 +113,11 @@ nosql 很多以json格式进行存储数据的(mogodb) - 1999年-2000年,MySQL AB公司成立,并公布源码,开源化。 - 2000年4月BDB引擎出现,支持事务。 - 2008年1月16日 MySQL被Sun公司收购。 -- 2009年4月20日Oracle收购Sun公司,MySQL转入Oracle门下。 +- 2009年4月20日Oracle收购Sun公司,MySQL转入Oracle。 -# 2. MySQL安装 +# 2. MySQL的安装 -## 2.1 MySQL安装方式 +## 2.1 安装方式 - rpm、yum安装 - 安装方便、安装速度快、无法定制 @@ -148,9 +156,9 @@ useradd mysql -s /sbin/nologin -M ```shell [root@localhost mysql-5.6.40]# mkdir /application -[root@localhost mysql-5.6.40]# cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 \ --DMYSQL_DATADIR=/application/mysql-5.6.38/data \ --DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock \ +[root@localhost mysql-5.6.40]# cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 \ +-DMYSQL_DATADIR=/application/mysql-5.6.40/data \ +-DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all \ @@ -166,8 +174,8 @@ useradd mysql -s /sbin/nologin -M -DWITH_DEBUG=0 -[root@localhost mysql-5.6.40]# echo $? #查看上条命令是否运行正确,0表示正确 -[root@localhost mysql-5.6.40]# make +[root@localhost mysql-5.6.40]# c #查看上条命令是否运行正确,0表示正确 +[root@localhost mysql-5.6.40]# make -j 2 [root@localhost mysql-5.6.40]# make install ``` @@ -259,42 +267,50 @@ Bye - 下载二进制包并且解压 ```shell -wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz -tar xzvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz +[root@localhost ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz +[root@localhost ~]# tar xzvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz ``` - 然后的步骤就和编译安装一样 ```shell -mkdir /application -mv mysql-5.6.40-linux-glibc2.12-x86_64 /application/mysql-5.6.40 -ln -s /application/mysql-5.6.40 /application/mysql #为了后续写的脚本,方便监控mysql -cd /application/mysql/support-files #该文件夹有mysql初始化(预设)配置文件,覆盖文件是因为注释更全。 -cp my-default.cnf /etc/my.cnf -cp:是否覆盖"/etc/my.cnf"? y -cp mysql.server /etc/init.d/mysqld #mysql.server包含如何启动mysql的脚本命令,让系统知道通过该命令启动mysql时的动作,该目录存放系统中各种服务的启动/停止脚本 -cd /application/mysql/scripts -useradd mysql -s /sbin/nologin -M - yum -y install autoconf #不然会报错 -./mysql_install_db --user=mysql --basedir=/application/mysql --data=/application/mysql/data -vim /etc/profile.d/mysql.sh #写到环境变量的子配置文件内,未修改前只能使用/bin/mysql的命令才能启用,而不能全局使用 +[root@localhost ~]# mkdir /application +[root@localhost ~]# mv mysql-5.6.40-linux-glibc2.12-x86_64 /application/mysql-5.6.40 +[root@localhost ~]# ln -s /application/mysql-5.6.40 /application/mysql +#为了后续写的脚本,方便监控mysql + +[root@localhost ~]# cd /application/mysql/support-files +#该文件夹有mysql初始化(预设)配置文件,覆盖文件是因为注释更全。 + +[root@localhost ~]# cp my-default.cnf /etc/my.cnf +[root@localhost ~]# mkdir /etc/init.d +[root@localhost ~]# cp mysql.server /etc/init.d/mysqld +# mysql.server包含如何启动mysql的脚本命令,让系统知道通过该命令启动mysql时的动作,该目录存放系统中各种服务的启动/停止脚本 +[root@localhost ~]# cd /application/mysql/scripts +[root@localhost scripts]# useradd mysql -s /sbin/nologin -M + +[root@localhost scripts]# yum -y install autoconf +[root@localhost scripts]# yum install -y perl-Sys-Hostname +[root@localhost scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --data=/application/mysql/data +[root@localhost ~]# vim /etc/profile.d/mysql.sh +#写到环境变量的子配置文件内,未修改前只能使用/bin/mysql的命令才能启用,而不能全局使用 export PATH="/application/mysql/bin:$PATH" -source /etc/profile #否则要重启系统才生效 +[root@localhost ~]# source /etc/profile #否则要重启系统才生效 ``` - 需要注意,官方编译的二进制包默认是在`/usr/local`目录下的,我们需要修改配置文件 ```shell -sed -i 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe +[root@localhost ~]# sed -i 's#/usr/local#/application#g' /etc/init.d/mysqld /application/mysql/bin/mysqld_safe ``` -此时不可以通过systemctl命令启动,只能通过/etc/init.d/mysql start启动(nginx也是,如果此时通过这样的命令启动Nginx,会导致systemctl start Nginx失败,因为冲突。) +此时不可以通过systemctl命令启动,只能通过/etc/init.d/mysqld start启动(nginx也是,如果此时通过这样的命令启动Nginx,会导致systemctl start Nginx失败,因为冲突。) - 创建systemd管理文件,并且测试是否正常使用 ```shell -vim /usr/lib/systemd/system/mysqld.service +[root@localhost ~]# vim /usr/lib/systemd/system/mysqld.service [Unit] Description=MySQL Server Documentation=man:mysqld(8) @@ -306,27 +322,128 @@ WantedBy=multi-user.target [Service] User=mysql Group=mysql -ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf #强制从my.cnf读配置,不然会从多个路径读配置 +ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf +#强制从my.cnf读配置,不然会从多个路径读配置 LimitNOFILE = 5000 -server_id = 1 #用作主从的时候生效 +server_id = 1 +#用作主从的时候生效 -vim /etc/my.cnf - basedir = /application/mysql/ - datadir = /application/mysql/data +[root@localhost ~]# vim /etc/my.cnf +basedir = /application/mysql/ +datadir = /application/mysql/data -systemctl daemon-reload -systemctl start mysqld -systemctl enable mysqld +# 关闭防火墙和selinux,负责会因为权限问题启动不了 +[root@localhost scripts]# setenforce 0 +[root@localhost scripts]# systemctl stop firewalld + +# 启动mysqld服务 +[root@localhost ~]# systemctl daemon-reload +[root@localhost ~]# systemctl start mysqld +[root@localhost ~]# systemctl enable mysqld #此时ss -ntl 可以看到3306端口 -mysqladmin -uroot password '123456' -mysql -uroot -p123456 + +[root@localhost ~]# mysqladmin -uroot password '123456' + +# 由于RockyLinux9版本的lib库较新,为了适配mysql5.6版本,我们通过软连接的方式降级 +[root@localhost ~]# ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5 +[root@localhost ~]# ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5 + +# 登录数据库测试 +[root@localhost ~]# mysql -uroot -p123456 ``` -# 3. MySQL体系结构管理 +## 2.4 客户端工具 + +### 2.4.1 mysql + +用来**连接**和**管理**数据库 + +### 2.4.2 mysqladmin + +- “强制回应 (Ping)”服务器 +- 关闭服务器 +- 创建和删除数据库 +- 显示服务器和版本信息 +- 显示或重置服务器状态变量 +- 设置口令 +- 重新刷新授权表 +- 刷新日志文件和高速缓存 +- 启动和停止复制 + +```shell +[root@localhost ~]# mysqladmin -uroot -p123456 create hellodb +[root@localhost ~]# mysqladmin -uroot -p123456 drop hellodb +[root@localhost ~]# mysqladmin -uroot -p123456 ping # 检查服务端状态的 +[root@localhost ~]# mysqladmin -uroot -p123456 status # 服务器运行状态 +[root@localhost ~]# mysqladmin -uroot -p123456 status # 服务器状态 --sleep 2 --count 10 每两秒钟显示⼀次。服务器实时状态⼀共显示10次 +Uptime:是mysql正常运行的时间。 +Threads:指开启的会话数。 +Questions: 服务器启动以来客户的问题(查询)数目 (应该是只要跟mysql作交互:不管你查询表,还是查询服务器状态都问记一次)。 +Slow queries:按字面意思是慢查询的意思,不知道mysql认为多久才足够算为长查询,这个先放着。 +Opens: 服务器已经打开的数据库表的数量 +Flush tables: 服务器已经执行的flush ...、refresh和reload命令的数量。 +open tables:通过命令是用的 数据库的表的数量,以服务器启动开始。 +Queries per second avg:select语句平均查询时间 +[root@localhost ~]# mysqladmin -uroot -p123456 extended-status 显示状态变量 +[root@localhost ~]# mysqladmin -uroot -p123456 variables 显示服务器变量 +[root@localhost ~]# mysqladmin -uroot -p123456 flush-privileges 数据库重读授权表,等同于reload +[root@localhost ~]# mysqladmin -uroot -p123456 flush-tables 关闭所有已经打开的表 +[root@localhost ~]# mysqladmin -uroot -p123456 flush-threds 重置线程池缓存 +[root@localhost ~]# mysqladmin -uroot -p123456 flush-status 重置⼤多数服务器状态变量 +[root@localhost ~]# mysqladmin -uroot -p123456 flush-logs ⽇志滚动。主要实现⼆进制和中继⽇志滚动 +[root@localhost ~]# mysqladmin -uroot -p123456 flush-hosts 清楚主机内部信息 +[root@localhost ~]# mysqladmin -uroot -p123456 kill 杀死线程 +[root@localhost ~]# mysqladmin -uroot -p123456 refresh 相当于同时执⾏flush-hosts flush-logs +[root@localhost ~]# mysqladmin -uroot -p123456 shutdown 关闭服务器进程 +[root@localhost ~]# mysqladmin -uroot -p123456 version 服务器版本以及当前状态信息 +[root@localhost ~]# mysqladmin -uroot -p123456 start-slave 启动复制,启动从服务器复制线程 +[root@localhost ~]# mysqladmin -uroot -p123456 stop-slave 关闭复制线程 +``` + +### 2.4.3 mysqldump + +- 备份数据库和表的内容 + +```shell +mysqldump -uroot -p --all-databases > /backup/mysqldump/all.db +# 备份所有数据库 +mysqldump -uroot -p test > /backup/mysqldump/test.db +# 备份指定数据库 +mysqldump -uroot -p mysql db event > /backup/mysqldump/2table.db +# 备份指定数据库指定表(多个表以空格间隔) +mysqldump -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 > /backup/mysqldump/test2.db +# 备份指定数据库排除某些表 +``` + +- 还原的方法 + +```shell +mysqladmin -uroot -p create db_name +mysql -uroot -p db_name < /backup/mysqldump/db_name.db +# 注:在导入备份数据库前,db_name如果没有,是需要创建的; 而且与db_name.db中数据库名是一样的才可以导入。 +mysql > use db_name +mysql > source /backup/mysqldump/db_name.db +# source也可以还原数据库 +``` + +## 2.5 图形化工具Navicate + +在windows上使用navicate工具的时候,需要先登录到MySQL中,授权来自windows的IP访问: + +```bash +mysql > grant all privileges on *.* to root@"192.168.88.%" identified by "123456"; +mysql > flush privileges; +``` + +然后打开navicate,输入数据库的连接信息,连接到数据库中 + +image-20240721151426381 + +# 3. MySQL架构 ## 3.1 客户端与服务器模型 -![img](01.Mysql/tL76EP1rBEQKcpeU.png!thumbnail) +![img](01.Mysql/tL76EP1rBEQKcpeU-173958397657497.png!thumbnail) - mysql是一个典型的C/S服务结构 @@ -369,7 +486,7 @@ Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. -mysql> status +mysql> status; -------------- mysql Ver 14.14 Distrib 5.6.40, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 4 @@ -390,7 +507,7 @@ TCP port: 3306 Uptime: 1 hour 55 min 9 sec Threads: 2 Questions: 18 Slow queries: 0 Opens: 67 Flush tables: 1 Open tables: 60 Queries per second avg: 0.002 * 套接字连接方式 - * `mysql -uroot -p123456 -S/tmp/mysql.sock` + * `mysql -uroot -p123456 -S /application/mysql/tmp/mysql.sock` ``` ## 3.2 MySQL服务器构成 @@ -400,7 +517,7 @@ Threads: 2 Questions: 18 Slow queries: 0 Opens: 67 Flush tables: 1 Open tab - 实例=mysqld后台守护进程+Master Thread +干活的Thread+预分配的内存 - 公司=老板+经理+员工+办公室 -![img](01.Mysql/k1P7hTxOM3vKCIG2.png!thumbnail) +![img](01.Mysql/k1P7hTxOM3vKCIG2-173958397657498.png!thumbnail) - 连接层 - 验证用户的合法性(ip,端口,用户名) @@ -434,27 +551,23 @@ MySQL的逻辑对象:做为管理人员或者开发人员操作的对象 最直观的数据:二维表,必须用库来存放 -![img](01.Mysql/DsbxGtxBZzy6d1kN.png!thumbnail) +![img](01.Mysql/DsbxGtxBZzy6d1kN-173958397657599.png!thumbnail) mysql逻辑结构与Linux系统对比 -use test; - -create table db01(id int); - -| MySQL | Linux | -| :----------------------- | :------------------- | -| 库 | 目录 | -| show databases; | ls -l / | -| use mysql | cd /mysql | -| 表 | 文件 | -| show tables; | ls | -| 二维表=元数据+真实数据行 | 文件=文件名+文件属性 | +| MySQL | Linux | +| :----------------------- | :---------------------------- | +| 库 | 目录 | +| show databases; | ls -l / | +| use mysql | cd /mysql | +| 表 | 文件 | +| show tables; | ls | +| 二维表=元数据+真实数据行 | 文件=文件名+文件属性+文件内容 | ### 3.2.3 mysql的物理结构 - MySQL的最底层的物理结构是数据文件,也就是说,存储引擎层,打交道的文件,是数据文件。 -- 存储引擎分为很多种类(Linux中的FS) +- 存储引擎分为很多种类 - 不同存储引擎的区别:存储方式、安全性、性能 myisam: @@ -467,22 +580,15 @@ mysql> show create table mysql.user\G; ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges' ``` -![img](01.Mysql/JnL2YEThjuHERQPZ.png!thumbnail) +![img](01.Mysql/JnL2YEThjuHERQPZ-1739583976575100.png!thumbnail) innodb: - 自己创建一个表,在编译的时候已经默认指定使用innodb -![img](01.Mysql/lK3mQW6m9VMwIgVD.png!thumbnail) - -![img](01.Mysql/WCtzPCFRsaTUTp3A.png!thumbnail) - -### 3.2.4 段、区、页(块) - -- 段:理论上一个表就是一个段,由多个区构成,(分区表是一个分区一个段) -- 区:连续的多个页构成 - - 页:最小的数据存储单元,默认是16k #写数据就是替换这16k的数据,不然整个文件重写代价太大 +![img](01.Mysql/lK3mQW6m9VMwIgVD-1739583976575101.png!thumbnail) +![img](01.Mysql/WCtzPCFRsaTUTp3A-1739583976575102.png!thumbnail) # 4. Mysql用户权限管理 @@ -495,7 +601,7 @@ innodb: - Linux用户管理 - - 创建用户:useradd adduser + - 创建用户:useradd - 删除用户:userdel - 修改用户:usermod @@ -507,7 +613,7 @@ innodb: - Mysql用户管理 - 创建用户:create user - - 删除用户:delete user drop user + - 删除用户:delete user、drop user - 修改用户:update - 用户的定义 @@ -525,18 +631,24 @@ innodb: - 刚装完mysql数据库该做的事情 - 先truncate mysql.user;再重启mysql发现进不去了 - - 设定初始密码 ```shell -mysqladmin -uroot password '123456' -* 忘记root密码 -/etc/init.d/mysqld stop -mysqld_safe --skip-grant-tables --skip-networking #skip-networking禁止掉3306端口,不允许网络登录 +[root@localhost ~]# mysqladmin -uroot password '123456' + +# 忘记root密码 +[root@localhost ~]# systemctl stop mysqld +[root@localhost ~]# mysqld_safe --skip-grant-tables --skip-networking +# skip-networking 禁止掉3306端口,不允许网络登录 + # 修改root密码 -update user set password=PASSWORD('123456') where user='root' and host='localhost'; -flush privileges; +[root@localhost ~]# mysql -uroot +mysql> update mysql.user set password=PASSWORD('123') where user='root' and host='localhost'; +mysql> flush privileges; + +# 杀死mysqld服务,重启 +[root@localhost ~]# pkill mysqld +[root@localhost ~]# systemctl start mysqld ``` ## 4.2 用户管理 @@ -544,7 +656,7 @@ flush privileges; - 创建用户 ```sql -mysql> create user user01@'192.168.175.%' identified by '123456'; +mysql> create user user01@'192.168.88.%' identified by '123456'; ``` - 查看用户 @@ -555,28 +667,27 @@ mysql> select user,host from mysql.user; - 查看当前用户 - ```sql - mysql> select user(); - ``` +```sql +mysql> select user(); +``` - 查看当前数据库 - ```sql - mysql> select database(); - ``` +```sql +mysql> select database(); +``` - 删除用户 ```sql -mysql> drop user user01@'192.168.175.%'; +mysql> drop user user01@'192.168.88.%'; ``` - 修改密码 ```sql -mysql> set password=PASSOWRD('123456') -mysql> update user set password=PASSWORD('user01') where user='root' and host='localhost'; -mysql> grant all privileges on *.* to user01@'192.168.175.%' identified by '123456'; +mysql> update mysql.user set password=PASSWORD('user01') where user='root' and host='localhost'; +mysql> grant all privileges on *.* to user01@'192.168.88.%' identified by '123456'; ``` ## 4.3 用户权限介绍 @@ -587,10 +698,39 @@ mysql> grant all privileges on *.* to user01@'192.168.175.%' identified by '1234 INSERT,SELECT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE ``` +1. **INSERT**: 用于向数据库表中插入新数据。 +2. **SELECT**: 用于从数据库表中查询和检索数据。 +3. **UPDATE**: 用于更新数据库表中的现有数据。 +4. **DELETE**: 用于从数据库表中删除数据。 +5. **CREATE**: 用于创建数据库对象,如表、视图、存储过程等。 +6. **DROP**: 用于删除数据库对象,如表、视图、存储过程等。 +7. **RELOAD**: 用于重新加载 MySQL 服务器的配置文件。 +8. **SHUTDOWN**: 用于关闭 MySQL 服务器。 +9. **PROCESS**: 用于查看和管理 MySQL 服务器的进程。 +10. **FILE**: 用于读写服务器上的文件。 +11. **REFERENCES**: 用于创建外键约束。 +12. **INDEX**: 用于创建和管理数据库索引。 +13. **ALTER**: 用于修改数据库对象的结构,如表、视图、存储过程等。 +14. **SHOW DATABASES**: 用于查看当前 MySQL 服务器上的所有数据库。 +15. **SUPER**: 是一种特殊的权限,允许用户执行一些高级操作,如查看和杀死其他用户的进程。 +16. **CREATE TEMPORARY TABLES**: 用于创建临时表。 +17. **LOCK TABLES**: 用于手动锁定数据库表。 +18. **EXECUTE**: 用于执行存储过程和函数。 +19. **REPLICATION SLAVE**: 用于配置数据库复制时的从库权限。 +20. **REPLICATION CLIENT**: 用于获取数据库复制状态信息。 +21. **CREATE VIEW**: 用于创建数据库视图。 +22. **SHOW VIEW**: 用于查看数据库视图的定义。 +23. **CREATE ROUTINE**: 用于创建存储过程和函数。 +24. **ALTER ROUTINE**: 用于修改存储过程和函数。 +25. **CREATE USER**: 用于创建新的数据库用户账号。 +26. **EVENT**: 用于创建和管理数据库事件。 +27. **TRIGGER**: 用于创建和管理数据库触发器。 +28. **CREATE TABLESPACE**: 用于创建数据库表空间。 + - 每次设定只能有一个属主,没有属组或其他用户的概念 ```sql -grant all privileges on *.* to user01@''192.168.175.%'' identified by ''123''; +grant all privileges on *.* to user01@''192.168.88.%'' identified by ''123''; 权限 作用对象 归属 密码 ``` @@ -654,41 +794,9 @@ create table tb1 (id int); - 但是我们不推荐在多级别定义重复权限。 - 最常用的权限设定方式是单库级别授权,即:wordpress.* -# 5. MySQL连接管理 +# 5. Mysql启动关闭流程 -- MySQL自带的连接工具 - - mysql -uroot -p123456 -h127.0.0.1 -P3306 -e "show databaese;" - - **不建议使用的方法:** - - ``` - vim /etc/my.cnf - [client] - user = root - password = 123456 - ``` - - - - - mysql - - -u:指定用户 - - -p:指定密码 - - -h:指定主机 - - -P:指定端口 - - -S:指定sock - - -e:指定SQL - -- 第三方连接工具 - - - sqlyog - - navicat - -![img](01.Mysql/agMqU13UrbmuyFz0.png!thumbnail) - -# 6. Mysql启动关闭流程 - -![img](01.Mysql/uCoOhC6Rn5HuTfxg.png!thumbnail) +![img](01.Mysql/uCoOhC6Rn5HuTfxg-1739583976575103.png!thumbnail) - 启动 @@ -698,12 +806,14 @@ create table tb1 (id int); ```shell /etc/init.d/mysqld start ------> mysqld_safe ------> mysqld +systemctl start mysqld ``` - 关闭 ```shell /etc/init.d/mysqld stop +systemctl stop mysqld mysqladmin -uroot -p123456 shutdown kill -9 pid ? killall mysqld ? @@ -717,7 +827,7 @@ pkill mysqld_safe 2. 号称可以达到和Oracle一样的安全性,但是并不能100%达到 3. 在业务繁忙的情况下,丢数据(补救措施,高可用) -# 7. Mysql实例初始化配置 +# 6. Mysql实例初始化配置 - 在启动一个实例的时候,必须要知道如下的问题 - 我不知道我的程序在哪? @@ -727,9 +837,9 @@ pkill mysqld_safe - 我启动,你们给了我多少内存? - ......若干问题 -![img](01.Mysql/Tw0AJl9FjrygD1S4.png!thumbnail) +![img](01.Mysql/Tw0AJl9FjrygD1S4-1739583976575104.png!thumbnail) -- 预编译:cmake去指定,硬编码到程序当中去 +- 预编译:cmake去指定,硬编译到程序当中去 - 在命令行设定启动初始化配置 ```shell @@ -746,12 +856,6 @@ pkill mysqld_safe ``` - 初始化配置文件(/etc/my.cnf) - - 配置文件读取顺序,通过mysql命令:show variables like 'server_id'; - - /etc/my.cnf - - /etc/mysql/my.cnf - - $MYSQL_HOME/my.cnf(前提是在环境变量中定义了MYSQL_HOME变量 /application/mysql/my.conf) - - defaults-extra-file (类似include) - - ~/my.cnf(隐藏文件) - --defaults-file:默认配置文件 - 如果使用./bin/mysqld_safe 守护进程启动mysql数据库时,使用了 --defaults-file=<配置文件的绝对路径>参数,这时只会使用这个参数指定的配置文件。 @@ -778,9 +882,9 @@ socket=/application/mysql/tmp/mysql.sock - [client]所有客户端程序 - [server]所有服务器程序 -# 8. MySQL多实例配置 +# 7. MySQL多实例配置 -## 8.1 多实例 +## 7.1 多实例 - 多套后台进程+线程+内存结构 - 多个配置文件 @@ -790,16 +894,16 @@ socket=/application/mysql/tmp/mysql.sock - 多个server_id - 多套数据 -## 8.2 实战配置 +## 7.2 实战配置 ```shell #创建数据目录 -mkdir -p /data/330{7..9} +[root@localhost ~]# mkdir -p /data/330{7..9} #创建配置文件 -touch /data/330{7..9}/my.cnf -touch /data/330{7..9}/mysql.log +[root@localhost ~]# touch /data/330{7..9}/my.cnf +[root@localhost ~]# touch /data/330{7..9}/mysql.log #编辑3307配置文件 -vim /data/3307/my.cnf +[root@localhost ~]# vim /data/3307/my.cnf [mysqld] basedir=/application/mysql datadir=/data/3307/data @@ -810,8 +914,9 @@ server_id=7 port=3307 [client] socket=/data/3307/mysql.sock + #编辑3308配置文件 -vim /data/3308/my.cnf +[root@localhost ~]# vim /data/3308/my.cnf [mysqld] basedir=/application/mysql datadir=/data/3308/data @@ -822,8 +927,9 @@ server_id=8 port=3308 [client] socket=/data/3308/mysql.sock + #编辑3309配置文件 -vim /data/3309/my.cnf +[root@localhost ~]# vim /data/3309/my.cnf [mysqld] basedir=/application/mysql datadir=/data/3309/data @@ -834,126 +940,49 @@ server_id=9 port=3309 [client] socket=/data/3309/mysql.sock -#初始化3307数据,每条命令需要间隔若干秒,否则失败 -/application/mysql/scripts/mysql_install_db \ + +# 修改目录权限 +[root@localhost ~]# chown -R mysql.mysql /data/330* + +# 初始化3307数据,每条命令需要间隔若干秒,否则失败 +[root@localhost ~]# /application/mysql/scripts/mysql_install_db \ --user=mysql \ --defaults-file=/data/3307/my.cnf \ --basedir=/application/mysql --datadir=/data/3307/data + #初始化3308数据,每条命令需要间隔若干秒,否则失败 -/application/mysql/scripts/mysql_install_db \ +[root@localhost ~]# /application/mysql/scripts/mysql_install_db \ --user=mysql \ --defaults-file=/data/3308/my.cnf \ --basedir=/application/mysql --datadir=/data/3308/data + #初始化3309数据,每条命令需要间隔若干秒,否则失败 -/application/mysql/scripts/mysql_install_db \ +[root@localhost ~]# /application/mysql/scripts/mysql_install_db \ --user=mysql \ --defaults-file=/data/3309/my.cnf \ --basedir=/application/mysql --datadir=/data/3309/data -#修改目录权限 -chown -R mysql.mysql /data/330* + #启动多实例 -mysqld_safe --defaults-file=/data/3307/my.cnf & -mysqld_safe --defaults-file=/data/3308/my.cnf & -mysqld_safe --defaults-file=/data/3309/my.cnf & +[root@localhost ~]# mysqld_safe --defaults-file=/data/3307/my.cnf & +[root@localhost ~]# mysqld_safe --defaults-file=/data/3308/my.cnf & +[root@localhost ~]# mysqld_safe --defaults-file=/data/3309/my.cnf & + #设置每个实例的密码 -#mysqladmin -S /data/3307/mysql.sock -uroot password '123456' +[root@localhost ~]# mysqladmin -S /data/3307/mysql.sock -uroot password '123456' + #查看server_id -mysql -S /data/3307/mysql.sock -e "show variables like 'server_id'" -mysql -S /data/3308/mysql.sock -e "show variables like 'server_id'" -mysql -S /data/3309/mysql.sock -e "show variables like 'server_id'" +[root@localhost ~]# mysql -S /data/3307/mysql.sock -uroot -p123456 -e "show variables like 'server_id'" +[root@localhost ~]# mysql -S /data/3308/mysql.sock -uroot -p123456 -e "show variables like 'server_id'" +[root@localhost ~]# mysql -S /data/3309/mysql.sock -uroot -p123456 -e "show variables like 'server_id'" # 进入单独的mysql实例 -mysql -S /data/3307/mysql.sock -uroot +[root@localhost ~]# mysql -S /data/3307/mysql.sock -uroot # 关闭实例,如果设置了密码登录就需要密码了 用参数-p -mysqladmin -S /data/3307/mysql.sock -uroot shutdown -mysqladmin -S /data/3308/mysql.sock -uroot shutdown -mysqladmin -S /data/3309/mysql.sock -uroot shutdown +[root@localhost ~]# mysqladmin -S /data/3307/mysql.sock -uroot -p123456 shutdown +[root@localhost ~]# mysqladmin -S /data/3308/mysql.sock -uroot -p123456 shutdown +[root@localhost ~]# mysqladmin -S /data/3309/mysql.sock -uroot -p123456 shutdown ``` -# 9. 客户端工具 - -## 9.1 mysql - -- 作用 - - 连接 - - 管理 -- 自带的命令 - -```shell -\h 或 help 或? 查看帮助 -\G 格式化查看数据(key:value) -\T 或 tee 记录日志 \T /tmp/temp.log,临时一次登录有效、永久vim /etc/my.cnf tee= -\c(5.7可以ctrl+c) 结束命令 -\s 或 status 查看状态信息 -\. 或 source 导入SQL数据 -\u或 use 使用数据库 -\q 或 exit 或 quit 退出 -! 或 system 执行shell命令 -``` - -- 接收用户的SQL语句 - -## 9.2 mysqladmin - -- “强制回应 (Ping)”服务器 -- 关闭服务器 -- 创建和删除数据库 -- 显示服务器和版本信息 -- 显示或重置服务器状态变量 -- 设置口令 -- 重新刷新授权表 -- 刷新日志文件和高速缓存 -- 启动和停止复制 - -```shell -[root@localhost ~]# mysqladmin -uroot -p1 create hellodb -[root@localhost ~]# mysqladmin -uroot -p1 drop hellodb -[root@localhost ~]# mysqladmin -uroot -p1 ping 检查服务端状态的 -[root@localhost ~]# mysqladmin -uroot -p1 status 服务器运行状态 -[root@localhost ~]# mysqladmin -uroot -p1 status 服务器状态 --sleep 2 --count 10 每两秒钟显示 -⼀次服务器实时状态⼀共显示10次 -[root@localhost ~]# mysqladmin -uroot -p1 extended-status 显示状态变量 -[root@localhost ~]# mysqladmin -uroot -p1 variables 显示服务器变量 -[root@localhost ~]# mysqladmin -uroot -p1 flush-privileges 数据库重读授权表,等同于reload -[root@localhost ~]# mysqladmin -uroot -p1 flush-tables 关闭所有已经打开的表 -[root@localhost ~]# mysqladmin -uroot -p1 flush-threds 重置线程池缓存 -[root@localhost ~]# mysqladmin -uroot -p1 flush-status 重置⼤多数服务器状态变量 -[root@localhost ~]# mysqladmin -uroot -p1 flush-logs ⽇志滚动。主要实现⼆进制和中继⽇志滚动 -[root@localhost ~]# mysqladmin -uroot -p1 flush-hosts 清楚主机内部信息 -[root@localhost ~]# mysqladmin -uroot -p1 kill 杀死线程 -[root@localhost ~]# mysqladmin -uroot -p1 refresh 相当于同时执⾏flush-hosts flush-logs -[root@localhost ~]# mysqladmin -uroot -p1 shutdown 关闭服务器进程 -[root@localhost ~]# mysqladmin -uroot -p1 version 服务器版本以及当前状态信息 -[root@localhost ~]# mysqladmin -uroot -p1 start-slave 启动复制,启动从服务器复制线程 -[root@localhost ~]# mysqladmin -uroot -p1 stop-slave 关闭复制线程 -``` - -## 9.3 mysqldump - -- 备份数据库和表的内容 - -```shell -mysqldump -uroot -p --all-databases > /backup/mysqldump/all.db -# 备份所有数据库 -mysqldump -uroot -p test > /backup/mysqldump/test.db -# 备份指定数据库 -mysqldump -uroot -p mysql db event > /backup/mysqldump/2table.db -# 备份指定数据库指定表(多个表以空格间隔) -mysqldump -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 > /backup/mysqldump/test2.db -# 备份指定数据库排除某些表 -``` - -- 还原的方法 - -```shell -mysqladmin -uroot -p create db_name -mysql -uroot -p db_name < /backup/mysqldump/db_name.db -# 注:在导入备份数据库前,db_name如果没有,是需要创建的; 而且与db_name.db中数据库名是一样的才可以导入。 -mysql > use db_name -mysql > source /backup/mysqldump/db_name.db -# source也可以还原数据库 -``` - -# 10. SQL语句 +# 8. SQL语句 - SQL是结构化的查询语句 - SQL的种类 @@ -962,7 +991,7 @@ mysql > source /backup/mysqldump/db_name.db - DML:数据操作语言 - DQL:数据查询语言 -## 10.1 DDL数据定义语句 +## 8.1 DDL数据定义语句 - 对库或者表进行操作的语句 - 创建数据库 @@ -972,7 +1001,18 @@ create database db01; # 创建数据库 create database DB01; # 数据库名区分大小写(注意windows里面不区分) -# show variables like 'lower%'; 可以看到lower_case_table_names默认0是区分大小写通过/etc/my.cnf [mysqld]下可以永久修改 +show variables like 'lower_case_table_names'; ++------------------------+-------+ +| Variable_name | Value | ++------------------------+-------+ +| lower_case_table_names | 0 | ++------------------------+-------+ + +具体lower_case_table_names 取值详解如下: +0:区分大小写 +1:不区分大小写,存储的时候,将表名都转换成小写 +2:不区分大小写,存储的时候,表名跟建表时大小写保持一致 + show databases; # 查看数据库(DQL) show create database db01; @@ -1002,13 +1042,16 @@ show create database db01; ```sql help create table; # 查看创表语句的帮助 + +use db01; +# 进入库中 create table student( sid int, sname varchar(20), sage tinyint, sgender enum('m','f'), -comtime datetime; -) +cometime datetime +); # 创建表,并且定义每一列 ``` @@ -1023,19 +1066,23 @@ comtime datetime; | datetime | 时间类型 年月日时分秒 | ```sql +# 删除表 +drop table student; + +# 带数据属性创建学生表 create table student( sid int not null primary key auto_increment comment '学号', sname varchar(20) not null comment '学生姓名', sgender enum('m','f') not null default 'm' comment '学生性别', cometime datetime not null comment '入学时间' )charset utf8 engine innodb; -# 带数据属性创建学生表 -show create table student; + # 查看建表语句 -show tables; +show create table student; # 查看表 -desc student; +show tables; # 查看表中列的定义信息 +desc student; ``` - 数据属性 @@ -1076,15 +1123,16 @@ alter table stu change phone telphone char(20); # 修改列及定义(列名及属性) ``` -## 10.2 DCL数据控制语言 +## 8.2 DCL数据控制语言 - DCL是针对权限进行控制 - 授权 ```sql -grant all on *.* to root@'192.168.175.%' identified by '123456' +grant all on *.* to root@'192.168.88.%' identified by '123456' # 授予root@'192.168.175.%'用户所有权限(非超级管理员) -grant all on *.* to root@'192.168.175.%' identified by '123456' with grant option; + +grant all on *.* to root@'192.168.88.%' identified by '123456' with grant option; # 授权一个超级管路员 max_queries_per_hour:一个用户每小时可发出的查询数量 max_updates_per_hour:一个用户每小时可发出的更新数量 @@ -1095,50 +1143,66 @@ max_user_connections:允许同时连接数量 - 收回权限 ```sql -revoke select on *.* from root@'192.168.175.%'; +revoke select on *.* from root@'192.168.88.%'; # 收回select权限 -show grants for root@'192.168.175.%'; +show grants for root@'192.168.88.%'; # 查看权限 ``` -## 10.3 DML数据操作语言 +## 8.3 DML数据操作语言 - 操作表中的数据 - 插入数据 ```sql -insert into stu valus('linux01',1,NOW(),'zhangsan',20,'m',NOW(),110,123456); +create table stu( +sid int not null primary key auto_increment comment '学号', +sname varchar(20) not null comment '学生姓名', +sgender enum('m','f') not null default 'm' comment '学生性别', +sage int comment '年龄', +qq varchar(20) comment 'QQ', +telphone varchar(20) comment '电话号', +cometime datetime not null comment '入学时间' +)charset utf8 engine innodb; + +insert into stu values(1,'zhangsan','m',19,'123123','18888888888',NOW()); # 基础用法,插入数据 -insert into stu(classid,birth.sname,sage,sgender,comtime,telnum,qq) values('linux01',1,NOW(),'zhangsan',20,'m',NOW(),110,123456); + +insert into stu(sname,sgender,sage,qq,telphone,cometime) values('lisi','f',20,'11111',1777777777,NOW()); # 规范用法,插入数据 -insert into stu(classid,birth.sname,sage,sgender,comtime,telnum,qq) values('linux01',1,NOW(),'zhangsan',20,'m',NOW(),110,123456), -('linux02',2,NOW(),'zhangsi',21,'f',NOW(),111,1234567); + +insert into stu(sname,sgender,sage,qq,telphone,cometime) values('linux01','f',20,'11111',1777777777,NOW()), +('linux02','f',20,'22222',1777777777,NOW()); # 插入多条数据 -insert into stu(classid,birth.sname,sage,sgender,comtime,qq) values('linux01',1,NOW(),'zhangsan',20,'m',NOW(),123456); -#少了电话 + +insert into stu(sname,cometime) values('linux03',NOW()); +# 不是非空字段可以为空 ``` - 更新数据 ```sql -update student set sgender='f'; +update stu set sgender='f'; # 不规范 -update student set sgender='f' where sid=1; + +update stu set sgender='f' where sid=1; # 规范update修改 -update student set sgender='f' where 1=1; + +update stu set sgender='f' where 1=1; # 如果非要全表修改 + update mysql.user set password=PASSWORD('123456') where user='root' and host='localhost'; # 修改密码,需要刷新权限flush privileges ``` -- 删除数据 +- 删除数据` ```sql -delete from student; +delete from stu; # 不规范 -delete from student where sid=3; +delete from stu where sid=6; # 规范删除(危险) -truncate table student; +truncate table stu; # DDL清空表中的内容,恢复表原来的状态,自增重新从1开始,否则delete依旧正常增长 ``` @@ -1147,23 +1211,24 @@ truncate table student; - 使用update代替delete,将状态改成删除状态,在查询的时候就可以不显示被标记删除的数据 ```sql -alter table student add status enum(1,0) default 1; +alter table stu add status enum('1','0') default '1'; # 额外添加一个状态列 -update student set status='0' where sid=1; +update stu set status='0' where sid=1; # 使用update -select * from student where status=1; +select * from stu where status=1; # 应用查询存在的数据 ``` -## 10.4 DQL数据查询语言 +## 8.4 DQL数据查询语言 - select:基础用法 - 演示用的SQL文件下载:https://download.s21i.faiusr.com/23126342/0/0/ABUIABAAGAAgzcXwhQYozuPv2AE?f=world.sql&v=1622942413 ```sql mysql -uroot -p123 < world.sql -或者mysql> \. /root/world.sql -# 常用用法 +或者mysql> source /root/world.sql + + select countrycode,district from city; # 常用用法 select countrycode from city; @@ -1177,7 +1242,7 @@ select name,population from city where countrycode='CHN' and district='heilongji # 多条件查询 select name,population,countrycode from city where countrycode like '%H%' limit 10; # 模糊查询 -select id,name,population,countrycode from city order by countrycode limit 10; + select id,name,population,countrycode from city order by countrycode limit 10; # 排序查询(顺序) select id,name,population,countrycode from city order by countrycode desc limit 10; # 排序查询(倒序) @@ -1191,12 +1256,12 @@ select country.name,city.name,city.population,country.code from city,country whe # 多表查询 ``` -# 11. 字符集定义 +# 9. 字符集定义 - 什么是字符集(Charset) - 字符集:是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。 -![img](01.Mysql/157ueBBseL6MvenH.png!thumbnail) +![img](01.Mysql/157ueBBseL6MvenH-1739583976575105.png!thumbnail) - MySQL数据库的字符集 - 字符集(CHARACTER) @@ -1248,83 +1313,9 @@ mysql> alter table t1 CHARACTER SET utf8; # 修改字符集 ``` -# 12. select的高级用法 +# 10. MySQL数据类型 -- 多表连接查询(连表查询) - -```sql -create table t1(id int primary key auto_increment,name varchar(20)) ENGINE=InnoDB CHARSET=utf8; -create table t2(id int primary key auto_increment,score int) ENGINE=InnoDB CHARSET=utf8; -insert into t1(name) values('cs'),('tj'),('lz'); -insert into t2(score) values(30),(80),(82); -select * from t1; -select * from t2; -``` - -- 传统连接(只能内连接,只能取交集) - -```sql -select t1.name,t2.score from t1,t2 where t1.id=t2.id and t2.score > 60; -# 查出及格 -#世界上小于100人的人口城市是哪个国家的? -select city.name,city.countrycode,country.name -from city,country -where city.countrycode=country.code -and city.population<100; -# 世界上小于100人的人口城市是哪个国家,说的什么语言? -国家人口数量 城市名 国家名 语言 -country.population, city.name, country.name, countrylanguage.Language -select country.population,city.name,country.name,countrylanguage.Language from city,country,countrylanguage where city.countrycode=country.code and countrylanguage.countrycode=country.code and country.population<100; -``` - -- NATURAL JOIN(自连接的表要有共同的列名字) - -```sql -SELECT city.name,city.countrycode ,countrylanguage.language ,city.population -FROM city NATURAL JOIN countrylanguage -WHERE population > 1000000 -ORDER BY population; -``` - -- 企业中多表连接查询(内连接) - -```sql -select city.name,city.countrycode,country.name -from city join country on city.countrycode=country.code -where city.population<100; -``` - -建议:使用join语句时,小表在前,大表在后。 - -- 外连接 - -```sql -select city.name,city.countrycode,country.name -from city left join country -on city.countrycode=country.code -and city.population<100; -``` - -- UNION(合并查询) - -```sql -mysql> select * from city where countrycode='CHN' or countrycode='USA'; -#范围查询OR语句 -mysql> select * from city where countrycode in ('CHN','USA'); -#范围查询IN语句 -替换为: -mysql> select * from city where countrycode='CHN' -union all -select * from city where countrycode='USA' limit 10 -``` - -- union:去重复合并 -- union all :不去重复 -- 使用情况:union + +**B+树的特点**: + +1. 多路平衡树,每个节点可以有多个子节点,树始终保持平衡,适合高效查找。 +2. 数据只在叶子节点,内部节点只存键值和指针(索引信息),叶子节点存键值和实际数据(或数据指针)。 +3. 叶子节点通过指针连接成链表,支持高效的范围查询和顺序访问。 +4. 适合磁盘存储,节点大小通常设计为磁盘块大小,减少磁盘 I/O 次数。 + +#### 11.2.1.2 B*树 + + + +#### 11.2.1.3 为什么 MySQL 使用 B+ 树? + +1. **数据存储在叶子节点** + B+ 树的所有数据都存储在叶子节点,内部节点只存储键值和指针。这种设计使得树的高度更低,查询效率更高。 +2. **叶子节点形成有序链表** + B+ 树的叶子节点通过指针连接成链表,非常适合范围查询(如 `BETWEEN`、`>`、`<` 等操作),只需遍历叶子节点即可。 +3. **更适合磁盘存储** + B+ 树的节点大小通常设计为磁盘块的大小,减少了磁盘 I/O 次数,适合处理大规模数据。 +4. **更高的查询效率** + 由于 B+ 树的内部节点只存储键值和指针,一个节点可以存储更多的键值,从而降低树的高度,减少查找时间。 + +#### 11.2.1.4 B+ 树 vs B 树 + +| 特性 | B 树 | B+ 树 | +| :--------------- | :--------------------- | :------------------------- | +| **数据存储位置** | 所有节点都可以存储数据 | 只有叶子节点存储数据 | +| **叶子节点连接** | 叶子节点没有连接 | 叶子节点通过指针连接成链表 | +| **范围查询效率** | 较低 | 较高 | +| **适合场景** | 内存数据库或小规模数据 | 磁盘数据库或大规模数据 | + +### 11.2.2 按功能分类 + +- **普通索引(INDEX)**:最基本的索引,没有任何限制。 + - 就像是在一本书的页边做了一些标记,方便以后快速找到感兴趣的内容。 + - 普通索引不要求值必须唯一,可以建立在单个列或多个列上。 + - 普通索引可以提高查询速度,但更新和插入数据时会稍微损耗一些性能。 +- **唯一索引(UNIQUE)**:索引列的值必须唯一,允许有空值。 + - 可以认为是一种特殊的主键,它要求索引列的值必须是唯一的。 + - 唯一索引既可以提高查询效率,又能确保数据的完整性,防止出现重复数据。 + - 不过,与主键不同的是,唯一索引允许出现空值。 +- **主键索引(PRIMARY KEY)**:特殊的唯一索引,不允许有空值。 + - 就像是一本书的目录页,可以快速定位到某一页的内容。 + - 每一行数据都有一个独一无二的标识(主键),建立主键索引可以迅速找到对应的行。 + - 主键索引是最重要的索引类型,能大大提高查询效率。 +- **全文索引(FULLTEXT)**:用于全文搜索。 +- ........ + +## 11.3 索引管理 + +### 11.3.1 添加索引 + +1. 添加普通索引 ```sql -alter table test add index index_name(name); -#创建索引 -create index index_name on test(name); -#创建索引 -desc table; -#查看索引 -show index from table; -#查看索引 -alter table test drop key index_name; -#删除索引 -alter table student add unique key uni_xxx(xxx); -#添加主键索引(略) -#添加唯一性索引 -select count(*) from city; -#查看表中数据行数 -select count(distinct(name)) from city; -#查看去重数据行数 +create index idx_name on table_name(column_name); + +# 查看索引 +show index from table_name; + +# 案例 +mysql> create index sname_idx on stu(sname); +Query OK, 0 rows affected (0.01 sec) +Records: 0 Duplicates: 0 Warnings: 0 +mysql> show index from stu; ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +| stu | 0 | PRIMARY | 1 | sid | A | 2 | NULL | NULL | | BTREE | | | +| stu | 1 | sname_idx | 1 | sname | A | 2 | NULL | NULL | | BTREE | | | ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +2 rows in set (0.00 sec) ``` -## 14.3 前缀索引和联合索引 +2. 添加主键索引 -### 14.3.1 前缀索引 +如果我们将某个列设置为主键的话,那么会默认顺带设置主键索引。 + +手动添加主键索引 + +```sql +alter table table_name add primary key (column_name); +``` + +3. 添加唯一索引 + +```sql +create unique index idx_name on table_name(column_name); + +# 案例 +mysql> create unique index qq_idx on stu(qq); +Query OK, 0 rows affected (0.00 sec) +Records: 0 Duplicates: 0 Warnings: 0 + +mysql> show index from stu; ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +| stu | 0 | PRIMARY | 1 | sid | A | 2 | NULL | NULL | | BTREE | | | +| stu | 0 | qq_idx | 1 | qq | A | 2 | NULL | NULL | YES | BTREE | | | +| stu | 1 | sname_idx | 1 | sname | A | 2 | NULL | NULL | | BTREE | | | ++-------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ +3 rows in set (0.00 sec) +``` + +#### 11.3.1.1 删除索引 + +删除普通索引或者唯一索引 + +```sql +DROP INDEX idx_name ON table_name; +``` + +删除主键索引 + +```sql +ALTER TABLE table_name DROP PRIMARY KEY; +``` + +## 11.4 前缀索引和联合索引 + +### 11.4.1 前缀索引 + +前缀索引是对列的前缀部分创建索引,适用于较长的字符串列。 - 根据字段的前N个字符建立索引 @@ -1503,10 +1591,9 @@ alter table test add index idx_name(name(10)); #比如表里很多城市以D开头,Dalas Des'Moine Denver Detroit,以字母D建立的索引会加快检索速度 ``` -- 避免对大列建索引 -- 如果有,就使用前缀索引 +### 11.4.2 联合索引 -### 14.3.2 联合索引 +联合索引是对多个列组合创建的索引。 - 多个字段建立一个索引 - 原则:把最常用来做为条件查询的列放在最前面 @@ -1514,42 +1601,88 @@ alter table test add index idx_name(name(10)); ```sql create table people (id int,name varchar(20),age tinyint,money int ,gender enum('m','f')); #创建people表 -alter table people add index idx_gam(gender,age,money); +alter table people add index idx_gam(gender,age,money); #创建联合索引 ``` -## 14.4 explain详解 +## 11.5 explain详解 -- explain命令使用方法 +`EXPLAIN` 是 SQL 中一个非常有用的关键字,它可以帮助我们分析和优化 SQL 查询的执行计划。使用 `EXPLAIN` 语句可以获取 SQL 查询的执行计划,了解查询是如何执行的,从而帮助我们识别并优化查询性能瓶颈。 + +下面我们来详细讲解 `EXPLAIN` 语句的用法和输出含义: ```sql -mysql> explain select name,countrycode from city where id=1; +mysql> explain select * from stu where sname='linux02'; ++----+-------------+-------+------+---------------+-----------+---------+-------+------+-----------------------+ +| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | ++----+-------------+-------+------+---------------+-----------+---------+-------+------+-----------------------+ +| 1 | SIMPLE | stu | ref | sname_idx | sname_idx | 62 | const | 1 | Using index condition | ++----+-------------+-------+------+---------------+-----------+---------+-------+------+-----------------------+ +1 row in set (0.01 sec) ``` -- MySQL查询数据的方式 - - 全表扫描(在explain语句结果中type为ALL,例如select * from XXX) - - 业务确实要获取所有数据 - - 不走索引导致的全表扫描 - - 没索引 - - 索引创建有问题 - - 语句有问题 - - 生产中,mysql在使用全表扫描时的性能是极其差的,所以MySQL尽量避免出现全表扫描 - - 索引扫描 - - 常见的索引扫描类型 - - index - - range - - ref - - eq_ref - - const - - system - - null - - 从上到下,性能从最差到最好,我们认为至少要达到range级别 +1. **使用方法**: -### 14.4.1 index + - 在 SQL 语句前加上 `EXPLAIN` 关键字即可,例如: `EXPLAIN SELECT * FROM users WHERE id = 1;` + + ```sql + mysql> explain select name,countrycode from city where id=1; + ``` + +2. **输出信息**: + + - `id`: 查询编号,表示查询执行的顺序。如果有子查询,每个子查询都会分配一个单独的 id。 + - `select_type`: 查询类型,包括 SIMPLE、PRIMARY、SUBQUERY 等。 + - `table`: 正在访问的数据表名称。 + - `type`: 访问类型,包括 system、const、eq_ref、ref、range、index、ALL 等,访问类型由快到慢依次排列。 + - `possible_keys`: 可能使用的索引。 + - `key`: 实际使用的索引名称。 + - `key_len`: 使用索引的长度。 + - `ref`: 列上的比较操作。 + - `rows`: 估计要读取的行数。 + - `filtered`: 条件过滤后剩余的行占原始行的比例。 + - `Extra`: 一些额外的信息,如 Using index、Using where 等。 + +3. **应用场景**: + + - 查看查询计划,了解 MySQL 是如何执行 SQL 查询的。 + - 分析查询瓶颈,如果 `type` 是 `ALL` 表示全表扫描,可能需要优化索引。 + - 检查是否使用了正确的索引,`possible_keys` 和 `key` 列可以告诉你 MySQL 选择了哪个索引。 + - 估算查询的行数,`rows` 列给出了 MySQL 估计的行数,可以帮助判断查询的效率。 + +### 11.5.1 MySQL查询数据的方式 + +**全表扫描**(在explain语句结果中type为ALL,例如select * from XXX) + +**出现场景:** + +- 业务确实要获取所有数据 +- 不走索引导致的全表扫描 + - 没索引 + - 索引创建有问题 + - 语句有问题 + +- 生产中,mysql在使用全表扫描时的性能是极其差的,所以MySQL尽量避免出现全表扫描 + +**索引扫描** + +#### 11.5.1.1 常见的索引扫描类型 + +- index(全索引扫描,扫描整个索引树) +- range(范围扫描,使用索引进行范围查询) +- ref(使用非唯一索引进行等值查询) +- eq_ref(使用唯一索引进行等值查询,通常出现在多表连接中) +- const(使用主键或唯一索引进行等值查询,最多返回一行) +- system(表中只有一行数据,是 const 的特例) +- null(MySQL 不用访问表或索引就能得到结果) + +- 从上到下,性能从最差到最好,我们认为至少要达到range级别 + +### 11.5.2 index - Full Index Scan,index与ALL区别为index类型只遍历索引树。 -### 14.4.2 range +### 11.5.3 range - 索引范围扫描,对索引的扫描开始于某一点,返回匹配值域的行。显而易见的索引范围扫描是带有between或者where子句里带有<,>查询。 @@ -1558,7 +1691,7 @@ mysql> alter table city add index idx_city(population); mysql> explain select * from city where population>30000000; ``` -### 14.4.3 ref +### 11.5.4 ref - 用非唯一索引扫描或者唯一索引的前缀扫描,返回匹配某个单独值的记录行。 @@ -1569,7 +1702,7 @@ mysql> explain select * from city where countrycode in ('CHN','USA'); mysql> explain select * from city where countrycode='CHN' union all select * from city where countrycode='USA'; ``` -### 14.4.4 eq_ref +### 11.5.5 eq_ref - 类似ref,区别就在使用的索引是唯一索引,对于每个索引键值,表中只有一条记录匹配,简单来说,就是多表连接中使用primary key或者 unique key作为关联条件A @@ -1578,7 +1711,7 @@ join B on A.sid=B.sid ``` -### 14.4.5 const、system +### 11.5.6 const、system - 当MySQL对查询某部分进行优化,并转换为一个常量时,使用这些类型访问。 - 如将主键置于where列表中,MySQL就能将该查询转换为一个常量 @@ -1587,7 +1720,7 @@ on A.sid=B.sid mysql> explain select * from city where id=1000; ``` -### 14.4.6 NULL +### 11.5.7 NULL - MySQL在优化过程中分解语句,执行时甚至不用访问表或索引,例如从一个索引列里选取最小值可以通过单独索引查找完成。 @@ -1595,11 +1728,33 @@ mysql> explain select * from city where id=1000; mysql> explain select * from city where id=1000000000000000000000000000; ``` -### 14.4.7 Extra(扩展) +### 11.5.8 Extra(扩展) + +在 MySQL 中,当你执行一条 SQL 语句时,结果集通常包含一个名为 "Extra" 的列,它提供了一些额外的信息,可以帮助我们更好地理解 SQL 语句的执行过程。下面是一些常见的 "Extra" 信息及其含义: + +1. **No index used** + - 表示在执行 SQL 语句时,数据库没有使用任何索引。这可能会降低查询性能。 +2. **Using index** + - 表示在执行 SQL 语句时,数据库使用了索引来优化查询。这通常意味着查询性能较好。 +3. **Using index condition** + - 表示在执行 SQL 语句时,数据库使用了索引条件下推(Index Condition Pushdown)技术来优化查询。这可以减少不必要的行访问。 +4. **Using index for group-by** + - 表示在执行 GROUP BY 语句时,数据库使用了索引来优化分组操作。 +5. **Using temporary** + - 表示在执行 SQL 语句时,数据库创建了一个临时表来存储中间结果。这可能会降低查询性能。 +6. **Using filesort** + - 表示在执行 SQL 语句时,数据库需要对结果集进行额外的排序操作。这可能会降低查询性能。 +7. **Using join buffer (Block Nested Loop)** + - 表示在执行 JOIN 查询时,数据库使用了连接缓冲区来优化连接操作。 +8. **Impossible WHERE noticed after reading const tables** + - 表示在执行 SQL 语句时,数据库发现 WHERE 条件永远为 false,因此直接返回空结果集。 +9. **No tables used** + - 表示在执行 SQL 语句时,数据库没有访问任何表,例如执行 `SELECT 1;`。 +10. **Select tables optimized away** + - 表示在执行 SQL 语句时,数据库优化掉了部分表的访问,例如在某些情况下,数据库可以直接从索引中获取所需的数据,而无需访问表本身。 + +这些 "Extra" 信息可以帮助我们了解 SQL 语句的执行过程,识别潜在的性能问题,并针对性地优化查询。在优化 SQL 语句时,我们应该关注那些可能降低性能的信息,例如 "Using temporary"、"Using filesort" 等 -- Using temporary -- Using filesort 使用了默认的文件排序(如果使用了索引,会避免这类排序) -- Using join buffer - 如果出现Using filesort请检查order by ,group by ,distinct,join 条件列上没有索引 ```sql @@ -1615,7 +1770,7 @@ mysql> select * from city where population=2870300 order by population; * 前缀索引去控制,rows: 越小越好 ``` -## 14.5 建立索引的原则(规范) +## 11.6 建立索引的原则(规范) - 为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索引和创建什么类型的索引。 - 选择唯一性索引 @@ -1708,16 +1863,6 @@ mysql> explain select * from test where telnum=120; mysql> explain select * from test where telnum='120'; ``` -- <> ,not in 不走索引 - -```sql -mysql> select * from tab where telnum <> '1555555'; -mysql> explain select * from tab where telnum <> '1555555'; -``` - -- 单独的>,<,in 有可能走,也有可能不走,和结果集有关,尽量结合业务添加limit -- or或in尽量改成union - ```sql EXPLAIN SELECT * FROM teltab WHERE telnum IN ('110','119'); #改写成 @@ -1726,40 +1871,15 @@ UNION ALL SELECT * FROM teltab WHERE telnum='119' ``` -- like "%_" 百分号在最前面不走索引 +# 12. MySQL的存储引擎 -```sql -#走range索引扫描 -EXPLAIN SELECT * FROM teltab WHERE telnum LIKE '31%'; -#不走索引 -EXPLAIN SELECT * FROM teltab WHERE telnum LIKE '%110'; -``` +## 12.1 存储引擎简介 -%linux%类的搜索需求,可以使用Elasticsearch -------> ELK +​ Mysql的数据用不同的技术存储在文件(或内存)中,不同的技术拥有不同的存储机制、索引技巧、锁定水平,通过选择不同的技术获得不同的功能,从而改善应用的整体功能,而这些不同的技术和功能就是存储引擎(也称作表引擎) -- 单独引用联合索引里非第一位置的索引列 +​ Mysql支持的存储引擎:InnoDB、MyISAM、MEMORY、CSV、BLACKHOLE、FEDERATED、MRG_MYISAM、 ARCHIVE、PERFORMANCE_SCHEMA。其中NDB和InnoDB提供事务安全表,其他存储引擎都是非事务安全表 -```sql -CREATE TABLE t1 (id INT,NAME VARCHAR(20),age INT ,sex ENUM('m','f'),money INT); -ALTER TABLE t1 ADD INDEX t1_idx(money,age,sex); -DESC t1 -SHOW INDEX FROM t1 -#走索引的情况测试 -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE money=30 AND age=30 AND sex='m'; -#部分走索引 -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE money=30 AND age=30; -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE money=30 AND sex='m'; -#不走索引 -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE age=20 -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE age=30 AND sex='m'; -EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE sex='m'; -``` - -# 15. MySQL的存储引擎 - -## 15.1 存储引擎简介 - -![img](01.Mysql/KkaagjFIBB8C0CCF.png!thumbnail) +![img](01.Mysql/KkaagjFIBB8C0CCF-1739583976575108.png!thumbnail) - 文件系统: - 操作系统组织和存取数据的一种机制。 @@ -1773,7 +1893,7 @@ EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE sex='m'; - 除了可以提供基本的存取功能,还有更多功能事务功能、锁定、备份和恢复、优化以及特殊功能 - 总之,存储引擎的各项特性就是为了保障数据库的安全和性能设计结构。 -## 15.2 MySQL自带的存储引擎类型 +## 12.2 MySQL自带的存储引擎类型 - MySQL 提供以下存储引擎: - InnoDB @@ -1792,8 +1912,92 @@ EXPLAIN SELECT NAME,age,sex,money FROM t1 WHERE sex='m'; - perconaDB - mariaDB +## 12.3 不同存储引擎介绍 + +### 12.3.1 InnoDB + +MySql 5.6 版本默认的存储引擎。InnoDB 是一个事务安全的存储引擎,它具备提交、回滚以及崩溃恢复的功能以 保护用户数据。InnoDB 的行级别锁定以及 Oracle 风格的一致性无锁读提升了它的多用户并发数以及性能。 + +InnoDB 将用户数据存储在聚集索引中以减少基于主键的普通查询所带来的 I/O 开销。为了保证数据的完整性, + +InnoDB 还支持外键约束。 + +应用场景:并发高、数据一致、更新和删除操作较多、事务的完整提交和回滚 + +**innodb体系结构:** + +innodb主要包括 内存池、后台线程以及存储文件 + +内存池是由多个内存块组成的,主要包括缓存磁盘数据,redolog 缓冲等 + +后台线程则包括了: Master Thread、IO Thread、Purge Thread等 + +由 InnoDB 存储引擎实现的表的存储结构文件一般包括表结构文件(.frm)、共享表空间文件(ibdata1)、独占表空间文件(ibd)以及日志文件(redo 文件等)等。 + +### 12.3.2 MyISAM(读、插入操作) + +MyISAM既不支持事务、也不支持外键、其优势是访问速度快,但是表级别的锁定限制了它在读写负载方面的性能, 因此它经常应用于只读或者以读为主的数据场景。 + +应用场景:读操作和插入操作为主 + +### 12.3.3 Memory(内存存储数据,快速定位记录) + +在内存中存储所有数据,应用于对非关键数据由快速查找的场景。Memory类型的表访问数据非常快,因为它的数据 是存放在内存中的,并且默认使用HASH索引,但是一旦服务关闭,表中的数据就会丢失 + +应用场景:快速定位记录 + +- MEMORY是MySQL中一类特殊的存储引擎。它使用存储在内存中的内容来创建表,而且数据全部放在内存中。这些特性与前面的两个很不同。 +- 每个基于MEMORY存储引擎的表实际对应一个磁盘文件。该文件的文件名与表名相同,类型为frm类型。该文件中只存储表的结构。而其数据文件,都是存储在内存中,这样有利于数据的快速处理,提高整个表的效率。值得注意的是,服务器需要有足够的内存来维持MEMORY存储引擎的表的使用。如果不需要了,可以释放内存,甚至删除不需要的表。 +- MEMORY默认使用哈希索引。速度比使用B型树索引快。当然如果你想用B型树索引,可以在创建索引时指定。 +- 注意,MEMORY用到的很少,因为它是把数据存到内存中,如果内存出现异常就会影响数据。如果重启或者关机,所有数据都会消失。因此,基于MEMORY的表的生命周期很短,一般是一次性的。 + +### 12.3.4 BLACKHOLE(只接收不保存数据) + +黑洞存储引擎,类似于 Unix 的 /dev/null,Archive 只接收但却并不保存数据。对这种引擎的表的查询常常返 回一个空集。这种表可以应用于 DML 语句需要发送到从服务器,但主服务器并不会保留这种数据的备份的主从配置 中。 + +### 12.3.5 CSV + +它的表真的是以逗号分隔的文本文件。CSV 表允许你以 CSV 格式导入导出数据,以相同的读和写的格式和脚本和应用交互数据。由于 CSV 表没有索引,你最好是在普通操作中将数据放在 InnoDB 表里,只有在导入或导出阶段 使用一下 CSV 表。 + +### 12.3.6 NDB + +(又名 NDBCLUSTER)——这种集群数据引擎尤其适合于需要最高程度的正常运行时间和可用性的应用。注意:NDB 存 储引擎在标准 MySql 5.6 版本里并不被支持。 + +目前能够支持 MySql 集群的版本有:基于 MySql 5.1 的 MySQL Cluster NDB 7.1;基于 MySql 5.5 的 MySQL Cluster NDB 7.2;基于 MySql 5.6 的 MySQL Cluster NDB 7.3。同样基于 MySql 5.6 的 MySQL Cluster NDB 7.4 + +目前正处于研发阶段。 + +### 12.3.7 Merge(超大规模数据场景) + +允许 MySql DBA 或开发者将一系列相同的 MyISAM 表进行分组,并把它们作为一个对象进行引用。适用于超大规 模数据场景,如数据仓库。 + +### 12.3.8 Federated(分布式) + +提供了从多个物理机上联接不同的 MySql 服务器来创建一个逻辑数据库的能力。适用于分布式或者数据市场的场景。 + +### 12.3.9 Example(保存例子) + +这种存储引擎用以保存阐明如何开始写新的存储引擎的 MySql 源码的例子。它主要针对于有兴趣的开发人员。这 种存储引擎就是一个啥事也不做的 "存根"。你可以使用这种引擎创建表,但是你无法向其保存任何数据,也无法从 它们检索任何索引。 + +### 12.3.10 **经典面试题:InnoDB和MyISAM区别** + +两种存储引擎的大致区别表现在: + +- InnoDB支持事务,MyISAM不支持,这一点是非常之重要。事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了。 +- MyISAM适合查询以及插入为主的应用。 +- InnoDB适合频繁修改以及涉及到安全性较高的应用。 +- InnoDB支持外键,MyISAM不支持。 +- 从MySQL5.5.5以后,InnoDB是默认引擎。 +- InnoDB不支持FULLTEXT类型的索引。 +- InnoDB中不保存表的行数,如select count(*) from table时,InnoDB需要扫描一遍整个表来计算有多少行,但是 MyISAM只要简单的读出保存好的行数即可。注意的是,当count()语句包含where条件时MyISAM也需要扫描整个表。 +- 对于自增长的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中可以和其他字段一起建立联合索引。 +- DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的 删除,效率非常慢。MyISAM则会重建表。 +- InnoDB支持行锁(某些情况下还是锁整表,如 update table set a=1 where user like '%lee%'。 + +## 12.4 查看当前MySQL的存储引擎 + ```sql -mysql> show engines +mysql> show engines; #查看当前MySQL支持的存储引擎类型 mysql> select table_schema,table_name,engine from information_schema.tables where engine='innodb'; #查看innodb的表有哪些 @@ -1819,7 +2023,7 @@ mysql> select table_schema,table_name,engine from information_schema.tables wher -rw-rw---- 1 mysql mysql 688128 Aug 14 16:23 city.ibd ``` -## 15.3 innodb存储引擎的简介 +## 12.5 innodb存储引擎的简介 - 在MySQL5.5版本之后,默认的存储引擎,提供高可靠性和高性能。 @@ -1886,13 +2090,6 @@ SHOW TABLE STATUS LIKE 'CountryLanguage'\G # 查看表的存储引擎 ``` -- 使用 INFORMATION_SCHEMA 确认每个表的存储引擎 - -```sql -SELECT TABLE_NAME, ENGINE FROM INFORMATION_SCHEMA.TABLESWHERE TABLE_NAME = 'City'AND TABLE_SCHEMA = 'world'\G -# 查看表的存储引擎 -``` - - 存储引擎的设置 - 在启动配置文件中设置服务器存储引擎 @@ -1912,14 +2109,14 @@ SET @@storage_engine= - 在 CREATE TABLE 语句指定 ```sql -CREATE TABLE t (i INT) ENGINE = ; +CREATE TABLE talbe_name (id int) ENGINE = ; # 建表的时候指定存储引擎 ``` -## 15.4 【实战】存储引擎切换 +## 12.6 【实战】存储引擎切换 - 项目背景: - - 公司原有的架构:一个展示型的网站,LAMT,MySQL5.1.77版本(MYISAM),50M数据量。 + - 公司原有的架构:一个展示型的网站,LAMP,MySQL5.1.77版本(MYISAM),50M数据量。 - 小问题不断: - 表级锁:对表中任意一行数据修改类操作时,整个表都会锁定,对其他行的操作都不能同时进行。 - 不支持故障自动恢复(CSR):当断电时有可能会出现数据损坏或丢失的问题。 @@ -1948,50 +2145,7 @@ CREATE TABLE t (i INT) ENGINE = ; - 停应用,将备份之后的生产库发生的新变化,补偿到新库 - 应用割接到新数据库 -## 15.5 表空间介绍 - -![img](01.Mysql/5TsFS9HElaslP5ss.png!thumbnail) - -- 5.5版本以后出现共享表空间概念 -- 表空间的管理模式的出现是为了数据库的存储更容易扩展 -- 5.6版本中默认的是独立表空间 - - 共享表空间 - -```sql -[root@localhost ~]# ll /application/mysql/data/ --rw-rw----. 1 mysql mysql 12582912 6月 8 09:43 ibdata1 -# 物理查看 -mysql> show variables like '%path%'; -innodb_data_file_path = ibdata1:12M:autoextend -``` - -- 5.6版本中默认存储 - - 系统数据 - - undo - - 临时表 - - 5.7版本中默认会将undo和临时表独立出来,5.6版本也可以独立,只不过需要在初始化的时候进行配置 -- 共享表空间扩展配置方法 - -```shell -#编辑配置文件 -[root@db01 ~]# vim /etc/my.cnf -[mysqld] -#注意,idata1文件已存在,可能超过50M导致mysqld重启不成功,建议重命名了再重启。 -innodb_data_file_path=ibdata1:50M;ibdata2:50M:autoextend -``` - -- 独立表空间 - - 对于用户自主创建的表,会采用此种模式,每个表由一个独立的表空间进行管理 - -```shell -[root@localhost ~]# ll /application/mysql/data/world/ --rw-rw----. 1 mysql mysql 589824 6月 6 10:23 city.ibd -# 物理查看 -mysql> show variables like '%per_table%'; -innodb_file_per_table = ON -``` - -## 15.6 【实战】数据库服务损坏 +## 12.7 【实战】数据库服务损坏 - 在没有备份数据的情况下,突然断电导致表损坏,打不开数据库。 @@ -2002,20 +2156,20 @@ innodb_file_per_table = ON [root@db01 ~]# chown -R mysql.mysql /application/mysql/data/world ``` -1. 启动新数据库 +2. 启动新数据库 ```shell #pkill mysqld 先干掉mysql [root@db01 ~]# mysqld_safe --defaults-file=/data/3307/my.cnf & ``` -1. 登陆数据库查看 +3. 登陆数据库查看 ```sql mysql> show databases; ``` -1. 查询表中数据 +4. 查询表中数据 ```sql mysql> select * from city; @@ -2024,7 +2178,7 @@ ERROR 1146 (42S02): Table 'world.city' doesn't exist ``` -1. 找到**以前的表**结构在新库中创建表,此处演示用的show命令实际需要从原来的开发文档查看 +5. 找到**以前的表**结构在新库中创建表,此处演示用的show命令实际需要从原来的开发文档查看 ```sql mysql> show create table world.city; @@ -2058,33 +2212,35 @@ mysql> CREATE TABLE `city_new` ( ``` -1. 删除表空间文件 +6. 删除表空间文件 ```sql mysql> alter table city_new discard tablespace; ``` -1. 拷贝旧表空间文件 +7. 拷贝旧表空间文件 ```sql [root@db01 world]# cp /data/3307/data/world/city.ibd /data/3307/data/world/city_new.ibd ``` -1. 授权 +8. 授权 ```sql [root@db01 world]# cd /data/3307/data/world [root@db01 world]# chown -R mysql.mysql * ``` -1. 导入表空间 +9. 导入表空间 ```sql mysql> alter table city_new import tablespace; mysql> alter table city_new rename city; ``` -## 15.7 事务 +# 13. MySQL事务 + +## 13.1 事务 - 事务的定义 - 主要针对DML语句(update,delete,insert)一组数据操作执行步骤,这些步骤被视为一个工作单元 @@ -2108,7 +2264,7 @@ mysql> alter table city_new rename city; - Durable(持久性) - 事务成功完成后,所做的所有更改都会准确地记录在数据库中。所做的更改不会丢失。 -![img](01.Mysql/uxH9iBpInyy8pwrk.png!thumbnail) +![img](01.Mysql/uxH9iBpInyy8pwrk-1739583976575109.png!thumbnail) - 事务的控制语句 @@ -2187,7 +2343,7 @@ mysql> rollback; - select for update - 在autocommit=1的时候 -### 15.7.1 事务日志redo +### 13.1.1 事务日志redo - redo,顾名思义“重做日志”,是事务日志的一种。 - 在事务ACID过程中,实现的是“D”持久化的作用。 @@ -2197,20 +2353,22 @@ mysql> rollback; ```sql update t1 set num=2 where num=1; -# 执行步骤 -* 首先将t1表中num=1的行所在数据页加载到内存中buffer page -* MySQL实例在内存中将num=1的数据页改成num=2 -* num=1变成num=2的变化过程会记录到,redo内存区域,也就是redo buffer page中 -commit; -# 提交事务执行步骤 -* 当敲下commit命令的瞬间,MySQL会将redo buffer page写入磁盘区域redo log -* 当写入成功之后,commit返回ok ``` -### 15.7.2 事务日志undo +- 执行步骤 + * 首先将t1表中num=1的行所在数据页加载到内存中buffer page + * MySQL实例在内存中将num=1的数据页改成num=2 + * num=1变成num=2的变化过程会记录到,redo内存区域,也就是redo buffer page中 + commit; +- 提交事务执行步骤 + * 当敲下commit命令的瞬间,MySQL会将redo buffer page写入磁盘区域redo log + * 当写入成功之后,commit返回ok + + +### 13.1.2 事务日志undo - undo,顾名思义“回滚日志”,是事务日志的一种。 -- 在事务ACID过程中,实现的是“A”原子性的作用。当然CI的特性也和undo有关 +- 在事务ACID过程中,实现的是“A”原子性的作用。当然C的特性也和undo有关 - redo和undo的存储位置 ```shell @@ -2226,7 +2384,7 @@ commit; - 在MySQL5.6版本中undo是在ibdata文件中,在MySQL5.7版本会独立出来。 -### 15.7.3 事务中的锁 +### 13.1.3 事务中的锁 - “锁”顾名思义就是锁定的意思 - 在事务ACID特性过程中,“锁”和“隔离级别”一起来实现“I”隔离性的作用。 @@ -2248,7 +2406,7 @@ commit; - 确保每个事务的 SELECT 输出一致,一个用户update命令即使commit。另一个用户看到的未修改的,除非重新登录或者commit+ - InnoDB 的默认级别 - SERIALIZABLE - - 将一个事务的结果与其他事务完全隔离,一个用户update命令后未commit,另一个用户即使select都看不到。 + - 将一个事务的结果与其他事务完全隔离,一个用户update命令后commit,另一个用户即使select都看不到。 ```sql mysql> show variables like '%iso%'; @@ -2264,9 +2422,9 @@ transaction_isolation=read-commit #修改隔离级别为RC ``` -# 16. MySQL日志管理 +# 14. MySQL日志管理 -## 16.1 日志简介 +## 14.1 日志简介 | 日志文件 | 选项 | 文件名,表名 | 程序 | | :------- | :--------------------------------- | :------------------------ | :------------ | @@ -2276,7 +2434,7 @@ transaction_isolation=read-commit | 二进制 | --log-bin --expire-logs-days | host_name-bin.000001 | mysqlbinlog | | 审计 | --audit_log --audit_log_file ... | audit.log | | -## 16.2 错误日志 +## 14.2 错误日志 - 记录mysql数据库的一般状态信息及报错信息,是我们对于数据库常规报错处理的常用日志。 - 默认位置 @@ -2293,12 +2451,12 @@ mysql> show variables like 'log_error'; # 查看方式 ``` -## 16.3 一般查询日志 +## 14.3 一般查询日志 - 记录mysql所有执行成功的SQL语句信息,可以做审计用,但是我们很少开启。 - 默认位置 - $MYSQL_HOME/data/ -- 开启方式 +- y开启方式 - MySQL安装完之后默认不开启 ```shell @@ -2311,7 +2469,7 @@ mysql> show variables like '%gen%'; # 查看方式 ``` -## 16.4 二进制日志 +## 14.4 二进制日志 - 记录已提交的DML事务语句,并拆分为多个事件(event)来进行记录 @@ -2346,38 +2504,53 @@ mysql> show variables like '%gen%'; - 数据的备份恢复 - 数据的复制 -### 16.4.1 二进制日志的管理操作实战 +### 14.4.1 二进制日志的管理操作实战 -- 开启方式 +#### 14.4.1.1 开启bin-log日志 + +注意:在mysql5.6及以后的版本中开启binlog必须要加上server-id。 ```shell -[root@db01 data]# vim /etc/my.cnf -[mysqld] -log-bin=mysql-bin -binlog_format=row -``` - -注意:在mysql5.7中开启binlog必须要加上server-id。 - -```shell -[root@db01 data]# vim /etc/my.cnf +[root@localhost ~]# vim /etc/my.cnf [mysqld] log-bin=mysql-bin binlog_format=row server_id=1 ``` -- 二进制日志的操作 +检查主目录下的binlog日志文件 ```shell -[root@db01 data]# ll /application/mysql/data/ --rw-rw---- 1 mysql mysql 285 Mar 6 2021 mysql-bin.000001 -#物理查看 +# 物理查看 +[root@localhost ~]# ll /application/mysql/data/mysql-bin* +-rw-rw---- 1 mysql mysql 120 Feb 15 11:23 /application/mysql/data/mysql-bin.000001 +-rw-rw---- 1 mysql mysql 19 Feb 15 11:23 /application/mysql/data/mysql-bin.index + +# MySQL命令行查看 mysql> show binary logs; ++------------------+-----------+ +| Log_name | File_size | ++------------------+-----------+ +| mysql-bin.000001 | 120 | ++------------------+-----------+ +1 row in set (0.00 sec) + mysql> show master status; -#命令行查看 -mysql> show binlog events in 'mysql-bin.000007'; -#查看binlog事件 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 120 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 查看binlog事件 +mysql> show binlog events in 'mysql-bin.000001'; ++------------------+-----+-------------+-----------+-------------+---------------------------------------+ +| Log_name | Pos | Event_type | Server_id | End_log_pos | Info | ++------------------+-----+-------------+-----------+-------------+---------------------------------------+ +| mysql-bin.000001 | 4 | Format_desc | 1 | 120 | Server ver: 5.6.40-log, Binlog ver: 4 | ++------------------+-----+-------------+-----------+-------------+---------------------------------------+ +1 row in set (0.00 sec) ``` - 事件介绍 @@ -2388,114 +2561,194 @@ mysql> show binlog events in 'mysql-bin.000007'; - 所谓的位置就是event对整个二进制的文件的相对位置。 - 对于一个二进制日志中,前120个position是文件格式信息预留空间。 - MySQL第一个记录的事件,都是从120开始的。 -- row模式下二进制日志分析及数据恢复 + +#### 14.4.1.2 row模式下binlog分析及数据恢复 + +一、查看初始binlog信息 ```sql mysql> show master status; -# 查看binlog信息 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 120 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) +``` + +二、模拟数据变化 + +```sql +# 创建数据库和表 mysql> create database binlog; -# 创建一个binlog库 -mysql> use binlog -# 使用binlog库 +mysql> use binlog; mysql> create table binlog_table(id int); -# 创建binglog_table表 + +# 查看现在的binlog信息 mysql> show master status; -# 查看binlog信息 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 331 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 插入数据(如果是非自动提交,记得手动commit) mysql> insert into binlog_table values(1); -# 插入数据1 mysql> show master status; -# 查看binlog信息 -mysql> commit; -# 提交 -mysql> show master status; -# 查看binlog信息 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 533 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 再次插入数据 mysql> insert into binlog_table values(2); -# 插入数据2 mysql> insert into binlog_table values(3); -#插入数据3 mysql> show master status; -# 查看binlog信息 -mysql> commit; -# 提交 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 937 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 删除数据操作 mysql> delete from binlog_table where id=1; -# 删除数据1 mysql> show master status; -# 查看binlog信息 -mysql> commit; -# 提交 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 1139 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 更改数据操作 mysql> update binlog_table set id=22 where id=2; -# 更改数据2为22 mysql> show master status; -# 查看binlog -mysql> commit; -# 提交 -mysql> show master status; -# 查看binlog信息 ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 1347 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 查看数据操作 mysql> select * from binlog_table; -# 查看数据 +mysql> show master status; ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 1347 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) + +# 删表删库跑路 mysql> drop table binlog_table; -# 删表 mysql> drop database binlog; -# 删库 +mysql> show master status; ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 1565 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) ``` -- 恢复数据之前 - -```shell -mysql> show binlog events in 'mysql-bin.000013'; -# 查看binlog事件 -# 使用mysqlbinlog来查看 -[root@db01 data]# mysqlbinlog /application/mysql/data/mysql-bin.000013 -[root@db01 data]# mysqlbinlog /application/mysql/data/mysql-bin.000013|grep -v SET -[root@db01 data]# mysqlbinlog --base64-output=decode-rows -vvv mysql-bin.000013 -# 查看二进制日志后,发现删除开始位置是858 -# binlog某些内容是以二进制放进去的,加入base64-output用于解码 -[root@db01 data]# mysqlbinlog --start-position=120 --stop-position=858 /application/mysql/data/mysql-bin.000013 > /tmp/binlog.sql -mysql> set sql_log_bin=0; -#临时关闭binlog,必须关闭,否则source倒入的内容也会被记录进binlog,binlog就脏了。 -mysql> source /tmp/binlog.sql -#执行sql文件 -mysql> show databases; -#查看删除的库 -mysql> use binlog -#进binlog库 -mysql> show tables; -#查看删除的表 -mysql> select * from binlog_table; -#查看表中内容 -``` - -- 只查看某个数据库的binlog文件 +三、数据恢复 ```sql +# 查看当前binlog事件 +mysql> show binlog events in 'mysql-bin.000001'; + +# 还可以使用mysqlbinlog工具进行查看 +[root@localhost ~]# mysqlbinlog --base64-output=decode-rows /application/mysql/data/mysql-bin.000001 +[root@localhost ~]# mysqlbinlog --base64-output=decode-rows /application/mysql/data/mysql-bin.000001|grep -v SET + +# 发现开始删库删表的开始位置是1347,开始截取删库之前的binlog日志 +[root@localhost ~]# mysqlbinlog --start-position=120 --stop-position=1347 /application/mysql/data/mysql-bin.000001 > /tmp/binlog.sql + +# 恢复数据,恢复之前,临时关闭binlog,否则会继续记录恢复的过程,导致binlog变成脏日志 +mysql> set sql_log_bin=0; +mysql> source /tmp/binlog.sql + +# 检查数据恢复情况 +mysql> show databases; ++--------------------+ +| Database | ++--------------------+ +| information_schema | +| binlog | +| mysql | +| performance_schema | +| test | ++--------------------+ +5 rows in set (0.00 sec) + +mysql> use binlog; +mysql> show tables; ++------------------+ +| Tables_in_binlog | ++------------------+ +| binlog_table | ++------------------+ +1 row in set (0.00 sec) +mysql> select * from binlog_table; ++------+ +| id | ++------+ +| 22 | +| 3 | ++------+ +2 rows in set (0.00 sec) +``` + +#### 14.4.1.3 查看某个数据库的binlog + +一、刷新binlog日志 + +```sql +# 刷新一个新的binlog,从新日志开始记录,但是原来的日志也不会删除 mysql> flush logs; -#刷新一个新的binlog,原来的bin000X.log作废 +mysql> show master status; ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000002 | 120 | | | | ++------------------+----------+--------------+------------------+-------------------+ +1 row in set (0.00 sec) +``` + +二、创建不同的库测试 + +```sql +# 创建db1、db2两个库 mysql> create database db1; mysql> create database db2; -#创建db1、db2两个库 +# 库db1操作 mysql> use db1 -#库db1操作 mysql> create table t1(id int); -#创建t1表 mysql> insert into t1 values(1),(2),(3),(4),(5); -#插入5条数据 -mysql> commit; -#提交 + +# 库db2操作 mysql> use db2 -#库db2操作 mysql> create table t2(id int); -#创建t2表 mysql> insert into t2 values(1),(2),(3); -#插入3条数据 -mysql> commit; -#提交 -mysql> show binlog events in 'mysql-bin.000014'; -#查看binlog事件 -[root@db01 data]# mysqlbinlog -d db1 --base64-output=decode-rows -vvv /application/mysql/data/mysql-bin.000014 -#查看db1的操作 ``` +三、检查binlog日志 + +```sql +mysql> show binlog events in 'mysql-bin.000002'; + +# 只查看db1数据库的binlog +[root@localhost ~]# mysqlbinlog -d db1 --base64-output=decode-rows -vvv /application/mysql/data/mysql-bin.000002 +``` + +### 14.4.2 其他操作 + - 刷新binlog日志 - flush logs; - 重启数据库时会刷新 @@ -2507,116 +2760,204 @@ mysql> show binlog events in 'mysql-bin.000014'; - 删除方式 - 根据存在时间删除日志 -```shell -#临时生效 +```sql +# 临时生效 SET GLOBAL expire_logs_days = 7; -#永久生效 -[root@db01 data]# vim /etc/my.cnf +# 永久生效 +[root@localhost data]# vim /etc/my.cnf [mysqld] expire_logs_days = 7 -* 使用purge命令删除 -PURGE BINARY LOGS BEFORE now() - INTERVAL 3 day; -* 根据文件名删除 -PURGE BINARY LOGS TO 'mysql-bin.000010'; -* 用reset master + +# 使用purge命令删除 +mysql> PURGE BINARY LOGS BEFORE now() - INTERVAL 3 day; +# 根据文件名删除 +mysql> PURGE BINARY LOGS TO 'mysql-bin.000002'; + +# 用reset master 重置binlog mysql> reset master; ``` -## 16.5 慢查询日志 +## 14.5 慢查询日志 - 是将mysql服务器中影响数据库性能的相关SQL语句记录到日志文件 - 通过对这些特殊的SQL语句分析,改进以达到提高数据库性能的目的 -- 默认位置: - - MYSQL_HOME/data/*M**Y**S**Q**L**H**O**M**E*/*d**a**t**a*/hostname-slow.log -- 开启方式(默认没有开启) + +### 14.5.1 开启方式(默认没有开启) ```shell -[root@db01 ~]# vim /etc/my.cnf +[root@localhost ~]# vim /etc/my.cnf [mysqld] -#指定是否开启慢查询日志 +# 指定是否开启慢查询日志 slow_query_log = 1 -#指定慢日志文件存放位置(默认在data) +# 指定慢日志文件存放位置(默认在data) slow_query_log_file=/application/mysql/data/slow.log -#设定慢查询的阀值(默认10s) +# 设定慢查询的阀值(默认10s) long_query_time=0.05 -#不使用索引的慢查询日志是否记录到索引 +# 不使用索引的慢查询日志是否记录到索引 log_queries_not_using_indexes -#查询检查返回少于该参数指定行的SQL不被记录到慢查询日志 -min_examined_row_limit=100(鸡肋) +# 查询检查返回少于该参数指定行的SQL不被记录到慢查询日志 +min_examined_row_limit=100 ``` -- 模拟慢查询语句 +### 14.5.2 慢查询实验 + +一、模拟慢查询语句 ```sql +# 导入SELECT练习中的world库 +[root@localhost ~]# wget -O world.sql 'https://download.s21i.faiusr.com/23126342/0/0/ABUIABAAGAAgzcXwhQYozuPv2AE?f=world.sql&v=1622942413' +[root@localhost ~]# mysql -uroot -p123456 < world.sql + +# 登录到数据库中 mysql> use world -#进入world库 -mysql> show tables; -#查看表 + +# 创建一个新的表 mysql> create table t1 select * from city; -#将city表中所有内容加到t1表中 -mysql> desc t1; -#查看t1的表结构 + +# 将t1表所有内容插入到t1表中(多插入几次) mysql> insert into t1 select * from t1; mysql> insert into t1 select * from t1; mysql> insert into t1 select * from t1; mysql> insert into t1 select * from t1; -#将t1表所有内容插入到t1表中(多插入几次) -mysql> commit; -#提交 -mysql> delete from t1 where id>2000; -#删除t1表中id>2000的数据 -[root@db01 ~]# cat /application/mysql/data/mysql-db01 -#查看慢日志 + +# 搜索t1表中id>2000的数据 +mysql> select * from t1 where id>2000; ``` -- 使用mysqldumpslow命令来分析慢查询日志 +二、查看慢日志 -```shell -$PATH/mysqldumpslow -s c -t 10 /database/mysql/slow-log -#输出记录次数最多的10条SQL语句 +```bash +[root@localhost ~]# cat /application/mysql/data/slow.log +/application/mysql/bin/mysqld, Version: 5.6.40-log (MySQL Community Server (GPL)). started with: +Tcp port: 0 Unix socket: (null) +Time Id Command Argument +# Time: 250215 14:17:49 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.043734 Lock_time: 0.009772 Rows_sent: 0 Rows_examined: 4079 +use world; +SET timestamp=1739600269; +create table t1 select * from city; +# Time: 250215 14:18:02 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.038587 Lock_time: 0.000171 Rows_sent: 0 Rows_examined: 8158 +SET timestamp=1739600282; +insert into t1 select * from t1; +# Time: 250215 14:18:03 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.028329 Lock_time: 0.000063 Rows_sent: 0 Rows_examined: 16316 +SET timestamp=1739600283; +insert into t1 select * from t1; +# Time: 250215 14:18:04 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.077498 Lock_time: 0.000064 Rows_sent: 0 Rows_examined: 32632 +SET timestamp=1739600284; +insert into t1 select * from t1; +# Time: 250215 14:18:05 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.147896 Lock_time: 0.000062 Rows_sent: 0 Rows_examined: 65264 +SET timestamp=1739600285; +insert into t1 select * from t1; +# Time: 250215 14:18:06 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.342130 Lock_time: 0.000066 Rows_sent: 0 Rows_examined: 130528 +SET timestamp=1739600286; +insert into t1 select * from t1; +# Time: 250215 14:19:19 +# User@Host: root[root] @ localhost [] Id: 2 +# Query_time: 0.059468 Lock_time: 0.000121 Rows_sent: 66528 Rows_examined: 130528 +SET timestamp=1739600359; +select * from t1 where id>2000; ``` -- 参数说明: - - -s: - - 是表示按照何种方式排序,c、t、l、r分别是按照记录次数、时间、查询时间、返回的记录数来排序,ac、at、al、ar,表示相应的倒叙; - - -t: - - 是top n的意思,即为返回前面多少条的数据; - - -g: - - 后边可以写一个正则匹配模式,大小写不敏感的; +三、使用mysqldumpslow进行慢日志分析 + +```bash +[root@localhost ~]# mysqldumpslow -s c -t 10 /application/mysql/data/slow.log +``` + +参数说明: + +- -s:是表示按照何种方式排序,c、t、l、r分别是按照记录次数、时间、查询时间、返回的记录数来排序,ac、at、al、ar,表示相应的倒叙; +- -t:是top n的意思,即为返回前面多少条的数据; +- -g:后边可以写一个正则匹配模式,大小写不敏感的; + +例如: ```shell -$PATH/mysqldumpslow -s r -t 10 /database/mysql/slow-log -#得到返回记录集最多的10个查询 -$PATH/mysqldumpslow -s t -t 10 -g "left join" /database/mysql/slow-log #得到按照时间排序的前10条里面含有左连接的查询语句 +$PATH/mysqldumpslow -s t -t 10 -g "left join" /database/mysql/slow-log ``` -- 第三方推荐(扩展): +### 14.5.3 第三方慢日志分析工具-Percona + +Percona Toolkit 是由 Percona 公司开发的一套高级命令行工具,用于执行各种 MySQL、MongoDB 和系统任务。这些工具专为复杂任务设计,能够帮助数据库管理员和运维人员解决手动操作难以完成的任务。Percona Toolkit 是 Percona 支持团队日常使用的工具,具有专业开发、正式测试和全面文档化的特点。 + +`pt-query-digest` 是 Percona Toolkit 中的一个重要工具,专门用于分析 MySQL 的慢查询日志。它的核心功能包括: + +- **分析和汇总慢查询日志**:通过解析日志文件,找出执行时间长、负载高的查询。 +- **生成详细的性能报告**:提供查询执行时间、锁定时间、查询效率排名等信息,帮助快速定位性能瓶颈。 +- **支持多种输入类型**:可以分析 MySQL 慢查询日志、通用日志、二进制日志,甚至通过 tcpdump 捕获的网络数据。 +- **灵活的过滤和排序**:支持通过正则表达式过滤特定查询,按执行时间、调用次数等排序。 + +#### 14.5.3.1 工具安装 ```shell -yum install -y percona-toolkit-3.0.11-1.el6.x86_64.rpm -* 使用percona公司提供的pt-query-digest工具分析慢查询日志 -[root@mysql-db01 ~]# pt-query-digest /application/mysql/data/mysql-db01-slow.log +[root@localhost ~]# wget https://downloads.percona.com/downloads/percona-toolkit/3.5.0/binary/redhat/9/x86_64/percona-toolkit-3.5.0-5.el9.x86_64.rpm +[root@localhost ~]# yum install -y percona-toolkit-3.5.0-5.el9.x86_64.rpm + + +[root@localhost ~]# pt-query-digest /application/mysql/data/slow.log ``` -有能力的可以做成可视化界面: -Anemometer基于pt-query-digest将MySQL慢查询可视化 +#### 14.5.3.2 慢日志分析示例 -慢日志分析工具下载 https://[www.percona.com/downloads/percona-toolkit/LATEST/](http://www.percona.com/downloads/percona-toolkit/LATEST/) +```bash +[root@localhost ~]# pt-query-digest /application/mysql/data/slow.log -可视化代码下载 https://github.com/box/Anemometer +pt-query-digest 的分析结果: -![img](01.Mysql/yhWTJJz8GZkilbZN.png!thumbnail) +总体统计数据: +Queries examined: 总共分析的查询语句数量 +Query time: 总查询时间 +Min/Max/Avg query time: 最短、最长和平均查询时间 +Variance: 查询时间的方差 +Aggregated profile: 按查询类型统计的信息,如 SELECT、INSERT、UPDATE 等 +Top Queries: +这部分列出了执行时间最长的前 10 个查询语句。 +Rank: 查询在整体中的排名 +Query ID: 查询的唯一标识 +Response Time: 查询的总响应时间 +Calls: 查询被执行的次数 +R/Call: 每次调用的平均响应时间 +V/M: 查询时间的方差与平均值的比率,反映了查询时间的离散程度 +Item: 查询语句的文本 +查询语句的详细信息: +Query ID: 查询的唯一标识 +Database: 查询所针对的数据库 +Users: 执行查询的用户 +Hosts: 执行查询的主机 +Query: 查询语句的文本 +Exec time: 查询的总执行时间 +Lock time: 查询获取的锁定时间 +Rows sent: 查询返回的行数 +Rows examined: 查询扫描的行数 +Rows affected: 查询影响的行数 +Bytes sent: 查询返回的字节数 +Tmp tables: 查询使用的临时表数量 +Tmp disk tables: 查询使用的临时磁盘表数量 +Scan/Join tables: 查询扫描的表数量 +``` -# 17. 备份与恢复 +# 15. 备份与恢复 -- 备份的原因 - - 第一个是保护公司的数据. - - 第二个是让网站能7*24小时提供服务(用户体验)。 - - 备份就是为了恢复。 - - 尽量减少数据的丢失(公司的损失) +**备份的原因:** -## 17.1 备份的类型 +- 第一个是保护公司的数据. +- 第二个是让网站能7*24小时提供服务(用户体验)。 +- 备份就是为了恢复。 +- 尽量减少数据的丢失(公司的损失) + +## 15.1 备份的类型 - 冷备份: - 这些备份在用户不能访问数据时进行,因此无法读取或修改数据。这些脱机备份会阻止执行任何使用数据的活动。这些类型的备份不会干扰正常运行的系统的性能。但是,对于某些应用程序,会无法接受必须在一段较长的时间里锁定或完全阻止用户访问数据。 @@ -2625,15 +2966,14 @@ Anemometer基于pt-query-digest将MySQL慢查询可视化 - 热备份: - 这些动态备份在读取或修改数据的过程中进行,很少中断或者不中断传输或处理数据的功能。使用热备份时,系统仍可供读取和修改数据的操作访问。 -## 17.2 备份的方式 +## 15.2 备份的方式 -- 逻辑备份 +**逻辑备份:**MySQL软件自带的功能 - SQL软件自带的功能 - - - 基于SQL语句的备份 - - binlog - - into outfile +- 基于SQL语句的备份 + - binlog + - into outfile + - mysqldump ```sql [root@localhost ~]# vim /etc/my.cnf @@ -2644,59 +2984,122 @@ mysql> select * from world.city into outfile '/tmp/world_city.data'; * replication ``` -- 物理备份 +**物理备份:**通过二进制方式直接拖走所有数据、配置文件 - 通过二进制方式直接拖走所有数据、配置文件 +- 基于数据文件的备份 + - Xtrabackup(percona公司) - - 基于数据文件的备份 - - Xtrabackup(percona公司) +**备份策略:** -## 17.3 备份工具 +- 全量备份 full +- 增量备份 increamental -- 备份策略 - - 全量备份 full - - 增量备份 increamental -- 备份工具 - - mysqldump(逻辑) - - mysql原生自带很好用的逻辑备份工具 - - mysqlbinlog(逻辑) - - 实现binlog备份的原生态命令 - - xtrabackup(物理) - - precona公司开发的性能很高的物理备份工具 -- 备份工具使用 - - mysqldump - - 连接服务端参数(基本参数):-u -p -h -P -S - - -A, --all-databases:全库备份 +**备份工具:** -```shell -[root@db01 ~]# mysqldump -uroot -p123456 -A > /backup/full.sql - * 不加参数:单库、单表多表备份 -[root@db01 ~]# mysqldump -uroot -p123456 db1 > /backup/db1.sql -[root@mysql-db01 backup]# mysqldump -uroot -p123456 world city > /backup/city.sql - * -B:指定库备份 -[root@db01 ~]# mysqldump -uroot -p123 -B db1 > /backup/db1.sql -[root@db01 ~]# mysqldump -uroot -p123 -B db1 db2 > /backup/db1_db2.sql - * -F:flush logs在备份时自动刷新binlog(不怎么常用) -[root@db01 backup]# mysqldump -uroot -p123 -A -R –triggers -F > /backup/full_2.sql - * -d:仅表结构 - * -t:仅数据 +- mysqldump(逻辑) + - mysql原生自带很好用的逻辑备份工具 +- mysqlbinlog(逻辑) + - 实现binlog备份的原生态命令 +- xtrabackup(物理) + - precona公司开发的性能很高的物理备份工具 + +## 15.3 mysqldump + +`mysqldump` 是 MySQL 数据库备份工具,用于导出数据库结构和数据到 SQL 文件。 + +### 15.3.1 参数说明 + +**数据库连接参数** + +- `-u` 或 `--user`:指定连接数据库的用户名。 +- `-p` 或 `--password`:指定连接数据库的密码。如果省略密码,系统会提示输入。 +- `-h` 或 `--host`:指定数据库服务器的主机名或 IP 地址。默认为本地主机(`localhost`)。 +- `-P` 或 `--port`:指定数据库服务器的端口号。默认为 `3306`。 +- `-S` 或 `--socket`:指定连接到本地 MySQL 服务器的 Unix 套接字文件路径。 + +------ + +**数据库和表选择参数** + +- 数据库名:指定要备份的数据库名称。 +- `-B` 或 `--databases`:备份多个数据库时使用。例如:`mysqldump -B db1 db2`。 +- `--all-databases` 或 `-A`:备份所有数据库。 +- `--tables`:指定要备份的表名。例如:`mysqldump db_name table1 table2`。 + +------ + +**备份内容和格式参数** + +- `--no-data` 或 `-d`:只备份数据库结构,不备份数据。 +- `--no-create-info` 或 `-t`:只备份数据,不备份表结构。 +- `--complete-insert`:使用完整的 `INSERT` 语句(包含列名)。 +- `--extended-insert`:使用多行 `INSERT` 语句,提高导入效率。 +- `--skip-extended-insert`:禁用多行 `INSERT`,每行数据生成单独的 `INSERT` 语句。 +- `--hex-blob`:将二进制数据以十六进制形式导出。 +- `--set-gtid-purged`:控制是否记录 GTID 信息。选项为 `ON`、`OFF` 或 `AUTO`。 + +------ + +**性能和优化参数** + +- `--quick`:对大表进行快速导出,直接将数据写入输出文件,减少内存占用。 +- `--single-transaction`:在导出时启动一个事务,确保数据一致性,适用于 InnoDB 存储引擎。 +- `--flush-logs`:在导出开始时刷新 MySQL 日志。 +- `--master-data`:包含二进制日志信息,用于主从复制的备份。选项为 `1` 或 `2`,`2` 会将日志信息写入注释中。 +- `--lock-tables`:在导出时锁定所有表,确保数据一致性。 +- `--skip-lock-tables`:跳过锁定表的操作,适用于大表或高并发环境。 + +------ + +**其他参数** + +- `--routines` 或 `-R`:导出存储过程和函数。 +- `--triggers`:导出触发器。 +- `--events`:导出事件调度器中的事件。 +- `--ignore-table`:忽略指定的表。例如:`--ignore-table=db_name.table_name`。 +- `--result-file` 或 `-r`:将输出结果写入指定文件,而不是标准输出。 +- `--help`:显示帮助信息。 + +### 15.3.2 示例命令 + +1. **备份单个数据库**: + +```bash +[root@localhost ~]# mysqldump -uroot -p123456 db_name > backup.sql ``` -- 备份额外扩展项 - - -R, --routines:备份存储过程和函数数据 - - --triggers:备份触发器数据 +2. **备份多个数据库**: -```shell -[root@db01 backup]# mysqldump -uroot -p123 -A -R --triggers > /backup/full_2.sql +```bash +[root@localhost ~]# mysqldump -uroot -p123456 --databases db1 db2 > backup.sql ``` -- mysqldump特殊参数 - - -x:锁表备份(myisam温备份) - - --single-transaction:快照备份 +3. **备份所有数据库**: + +```bash +[root@localhost ~]# mysqldump -uroot -p123456 --all-databases > all_backup.sql +``` + +4. **只备份表结构**: + +```bash +[root@localhost ~]# mysqldump -uroot -p123456 --no-data db_name > structure.sql +``` + +5. **备份数据但不锁定表**: + +```bash +[root@localhost ~]# mysqldump -uroot -p123456 --single-transaction db_name > backup.sql +``` + +### 15.3.3 **mysqldump特殊使用** + +- -x:锁表备份(myisam温备份) +- --single-transaction:快照备份 ```shell -[root@db01 backup]# mysqldump -uroot -p123 -A -R --triggers --master-data=2 –-single-transaction>/backup/full.sql -# 加了文件末尾会多一行:CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=120; +[root@localhost ~]# mysqldump -uroot -p123 -A -R --triggers --master-data=2 –-single-transaction > /backup/full.sql +# 加了文件末尾会多一行:CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=120; # 不加master-data就不会记录binlog的位置,导致后续不利于增量备份 ``` @@ -2704,9 +3107,9 @@ mysql> select * from world.city into outfile '/tmp/world_city.data'; - gzip:压缩备份 ```shell -[root@db01 ~]# mysqldump -uroot -p123 -A -R --triggers --master-data=2 –single-transaction|gzip>/backup/full.sql.gz -[root@db01 ~]# gzip -d /backup/full.sql.gz -[root@db01 ~]# zcat /backup/full.sql.gz > linshi.sql +[root@localhost ~]# mysqldump -uroot -p123456 -A -R --triggers --master-data=2 –single-transaction|gzip > /backup/full.sql.gz +[root@localhost ~]# gzip -d /backup/full.sql.gz +[root@localhost ~]# zcat /backup/full.sql.gz > linshi.sql ``` - 常用的热备份备份语句 @@ -2722,16 +3125,17 @@ mysql> set sql_log_bin=0; #先不记录二进制日志 mysql> source /backup/full.sql #库内恢复操作 -[root@db01 ~]# mysql -uroot -p123 < /backup/full.sql +[root@localhost ~]# mysql -uroot -p123456 < /backup/full.sql #库外恢复操作 ``` -- 注意 - - mysqldump在备份和恢复时都需要MySQL实例启动为前提 - - 一般数据量级100G以内,大约15-30分钟可以恢复(PB、EB就需要考虑别的方式) - - mysqldump是以覆盖的形式恢复数据的 +**注意事项:** -## 17.4 【实战】企业故障恢复 +- mysqldump在备份和恢复时都需要MySQL实例启动为前提 +- 一般数据量级100G以内,大约15-30分钟可以恢复(PB、EB就需要考虑别的方式) +- mysqldump是以覆盖的形式恢复数据的 + +### 15.3.4 实战案例-企业故障恢复 - 背景: - 正在运行的网站系统,MySQL数据库,数据量25G,日业务增量10-15M。 @@ -2748,120 +3152,171 @@ mysql> source /backup/full.sql - 直接使用临时库顶替原生产库,前端应用割接到新库 - 将误删除的表单独导出,然后导入到原生产环境 - 开启业务 - - 故障模拟 + +#### 15.3.4.1 故障模拟 + +一、故障模拟 ```sql -mysql> flush logs; -#刷新binlog使内容更清晰 +# 刷新binlog使内容更清晰 +mysql> reset master; mysql> show master status; -#查看当前使用的binlog ++------------------+----------+--------------+------------------+-------------------+ +| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ++------------------+----------+--------------+------------------+-------------------+ +| mysql-bin.000001 | 120 | | | | ++------------------+----------+--------------+------------------+-------------------+ + +# 创建backup库 mysql> create database backup; -#创建backup库 mysql> use backup -#进入backup库 + +# 创建full表 mysql> create table full select * from world.city; -#创建full表 -mysql> create table full_1 select * from world.city; -#创建full_1表 +Query OK, 4079 rows affected (0.04 sec) +Records: 4079 Duplicates: 0 Warnings: 0 + mysql> show tables; -#查看表 ++------------------+ +| Tables_in_backup | ++------------------+ +| full | ++------------------+ +1 row in set (0.00 sec) ``` -- 全备 +二、对数据库进行一次全备 -```sql -[root@db01 ~]# mysqldump -uroot -p123 -A -R --triggers --master-data=2 --single-transaction|gzip > /backup/full_$(date +%F).sql.gz +```bash +[root@localhost ~]# mkdir /backup +[root@localhost ~]# mysqldump -uroot -p123456 -A -R --triggers --master-data=1 --single-transaction|gzip > /backup/full_$(date +%F).sql.gz +[root@localhost ~]# ll /backup/ +total 2332 +-rw-r--r-- 1 root root 2385815 Feb 15 15:31 full_2025-02-15.sql.gz ``` -- 模拟数据变化 +三、模拟从前一天晚上23点到10点前的数据变化 ```sql -mysql> use backup -#进入backup库 -mysql> create table new select * from mysql.user; -#创建new表 -mysql> create table new_1 select * from world.country; -#创建new_1表 -mysql> show tables; -#查看表 -mysql> select * from full; -#查看full表中所有数据 +# 把full表中所有的countrycode都改成CHN mysql> update full set countrycode='CHN' where 1=1; -#把full表中所有的countrycode都改成CHN -mysql> commit; -#提交 +# 删除id大于200的数据 mysql> delete from full where id>200; -#删除id大于200的数据 -mysql> commit; -#提交 + +# 产生一个新的表 +mysql> create table new select * from mysql.user; ``` -- 模拟故障 +四、模拟第二天上午10点误删new表 ```sql mysql> drop table new; -#删除new表 mysql> show tables; -#查看表 ++------------------+ +| Tables_in_backup | ++------------------+ +| full | ++------------------+ +1 row in set (0.00 sec) ``` -- 恢复过程 - - 准备临时数据库 +#### 15.3.4.2 **数据恢复** + +一、启动一个新的数据库实例 + +```bash +[root@localhost ~]# mysqld_safe --defaults-file=/data/3307/my.cnf & -```shell -#开启一个新的实例 -[root@db02 ~]# mysqld_safe --defaults-file=/data/3307/my.cnf & -#拷贝数据到新库上 -[root@db02 ~]# scp /backup/full_2018-08-16.sql.gz root@10.0.0.52:/tmp #解压全备数据文件,如果用同一个机器的不同实例则不需要这步 -[root@db02 ~]# cd /tmp/ -#进入tmp目录 -[root@db02 tmp]# gzip -d full_2018-08-16.sql.gz -#解压全备数据文件 -截取二进制 -[root@db02 tmp]# head -50 full_2018-08-16.sql |grep -i 'change master to' -#查看全备的位置点(起始位置点),忽略大小写,假设找到起始的位置为268002 -mysql> show binlog events in 'mysql-bin.000017'\G -#生产环境db01找到drop语句执行的位置点(结束位置点) -[root@db01 tmp]#mysqlbinlog -uroot -p123 --start-position=268002 --stop-position=671148 /application/mysql/data/mysql-bin.000017 > /tmp/inc.sql -#截取二进制日志,把备份点和drop直接的信息倒入到inc.sql -[root@db01 tmp]# scp /tmp/inc.sql root@10.0.0.52:/tmp -#发送增量数据到新库 +[root@localhost ~]# scp /backup/full_2024-08-16.sql.gz root@192.168.88.20:/tmp +``` + +二、准备恢复 + +```bash +mysql> show binlog events in 'mysql-bin.000001'\G +# 解压全备数据文件 +[root@localhost ~]# gzip -d /backup/full_2025-02-15.sql.gz +[root@localhost ~]# ll /backup/ +total 6600 +-rw-r--r-- 1 root root 6754549 Feb 15 15:31 full_2025-02-15.sql + +# 找到全备数据的binlog位置点 +[root@localhost ~]# head -50 /backup/full_2025-02-15.sql | grep -i 'change master to' +CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=134046; + +# 在生产环境中找到drop删除前的位置点 +mysql> show binlog events in 'mysql-bin.000001'\G +*************************** 81. row *************************** + Log_name: mysql-bin.000001 + Pos: 510614 + Event_type: Query + Server_id: 1 +End_log_pos: 510734 + Info: use `backup`; DROP TABLE `new` /* generated by server */ + +# 截取二进制日志,把备份点和drop之间的信息倒入到inc.sql +[root@localhost ~]# mysqlbinlog -uroot -p123456 --start-position=134046 --stop-position=510614 /application/mysql/data/mysql-bin.000001 > /tmp/inc.sql +# 如果是新库是远程主机,就将截取好的binlog日志发送到远程主机上,本机不需要发送 +``` + +三、在新库内恢复数据 + +```bash +[root@localhost ~]# mysql -uroot -p123456 -S /data/3307/mysql.sock -#在新库内恢复数据 -mysql> set sql_log_bin=0; #不记录二进制日志 -mysql> source /tmp/full_2018-08-16.sql +mysql> set sql_log_bin=0; #恢复全备数据 +mysql> source /backup/full_2025-02-15.sql mysql> use backup -#进入backup库 mysql> show tables; -# 查看表,此时没有new表 ++------------------+ +| Tables_in_backup | ++------------------+ +| full | ++------------------+ +1 row in set (0.00 sec) +# 此时只恢复了前一天23点的全被数据,所以并没有new表 + +# 再次恢复我们截取好的binlog日志(增量日志) + mysql> source /tmp/inc.sql -#恢复增量数据 mysql> show tables; -#查看表,此时有new表 ++------------------+ +| Tables_in_backup | ++------------------+ +| full | +| new | ++------------------+ +mysql> select user,host from new; ++------+-----------------------+ +| user | host | ++------+-----------------------+ +| root | localhost | +| root | localhost.localdomain | +| root | 127.0.0.1 | +| root | ::1 | +| | localhost | +| | localhost.localdomain | ++------+-----------------------+ +6 rows in set (0.00 sec) + ``` -- 将故障表导出并恢复到生产 +这个时候,我们就在新库中完全恢复好了我们数据库所有的信息,如果想要恢复生产数据库,我们直接让生产数据库恢复增量备份的数据即可。或者是从新库中导出new表的数据,直接恢复到生产服务器上即可 -```sql -#将现在已经恢复好的数据库backup里的new表备份到/tmp/new.sql文件中 -#此时/tmp/目录下有昨天23:00前完整备份文件full_2018-08-16.sql、昨天23:00到drop的增量文件inc.sql。 -#通过这两个文件恢复了数据库出事前的所有内容 -[root@db02 ~]# mysqldump -uroot -p123 -S /data/3307/mysql.sock backup new > /tmp/new.sql -#导出new表 -[root@db02 ~]# scp /tmp/new.sql root@10.0.0.51:/tmp/ -#发送到db01的库,此时db01的生产环境backup库里没有new表(被无良开发drop掉了);可直接从new.sql倒入 +```bash +[root@localhost ~]# mysqldump -uroot -p123456 -S /data/3307/mysql.sock backup new > /tmp/new.sql +# 导出new表,发送到生产数据库,此时生产数据库backup库里没有new表(被无良开发drop掉了);可直接从new.sql倒入 mysql> use backup -#进入backup库,此时生产环境的backup +# 进入backup库,此时生产环境的backup mysql> source /tmp/new.sql -#在生产库恢复数据 -mysql> show tables; -#查看表 ``` -## 17.5 物理备份(Xtrabackup) +## 15.4 物理备份(Xtrabackup) + +Xtrabackup 是由 Percona 公司开源的一款 MySQL 物理热备份工具,广泛应用于 MySQL 和 MariaDB 数据库的备份。它支持非阻塞备份,能够在备份过程中不中断事务处理,同时不会显著增加数据库服务器的负载 - Xtrabackup安装 @@ -3008,11 +3463,11 @@ copy-back [root@db01 ~]# /etc/init.d/mysqld start ``` -# 18. MySQL的主从复制 +# 16. MySQL的主从复制 -## 18.1 主从复制原理 +## 16.1 主从复制原理 -![img](01.Mysql/sql_MS.jpg) +img - 复制是 MySQL 的一项功能,允许服务器将更改从一个实例复制到另一个实例。 - 主服务器将所有数据和结构更改记录到二进制日志中。 @@ -3036,7 +3491,7 @@ copy-back - 从库: - relay-log(中继日志):存储所有主库TP过来的binlog事件,在SQL thread执行完毕,数据持久化后清空,但写入relaylog.info文件 - relaylog.info:类似于master的binlog文件 - - [master.info](http://master.info/):存储复制用户信息,**上次请求到的主库binlog位置点** + - master.info:存储复制用户信息,**上次请求到的主库binlog位置点** - IO thread:接收主库发来的binlog日志,也是从库请求主库的线程 - SQL thread:执行主库TP过来的日志 - 原理 @@ -3045,49 +3500,51 @@ copy-back - 从库通过IO线程拿着change master to用户密码相关信息,连接主库,验证合法性 - 从库连接成功后,会根据binlog的pos问主库,有没有比这个更新的 - 主库接收到从库请求后,比较一下binlog信息,如果有就将最新数据通过dump线程给从库IO线程 - - 从库通过IO线程接收到主库发来的binlog事件,存储到TCP/IP缓存中,[并返回ACK更新master.info](http://xn--ackmaster-fr4ph28do0tlydq13q.info/) + - 从库通过IO线程接收到主库发来的binlog事件,存储到TCP/IP缓存中,并返回ACK更新master.info - 将TCP/IP缓存中的内容存到relay-log中 - - [SQL线程读取relay-log.info](http://xn--sqlrelay-log-fo0uq362b8zo333c.info/),读取到上次已经执行过的relay-log位置点,继续执行后续的relay-log日志,执行完成后,[更新relay-log.info](http://xn--relay-log-fq5sl5i.info/) + - SQL线程读取relay-log.info,读取到上次已经执行过的relay-log位置点,继续执行后续的relay-log日志,执行完成后,更新relay-log.info -## 18.2 【实战】MySQL主从复制 +## 16.2 【实战】MySQL主从复制 -本实例中db01是master,db02,03是slave,MHA-manager是db03 +本实例中需要两台MySQL数据库,最好是在两个不同的机器上面。其中db01是master,db02是slave。 -- 保证两台数据库数据一致性 +并且两台机器上面具有不同的server_id - ```shell - [root@db01 ~]#mysqldump -uroot -p123 -A -R --triggers --master-data=2 --single-transaction > /tmp/full.sql - [root@db01 ~]#scp /tmp/full.sql root@10.0.0.52:/tmp - [root@db02 ~]#mysql -uroot -p123456 - sql> source /tmp/full.sql - ``` - - - -- 主库操作 +#### 16.2.1 主库操作(db01) - 修改配置文件 ```shell [root@db01 ~]# vim /etc/my.cnf -#编辑mysql配置文件 -[mysqld] -#在mysqld标签下配置 +[mysqld] #在mysqld标签下配置 server_id =1 -#主库server-id为1,从库不等于1 +#主库server-id为1,从库的server_id必须与主库不同 log_bin=mysql-bin #开启binlog日志 -* 创建主从复制用户 -[root@db01 ~]# mysql -uroot -p123456 -#登录数据库 -mysql> grant replication slave on *.* to rep@'10.0.0.%' identified by '123456'; -#创建rep用户 +[root@db01 ~]# systemctl restart mysqld ``` -- 从库操作 - - 修改配置文件 + - 导出一份全备数据给从库(在已经使用的数据库中,如果是后续搭建主从,则需要做如下操作。确保已有的数据一致) ```shell +[root@db01 ~]# mysqldump -uroot -p123456 -A -R --triggers --master-data=2 --single-transaction > /tmp/full.sql +[root@db01 ~]# scp /tmp/full.sql root@192.168.88.140:/tmp/ +``` + + - 创建主从复制用户 + +```shell +[root@db01 ~]# mysql -uroot -p123456 +#登录数据库 +mysql> grant replication slave on *.* to slave@'192.168.88.%' identified by '123456'; +#创建slave用户 +``` + +#### 16.2.2 从库操作(db02) + +1. 修改配置文件 + +```bash [root@db02 ~]# vim /etc/my.cnf #修改db02配置文件 [mysqld] @@ -3096,29 +3553,46 @@ server_id =5 #主库server-id为1,从库不等于1 log_bin=mysql-bin #开启binlog日志 -[root@db02 ~]# /etc/init.d/mysqld restart -#重启mysql +[root@db02 ~]# systemctl restart mysqld +``` + +2. 记录主库当前的binlog位置 + +```bash +[root@db01 ~]# mysql -uroot -p123456 mysql> show master status; -#记录主库binlog及位置点 +``` + +3. 再从库上配置主库等信息 + +```bash [root@db02 ~]# mysql -uroot -p123456 #登陆数据库 mysql> change master to --> master_host='10.0.0.51', --> master_user='rep', --> master_password='123456', --> master_log_file='mysql-bin.000004', --> master_log_pos=120; -#head -50 /tmp/full.sql内的master_log_file与master_log_pos --># master_auto_position=1; # 与前两句冲突,表示自动适配master的file和position,MariaDB5.5不支持GTID特性。此时未开启GTID -#执行change master to 语句 -mysql> start slave; -mysql> show slave status\G -#看到Slave_IO_Running: Yes Slave_SQL_Running: Yes表示运行成功 -#从数据库:/application/mysql/data目录下出现master.info文件,记录了同步的索引号 -#测试方法:在主里面库建表插入内容,从里面可以看到主新增的内容表示同步成功。 +master_host='192.168.88.10', +master_user='slave', +master_password='123456', +master_log_file='mysql-bin.000001', +master_log_pos=120; + +# master_auto_position=1; # 与前两句冲突,表示自动适配master的file和position,MariaDB5.5不支持GTID特性。此时未开启GTID +# master_auto_position=1 表示开启 MySQL 的基于 GTID 的主从复制功能。 +# GTID(Global Transaction Identifier)是一种基于事务的复制方式,相比传统的基于文件和位置的复制方式,GTID 复制更加灵活和可靠。 +# 当 master_auto_position=1 时,slave 会自动找到主库上最新的 GTID 位置,而不需要手动指定日志文件和位置。这样可以避免主从同步时由于位置不匹配而导致的问题。 ``` -## 18.3 主从复制基本故障处理 +#### 16.2.3 开启主从复制 + +```sql +# 执行change master to 语句后 +mysql> start slave; +mysql> show slave status\G +# 看到Slave_IO_Running: Yes Slave_SQL_Running: Yes表示运行成功 +# 从数据库:/application/mysql/data目录下出现master.info文件,记录了同步的索引号 +# 测试方法:在主里面库建表插入内容,从里面可以看到主新增的内容表示同步成功。 +``` + +## 16.3 主从复制基本故障处理 - IO线程报错 - user password ip port @@ -3134,7 +3608,7 @@ mysql> show slave status\G - 操作对象不存在(insert update delete drop truncate alter) - 约束问题、数据类型、列属性 -### 18.3.1 处理方法一 +### 16.3.1 处理方法一 ```sql mysql> stop slave; @@ -3145,7 +3619,7 @@ mysql> start slave; #开启同步 ``` -### 18.3.2 处理方法二 +### 16.3.2 处理方法二 ```shell [root@db01 ~]# vim /etc/my.cnf @@ -3156,7 +3630,7 @@ slave-skip-errors=1032,1062,1007 但是以上操作都是有风险存在的 -### 18.3.3 处理方法三 +### 16.3.3 处理方法三 ```sql set global read_only=1; @@ -3165,7 +3639,7 @@ read_only=1 #在配置文件中永久生效[mysqld] ``` -## 18.4 延时从库 +## 16.4 延时从库 - 普通的主从复制可能存在不足 - 逻辑损坏怎么办? @@ -3199,17 +3673,17 @@ mysql> start slave; - 导出从库数据 - 主库导入数据 -## 18.5 半同步复制 +## 16.5 半同步复制 从MYSQL5.5开始,支持半自动复制。之前版本的MySQL Replication都是异步(asynchronous)的,主库在执行完一些事务后,是不会管备库的进度的。如果备库不幸落后,而更不幸的是主库此时又出现Crash(例如宕机),这时备库中的数据就是不完整的。简而言之,在主库发生故障的时候,我们无法使用备库来继续提供数据一致的服务了。 -![img](01.Mysql/remote_mem_larger_local_disk.jpg) +![img](01.Mysql/remote_mem_larger_local_disk-1739583976576112.jpg) 半同步复制(Semi synchronous Replication)则一定程度上保证提交的事务已经传给了至少一个备库。 IO在收到了读写后会发送ACK报告已经收到了。 -![img](01.Mysql/semi_synchronized_dual_master.jpg) +![img](01.Mysql/semi_synchronized_dual_master-1739583976576113.jpg) 出发点是保证主从数据一致性问题,安全的考虑。 @@ -3236,7 +3710,12 @@ rpl_semi_sync_master_timeout=1000 #多长时间认为超时,单位ms mysql> show variables like'rpl%'; mysql> show global status like 'rpl_semi%'; #检查安装 -* 安装(从库) + +``` + +**从库安装:** + +```bash [root@mysql-db02 ~]# mysql -uroot -p123456 #登录数据库 mysql> INSTALL PLUGIN rpl_semi_sync_slave SONAME'semisync_slave.so'; @@ -3253,13 +3732,15 @@ rpl_semi_sync_slave_enabled =1 #在[mysqld]标签下添加如下内容 ``` -- 注:相关参数说明 - - rpl_semi_sync_master_timeout=milliseconds - - 设置此参数值(ms),为了防止半同步复制在没有收到确认的情况下发生堵塞,如果Master在超时之前没有收到任何确认,将恢复到正常的异步复制,并继续执行没有半同步的复制操作。 - - rpl_semi_sync_master_wait_no_slave={ON|OFF} - - 如果一个事务被提交,但Master没有任何Slave的连接,这时不可能将事务发送到其它地方保护起来。默认情况下,Master会在时间限制范围内继续等待Slave的连接,并确认该事务已经被正确的写到磁盘上。 - - 可以使用此参数选项关闭这种行为,在这种情况下,如果没有Slave连接,Master就会恢复到异步复制。 -- 测试半同步 +**注:相关参数说明:** + +- rpl_semi_sync_master_timeout=milliseconds + - 设置此参数值(ms),为了防止半同步复制在没有收到确认的情况下发生堵塞,如果Master在超时之前没有收到任何确认,将恢复到正常的异步复制,并继续执行没有半同步的复制操作。 +- rpl_semi_sync_master_wait_no_slave={ON|OFF} + - 如果一个事务被提交,但Master没有任何Slave的连接,这时不可能将事务发送到其它地方保护起来。默认情况下,Master会在时间限制范围内继续等待Slave的连接,并确认该事务已经被正确的写到磁盘上。 + - 可以使用此参数选项关闭这种行为,在这种情况下,如果没有Slave连接,Master就会恢复到异步复制。 + +**测试半同步:** ```sql mysql> create database test1; @@ -3301,6 +3782,8 @@ mysql> show databases; | test1 | | test2 | +--------------------+ + +# 主库 mysql> SET GLOBAL rpl_semi_sync_master_enabled = 0; #关闭半同步(1:开启 0:关闭) mysql> show global status like 'rpl_semi%'; @@ -3355,9 +3838,9 @@ mysql> show global status like 'rpl_semi%'; 注:不难发现,在查询半同步状态是,开启半同步,查询会有延迟时间,关闭之后则没有 ``` -![img](01.Mysql/mysql_goal.jpg) +![img](01.Mysql/mysql_goal-1739583976576114.jpg) -## 18.6 过滤复制 +## 16.6 过滤复制 - 主库: - 白名单:只记录白名单中列出的库的二进制日志 @@ -3413,19 +3896,19 @@ mysql> use test mysql> show tables; ``` -# 19. MHA高可用架构 +# 17. MHA高可用架构 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到在0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数据的一致性,以达到真正意义上的高可用。 -![img](01.Mysql/MHA_topo.jpg) +![img](01.Mysql/MHA_topo-1739583976576115.jpg) -MHA能够在较短的时间内实现自动故障检测和故障转移,通常在10-30秒以内;在复制框架中,MHA能够很好地解决复制过程中的数据一致性问题,由于不需要在现有的replication中添加额外的服务器,仅需要一个manager节点,而一个Manager能管理多套复制,所以能大大地节约服务器的数量;另外,安装简单,无性能损耗,以及不需要修改现有的复制部署也是它的优势之处。 +MHA能够在较短的时间内实现自动故障检测和故障转移,通常在0.5-2秒以内;在复制框架中,MHA能够很好地解决复制过程中的数据一致性问题,由于不需要在现有的replication中添加额外的服务器,仅需要一个manager节点,而一个Manager能管理多套复制,所以能大大地节约服务器的数量;另外,安装简单,无性能损耗,以及不需要修改现有的复制部署也是它的优势之处。 MHA还提供在线主库切换的功能,能够安全地切换当前运行的主库到一个新的主库中(通过将从库提升为主库),大概0.5-2秒内即可完成。 MHA由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点)。MHA Manager可以独立部署在一台独立的机器上管理多个Master-Slave集群,也可以部署在一台Slave上。当Master出现故障时,它可以自动将最新数据的Slave提升为新的Master,然后将所有其他的Slave重新指向新的Master。整个故障转移过程对应用程序是完全透明的。 -## 19.1 工作流程 +## 17.1 工作流程 1. 把宕机的master二进制日志保存下来。 2. 找到binlog位置点最新的slave。 @@ -3434,9 +3917,9 @@ MHA由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点 5. 将含有最新位置点binlog所在的slave提升为master。 6. 将其它slave重新指向新提升的master,并开启主从复制。 -![img](01.Mysql/MHA_process.jpg) +img -## 19.2 MHA工具介绍 +## 17.2 MHA工具介绍 - MHA软件由两部分组成,Manager工具包和Node工具包 @@ -3476,7 +3959,7 @@ MHA由两部分组成:MHA Manager(管理节点)和MHA Node(数据节点 - Works with any storage engine - 只要replication支持的存储引擎,MHA都支持,不会局限于innodb -## 19.3 MHA实验环境 +## 17.3 MHA实验环境 - 搭建三台mysql数据库 @@ -3518,7 +4001,7 @@ mysqladmin -uroot password '123456' mysql -uroot -p123456 ``` -## 19.4 基于GTID的主从复制 +## 17.4 基于GTID的主从复制 - 先决条件 - 主库和从库都要开启binlog @@ -3548,8 +4031,8 @@ server-uuid=8108d02e-be0a-11ec-8a15-000c2956d2e2 ```shell [root@mysql-db01 ~]# mysql -uroot -p123456 #登录数据库 -mysql> grant replication slave on *.* to rep@'10.0.0.%' identified by '123456'; -#创建rep用户 +mysql> grant replication slave on *.* to slave@'192.168.88.%' identified by '123456'; +#创建slave用户 ``` 从库操作 @@ -3565,7 +4048,7 @@ server_id =5 #主库server-id为1,从库必须大于1 log_bin=mysql-bin #开启binlog日志 -[root@mysql-db02 ~]# /etc/init.d/mysqld restart +[root@mysql-db02 ~]# systemctl restart mysqld #重启mysql [root@mysql-db03 ~]# vim /etc/my.cnf #修改mysql-db03配置文件 @@ -3575,7 +4058,7 @@ server_id =10 #主库server-id为1,从库必须大于1 log_bin=mysql-bin #开启binlog日志 -[root@mysql-db03 ~]# /etc/init.d/mysqld restart +[root@mysql-db03 ~]# systemctl restart mysqld #重启mysql ``` @@ -3613,7 +4096,7 @@ log_slave_updates #重要:开启slave的binlog同步 enforce_gtid_consistency #开启GTID特性 -[root@mysql-db01 ~]# /etc/init.d/mysqld restart +[root@mysql-db01 ~]# systemctl restart mysqld #重启数据库 mysql> show global variables like '%gtid%'; #检查GTID状态 @@ -3631,12 +4114,12 @@ mysql> show global variables like '%gtid%'; **注:主库从库都需要开启GTID否则在做主从复制的时候就会报错,因为slave可能变成master** ```sql -[root@mysql-db02 ~]# mysql -uroot -123456 +[root@mysql-db02 ~]# mysql -uroot -p123456 mysql> change master to --> master_host='10.0.0.51', --> master_user='rep', --> master_password='123456', --> master_auto_position=1; +master_host='192.168.88.10', +master_user='slave', +master_password='123456', +master_auto_position=1; #如果GTID没有开的话 ERROR 1777 (HY000): CHANGE MASTER TO MASTER_AUTO_POSITION = 1 can only be executed when @@GLOBAL.GTID_MODE = ON. ``` @@ -3704,32 +4187,36 @@ relay_log_purge = 0 #禁用自动删除relay log 永久生效 ``` -## 19.5 部署MHA +## 17.5 部署MHA 环境准备(所有节点) -记得要这个MHA安装包 +下载MHA工具包: -https://download.s21i.faiusr.com/23126342/0/0/ABUIABBPGAAg30HUiAYolpPt7AQ.zip?f=mysql-master-ha.zip&v=1628778716 +```bash +[root@localhost ~]# wget "https://download.s21i.faiusr.com/23126342/0/0/ABUIABBPGAAg3OHUiAYolpPt7AQ.zip?f=mysql-master-ha.zip&v=1628778716" -O mysql-master-ha.zip +``` ```shell -[root@mysql-db01 ~]# yum install perl-DBD-MySQL -y -#安装依赖包 -[root@mysql-db01 ~]# unzip mysql-master-ha.zip /home/user1/tools/ -[root@mysql-db01 ~]# cd /home/user1/tools/ +[root@localhost ~]# mkdir /application/tools +[root@mysql-db01 ~]# unzip mysql-master-ha.zip -d /application/tools/ +[root@mysql-db01 ~]# cd /application/tools/mysql-master-ha/ #进入安装包存放目录 [root@mysql-db01 tools]# ll mha4mysql-manager-0.56-0.el6.noarch.rpm mha4mysql-manager-0.56.tar.gz mha4mysql-node-0.56-0.el6.noarch.rpm mha4mysql-node-0.56.tar.gz -[root@mysql-db01 tools]# rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm + +[root@mysql-db01 ~]# yum install perl-DBD-MySQL -y +#安装依赖包 +[root@mysql-db01 tools]# yum install -y mha4mysql-node-0.56-0.el6.noarch.rpm Preparing... ########################################### [100%] 1:mha4mysql-node ########################################### [100%] #安装node包,所有节点都要安装node包 [root@mysql-db01 tools]# mysql -uroot -p123456 #登录数据库,主库,从库会自动同步 -mysql> grant all privileges on *.* to mha@'10.0.0.%' identified by 'mha'; +mysql> grant all privileges on *.* to mha@'192.168.88.%' identified by 'mha'; #添加mha管理账号 mysql> select user,host from mysql.user; #查看是否添加成功 @@ -3752,7 +4239,7 @@ mysql> select user,host from mysql.user; #使用epel源 [root@mysql-db03 ~]# yum install -y perl-Config-Tiny epel-release perl-Log-Dispatch perl-Parallel-ForkManager perl-Time-HiRes #安装manager依赖包 -[root@mysql-db03 tools]# rpm -ivh mha4mysql-manager-0.56-0.el6.noarch.rpm +[root@mysql-db03 tools]# yum install -y mha4mysql-manager-0.56-0.el6.noarch.rpm Preparing... ########################################### [100%] 1:mha4mysql-manager ########################################### [100%] #安装manager包 @@ -3831,9 +4318,9 @@ port=3306 hostname=10.0.0.52 port=3306 candidate_master=1 -#设置为候选master,如果设置该参数以后,发生主从切换以后将会将此从库提升为主库,即使这个主库不是集群中事件最新的slave。 +# 设置为候选master,如果设置该参数以后,发生主从切换以后将会将此从库提升为主库,即使这个主库不是集群中事件最新的slave。 check_repl_delay=0 -#默认情况下如果一个slave落后master 100M的relay logs的话,MHA将不会选择该slave作为一个新的master,因为对于这个slave的恢复需要花费很长时间,通过设置check_repl_delay=0,MHA触发切换在选择一个新的master的时候将会忽略复制延时,这个参数对于设置了candidate_master=1的主机非常有用,因为这个候选主在切换的过程中一定是新的master +# 默认情况下如果一个slave落后master 100M的relay logs的话,MHA将不会选择该slave作为一个新的master,因为对于这个slave的恢复需要花费很长时间,通过设置check_repl_delay=0,MHA触发切换在选择一个新的master的时候将会忽略复制延时,这个参数对于设置了candidate_master=1的主机非常有用,因为这个候选主在切换的过程中一定是新的master ``` - 配置ssh信任(所有节点) @@ -3841,9 +4328,9 @@ check_repl_delay=0 ```shell [root@mysql-db01 ~]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa >/dev/null 2>&1 #创建秘钥对 -[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@10.0.0.51 -[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@10.0.0.52 -[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@10.0.0.53 +[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@192.168.88.10 +[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@192.168.88.20 +[root@mysql-db01 ~]# ssh-copy-id -i /root/.ssh/id_dsa.pub root@192.168.88.30 #发送公钥,包括自己 ``` @@ -3857,7 +4344,7 @@ Tue Mar 7 01:03:33 2017 - [info] All SSH connection tests passed successfully. [root@mysql-db03 ~]# masterha_check_repl --conf=/etc/mha/app1.cnf #测试复制 #看到如下字样,则测试成功 -#若不在slave库上创建用户会失败,按理说应该slave会同步master的库但创建rep用户是创建主从关系前 +#若不在slave库上创建用户会失败,按理说应该slave会同步master的库但创建slave用户是创建主从关系前 #mysql> grant replication slave on *.* to rep@'10.0.0.%' identified by '123456'; MySQL Replication Health is OK. ``` @@ -3943,17 +4430,15 @@ mysql> show slave status\G ```sql [root@mysql-db01 ~]# mysql -uroot -123456 -mysql> change master to --> master_host='10.0.0.52', --> master_user='rep', --> master_password='123456', --> master_auto_position=1; +change master to +master_host='192.168.88.136', +master_user='slave', +master_password='123456', +master_auto_position=1; -> start slave; ``` - - -## 19.6 配置vIP漂移 +## 17.6 配置vIP漂移 - VIP漂移的两种方式 - 通过keepalived的方式,管理虚拟IP的漂移,与后面Nginx负载均衡有关 @@ -3983,8 +4468,8 @@ master_ip_failover_script=/etc/mha/master_ip_failover my $vip = '10.0.0.55/24'; my $key = '0'; #网卡名要改对,可能是ens33 -my $ssh_start_vip = "/sbin/ifconfig eth0:$key $vip"; -my $ssh_stop_vip = "/sbin/ifconfig eth0:$key down"; +my $ssh_start_vip = "/sbin/ifconfig ens33:$key $vip"; +my $ssh_stop_vip = "/sbin/ifconfig ens33:$key down"; #修改以下几行内容 [root@mysql-db03 ~]# chmod +x /etc/mha/master_ip_failover #添加执行权限,否则mha无法启动 @@ -3992,7 +4477,7 @@ my $ssh_stop_vip = "/sbin/ifconfig eth0:$key down"; #安装IFconfig,每台设备都要安装否则脚本执行失败 * 手动绑定vIP,假设db01是master -[root@mysql-db01 ~]# ifconfig eth0:0 10.0.0.55/24 +[root@mysql-db01 ~]# ifconfig ens33:0 192.168.88.88/24 #绑定vip,第一次要在master上手工配置,后面不需要了 [root@mysql-db01 ~]# ip a |grep eth0 #查看vip diff --git a/03.数据库/01.Mysql/157ueBBseL6MvenH.png!thumbnail b/03.数据库/01.Mysql/157ueBBseL6MvenH-173958382539012.png!thumbnail similarity index 100% rename from 03.数据库/01.Mysql/157ueBBseL6MvenH.png!thumbnail rename to 03.数据库/01.Mysql/157ueBBseL6MvenH-173958382539012.png!thumbnail diff --git a/03.数据库/01.Mysql/157ueBBseL6MvenH-173958392751660.png!thumbnail b/03.数据库/01.Mysql/157ueBBseL6MvenH-173958392751660.png!thumbnail new file mode 100644 index 0000000000000000000000000000000000000000..0f3962793dc90b7b466a91918c7d704e83f757b4 GIT binary patch literal 1361364 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

GQOcuVr`0yiP(Rhubf~pYmHW=7Lydjl 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 z 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