记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

MySQL : 显示二进制日志文件中的插入、更新、删除数

mysql-insert-update-delete

每个数据修改(如插入、更新、删除和数据定义,如 ALTER、ADD、DROP语句)在服务器中执行,都在日志文件中记录。因此,每次执行这些语句时,您实际上会更新数据文件和日志文件。

如果您有一个包含主数据库和从服务器的 MySQL 数据库设置。您知道主服务器甚至将事务写入二进制日志,二进制日志由从站读取和执行,从而使从站成为主数据库的连续副本。

因此,我们可以说二进制日志包含数据库的所有更改的记录,包括数据和结构。它由一组二进制日志文件和索引组成。

在这篇文章中,我将向您展示如何在二进制日志文件中查找多少更新、插入和删除。

查找二进制日志文件中的更新、插入和删除数

键入以下一行命令以获取所有事务详细信息:

# mysqlbinlog mysql-bin.005757 | grep -i -e "^update" -e "^insert" -e "^delete" -e "^replace" -e "^alter" | cut -c1-100 | tr '[A-Z]' '[a-z]' | sed -e "s/\t/ /g;s/\`//g;s/(.*$//;s/ set .*$//;s/ as .*$//" | sed -e "s/ where .*$//" | sort | uniq -c | sort -nr | head -50

你会得到一些输出,如下所示"

 126254 insert into user_name_detail
  89384 insert into user_sessions
  86891 delete from user_sessions
  76377 update user_members
  55230 update user_sessions
  28251 delete from user_validating
    185 insert into user_reputation_cache
     89 insert into user_profile_portal
     88 insert into user_pfields_content
     88 insert into user_members
     88 delete from user_pfields_content
     78 insert into user_reputation_totals
     74 update user_task_manager
     60 insert into user_content_cache_posts
     23 insert into user_task_logs
     19 insert into user_topic_views
     14 insert into iuser_core_like_cache
	 ..............................
	 .......................
	 .....................
	 .............

谢谢:)



转载请标明出处【MySQL : 显示二进制日志文件中的插入、更新、删除数】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论