衡水网站建设费用,谷歌seo网站排名优化,网站建设找嘉艺网络,网站中图片下移怎么做MySQL中常用的日志类型#xff1a;
重做日志#xff08;redo log#xff09;
作用#xff1a;确保事务的持久性。redo日志记录事务执行后的状态#xff0c;用来恢复还未写入data file的已成功事务更新的数据。防止在发生故障的时间点#xff0c;尚有脏页未写入磁盘
重做日志redo log
作用确保事务的持久性。redo日志记录事务执行后的状态用来恢复还未写入data file的已成功事务更新的数据。防止在发生故障的时间点尚有脏页未写入磁盘再重启mysql服务的时候根据redo log进行重做从而达到事务的持久性。内容物理格式的日志记录的是物理数据页面修改的信息顺序写入redo log file的物理文件中。什么时候产生事务开始之后就产生redo logredo log的落盘并不是根据事务的提交才写入的而是事务的执行过程中就写入redo log中的。什么时候释放对应事务的脏页写入到磁盘当中redo log的任务就完成了redo log占用的空间就会被覆盖。
回滚日志undo log
作用保证数据的原子性保证了事务发生前的数据的一个版本用于回滚同时可以提供多版本并发控制下的读MVCC也即非锁定读内容逻辑格式的日志在执行undo的时候仅仅是将数据从逻辑上恢复到事务之前的状态而不是从物理页面上操作实现的。什么时候产生事务开始时用当前的版本生成undo logundo log会产生redo来保证undo的可靠性。什么时候释放当事务提交之后会放入待清理的链表中由purge线程判断是否由其他事务在使用undo段中表的上一个事务之前的版本信息觉得是否清楚undo log的日志空间。
二进制日志bin log
作用用于复制从库利用主库上的binlog进行重播实现主从复制用于数据库基于时间点的还原内容逻辑格式的日志执行过的事务中的sql语句包括了执行的sql语句增删改反向的信息也就意味着delete对应着delete本身和其反向的insertupdate对应着update执行前后的版本的信息insert对应着delete和insert本身的信息。因此可以使用binlog实现类似于oracle的闪回功能。什么时候产生事务提交的时候一次性将事务中的sql语句按照一定的格式记录到binlog中。所以在启动了bin log的时候如果在提交一些很大的事务效率会因此变得较慢。什么时候释放通过配置在指定的日期里自动删除 二进制日志的作用是用来还原数据库的与redolog是类似的但本质不同 作用不同redo log是保证事务的的持久性是事务层面的binlog具有还原功能是数据层面的。内容不同redo log是物理日志binlog是逻辑日志 错误日志error log
记录启动和停止以及服务器中发生的错误信息
慢查询日志general slow log
慢日志记录执行时间过长和没有使用索引的查询语句报错select、update、delete以及insert语句慢日志只会记录执行成功的语句。
一般日志general query log
记录了服务器接收到的每一个查询或是命令无论这些查询或是命令是否正确甚至是否包含语法错误
中继日志relay log
relay log只在主从服务器的架构中的从服务器中存在是我这种小菜鸟无法接触的苦从服务器为了和主服务器保持一直就要读取二进制日志bin log的内容然后把这些信息存到本地的日志文件去这个存在本地的日志文件就是relay log。
因为格式跟binlog的日志文件相同因此也是可以用 mysqlbinlog进行读取。 主要充当一个缓冲的作用因为主要是主从复制线程先将主服务器的binlog先存到relay log里面去这样就可以不用等完全复制完再发送下一个bin log了队列的思想处处都有真的优秀这些轮子