一个系统,不仅要有好的代码,还要有优秀的日志记录。方便我们在出错时进行排查问题。其实,写日志这件事,不仅是你在开发时会写。MySQL 也会写,binlog 就是 MySQL 中,我们常常会用到的日志文件了。它能帮助我们恢复数据,备份数据,是我们的好帮手。   如果你不懂 binlog,你看前面我的微信群里就有网友发生过惨案《难以置信,群里网友翻车,数据库被黑客删除!》。以及我的同事,在过年前 2            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-15 13:38:54
                            
                                41阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            查询MySQL的binlog索引是一个常见的需求,特别是在分析数据库操作日志、数据恢复和性能调优等场景下。下面我将向你详细介绍如何完成这个任务。
首先,我们来看一下整个流程,可以使用一个表格来展示每个步骤:
| 步骤 | 描述 |
| --- | --- |
| 步骤一 | 连接到MySQL数据库,并选择binlog日志文件 |
| 步骤二 | 解析binlog日志文件,获取索引信息 |
|            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-02-09 11:41:16
                            
                                40阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            binlog要与redo log对比来看,这篇文章就通过两者的对比来说明binlog的功能。 文章目录binlog功能binlog工作过程对比binlog和redo log binlog功能二进制日志(binlog),其用来进行point in time(PIT 基于时间点的恢复)的恢复及主从复制(Replication)环境的建立。binlog也是一种恢复机制,其实现的是基于时间点的恢复,比如通            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-17 21:53:59
                            
                                106阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            ## MySQL确认索引使用情况
### 1. 确定索引使用情况的目的和意义
在数据库中,索引是提高查询性能的重要手段之一。通过确认索引使用情况,可以评估当前数据库的性能状况,从而进行性能优化和改进。本文将介绍如何确认MySQL中索引的使用情况。
### 2. 确认索引使用情况的流程
下面是确认索引使用情况的流程图:
```mermaid
flowchart TD
    A(确认需要监            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-09-04 16:45:49
                            
                                80阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            查看mysql索引: 代码示例:mysql> show index from tblname;mysql> show keys from tblname;mysql索引输出结果分析:· Table表的名称。· Non_unique如果索引不能包括重复词,则为0。如果可以,则为1。· Key_name索引的名称。· Seq_in_index索引中的列序列号,从1开始。· Column_n            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-06 15:14:34
                            
                                108阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            最近,一直在纠结要不要改数据库binlog的日志格式,原先用的是row格式,导致数据库binlog日志较大,磁盘空间本来也不是很大,所以就想看看能不能改变binlog日志。在该binlog日志之前,先查询一份关于binlog日志的讲解,记录如下: 一,mysql binlog共有三种日志  statement  row mixed  MySQL binlog            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 18:17:15
                            
                                82阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            缓存和数据库一致性问题中写道:无论是更新缓存还是删除缓存,只要第二步发生失败,那么就会导致数据库和缓存不一致。1.重试2.异步重试3.订阅binlog日志        具体来讲就是,我们的业务应用在修改数据时,「只需」修改数据库,无需操作缓存。那什么时候操作缓存呢?这就和数据库的「变更日志」有关了。拿 MySQL 举            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-21 09:54:24
                            
                                307阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            SELECT *的效率很糟糕吗?当然,所有人都知道这一点,但是为什么呢?是因为返回了太多的数据?这是一个普遍的回答,但我不这样认为。如果你的数据库设计规范合理,那么带宽占用实际上非常的小。让我们看看下面的例子。下面的查询将会从AdventureWorks.dbo.TransactionHistoryArchive(总共大约有近9万行数据)中选择出326行数据。第一个使用了SELECT * 查询,后            
                
         
            
            
            
            Mysql 的binlog相关:注:mysql的binlog在mysql恢复时用得到,不要轻易取消(安装mysql时建议启用下)另手动清理过程中mysql会暂停使用,建议通过设置过期时间让它自己清理删除2016年03月31日 23点59分之前的binlog文件: > purge binary logs before '2016-03-31 23:59:00';              
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-05-10 14:04:31
                            
                                873阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            查看mysql的binlog情况 SHOW VARIABLES LIKE '%log_bin%'; 可以看出当前binlog是开启状态,存储位置是在var/log/binlog目录下 查看MySQL binlog的情况 show master status; 可以看出当前binlog日志应用于mys ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-07-19 16:16:00
                            
                                303阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
               一.MySQL Binlog格式介绍      Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW!1.Statement:每一条会修改数据的sql都会记录在binlog中。优点:不需要记录每一行的变化,减少了binlog日志量,节约了IO,提高性能。(相比row能            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-06 00:21:26
                            
                                92阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             首先找到my.cnf配置文件位置:执行命令:mysql --help | grep 'Default options' -A 1    第一个文件 /etc/my.cnf 即为配置文件 #第一种方式:
#开启binlog日志
log_bin=ON
#binlog日志的基本文件名
log_bin_basename=/var/lib/mysql/mysql-b            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-14 20:47:21
                            
                                341阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            binlog用于记录数据库执行的写入性操作(不包括查询)信息,以二进制的形式保存在磁盘中。binlog是mysql的逻辑日志,并且由Server层进行记录,使用任何存储引擎的mysql数据库都会记录binlog日志。逻辑日志:可以简单理解为记录的就是sql语句。 物理日志:因为mysql数据最终是保存在数据页中的,物理日志记录的就是数据页变更。binlog是通过追加的方式进行写入的,可以通过max            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 13:58:59
                            
                                59阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录 
     mysql 5.7安装及使用binlog日志恢复数据库binlog日志介绍安装mysql5.7开启Binlog日志查看binlog日志状态和内容通过Binlog恢复数据三种恢复方式清理MySQL的binlog日志自动删除手动删除其它  mysql 5.7安装及使用binlog日志恢复数据库我这里以mysql5.7为例binlog日志介绍是MySQL server维护的一            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-04 13:40:37
                            
                                85阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Canal   Canal是阿里巴巴旗下的一款开源项目,利用Java开发。主要用途是基于MySQL数据库增量日志解析,提供增量数据订阅和消费,目前主要支持MySQL。 
  GitHub地址: 
  https://github.com/alibaba/canal 
     在介绍Canal内部原理之前,首先来了解一下MySQL Master/Slave同步原理: 
  MySQL mas            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-30 18:06:49
                            
                                421阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Mysql Binlog三种格式详细介绍以及两种添加binlog_row_metadata为full模式方法– binlog_row_metadata 参数是 MySQL 8.0.1 版本引入的新参数,有三种模式分别是1.Statement模式,2.MiXED模式,3.ROW模式。其中的row模式:当 binlog 格式为ROW时,设置该参数为FULL,会将表完整的元数据信息写入到binlog文件            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-18 13:56:16
                            
                                204阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            MySQL 中的日志比较重要的有 binlog(归档日志)、redo log(重做日志)以及 undo log,那么跟我们本文相关的主要是 binlog,另外两个日志松哥将来有空了再和大家详细介绍。1. binlogbinlog 我们中文一般称作归档日志,如果大家看过松哥之前发的 MySQL 主从搭建,应该对这个日志有印象,当我们搭建 MySQL 主 从 的时候就离不开 binlog(传送门:My            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-20 18:18:47
                            
                                138阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录前言索引选择错误的几种情况统计异常排序导致的异常扫描行数数的统计总结 前言之前文章,把索引和日志串起来介绍了一下,介绍了什么时候时候用普通索引,什么时候用唯一索引。还说明了,为什么要用普通索引,为什么要用唯一索引。和使用的原因。今天我们把索引和第一章介绍的mysql大致组成串联起来,来介绍下优化器的索引选择。索引选择错误的几种情况统计异常首先创建一个表CREATE TABLE `t` (            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-29 09:42:10
                            
                                40阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            展开全部这个你可以看配置文件32313133353236313431303231363533e78988e69d8331333365646235 启用了才有这样的记录默认是没有的/etc/my.conf
log-bin = mysqlbin
一般放在/var/lib/mysql比如上面的设置重启数据库会生成mysqlbin.000001文件简介:Linux操作系统是基于UNIX操作系统发展而来的一            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-31 13:23:38
                            
                                36阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            文章目录前言1. 修改 event 实现闪回1.1 binlog 结构1.2 闪回案例1.3 方法总结2. 解析文本闪回2.1 mysqlbinlog2.2 闪回案例2.3 方法总结3. 在线订阅闪回3.1 mysql-replication3.2 binlog2sql3.3 方法总结4. Binlog 分析方法4.1 分析场景4.2 辅助定位事务4.3 方法总结5. 平台化的解决方案5.1 数            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-23 17:51:53
                            
                                84阅读
                            
                                                                             
                 
                
                                
                    