`
hy2012_campus
  • 浏览: 30608 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

msyql统计crud次数以及开启慢日志记录

 
阅读更多

通过show status可以提供服务器状态信息,也可以使用 msyqladmin-extende status命令获得show status可以根据需要显示session级别的统计结果和global 级别的统计结果

 

以下几个参数对Myisam和innodb存储引擎都计数:

1.Com_select 执行select操作次数,一次查询只累加1;

2.Com_insert 执行了insert操作次数,对于批量插入insert,只累加1次

3.Com_update 执行了update操作次数,

4.Com_delete 执行了delete操作次数

一下几个参数对Innodb存储引擎计数的,累加的算法也略有不同:

1.Innodb_rows_read select查询返回的行数;

2.Innodb_rows_inserted执行了insert操作更新的行数;

3.Innodb_rows_updated执行了update操作更新的行数;

4.Innodb_rows_deleted执行了delete操作删除的行数;

通过以上几个参数,可以很容易的了解当前数据库的应用是以插入更新为主还是以查询操作为主,以及各种类型的 SQL 大致的执行比例是多少。对于更新操作的计数 ,是对执行次数的计数,不论提交还是回滚都会累加。对于事务型的应用,通过 Com_commit 和 Com_rollback 可以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能意味着应用编写存在问题。

 

此外,以下几个参数便于我们了解数据库的基本情况:

1.  Connections 试图连接 Mysql 服务器的次数

2.  Uptime 服务器工作时间

3.  Slow_queries 慢查询的次数

 

可以通过以下两种方式定位执行效率较低的 SQL 语句:

 1.  可以通过慢查询日志定位那些执行效率较低的 sql 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 写一个包含所有执行时间超过  long_query_time 秒的 SQL 语句的日志文件。可以链接到管理维护中的相关章节。

 2.  慢查询日志在查询结束以后才纪录,所以在应用反映执行效率出现问题的时候查询慢查询日志并不能定位问题,可以使用 show processlist 命令查看当前 MySQL 在进行的线程,包括线程的状态,是否锁表等等,可以实时的查看 SQL 执行情况,同时对一些锁表操作进行优化。

 

通过以上步骤查询到效率低的 SQL 后,我们可以通过 explain 或者 desc 获取 MySQL 如何执行 SELECT 语句的信息,包括select 语句执行过程表如何连接和连接的次序。

explain 可以知道什么时候必须为表加入索引以得到一个使用索引来寻找记录的更快的 SELECT。

mysql> explain select sum(moneys) from sales a,companys b where a.company_id = b.id and a.year = 2006;

 

分享到:
评论

相关推荐

    Java连接mysql实现crud

    项目中的SQL文件可能包含了创建数据库、表结构以及填充数据的脚本,这对于理解和实践CRUD操作非常有用。 通过上述步骤,你可以使用Java连接到MySQL数据库并进行CRUD操作。对于初学者来说,理解这些基本概念和操作...

    jdbc+jsp+mysql实现CRUD

    【jdbc+jsp+mysql实现CRUD】是一种常见的Web应用程序开发技术,主要应用于数据管理操作,如创建(Create)、读取(Read)、更新(Update)和删除(Delete)。在这个技术组合中,Java Servlet(通常通过JSP)作为...

    springboot-mysql-crud-master.zip

    SpringBoot是一款基于Java的轻量级框架,它简化了Spring应用程序的初始搭建以及开发过程。在结合MySQL数据库进行CRUD(Create、Read、Update、Delete)操作时,SpringBoot提供了非常方便的集成方案,让我们无需像...

    利用C#于myqsl完成的简单CRUD

    ADO.NET包含若干组件,如SqlConnection(用于与SQL Server建立连接)、MySqlConnection(对应于MySQL数据库)以及SqlCommand对象,用于执行SQL命令。 1. **创建(Create)**:在C#中,创建新记录通常涉及到打开...

    android_mysql_CRUD_.zip_android crud_android mysql_zip

    android crud opration

    go-mysql-crud:使用Golang和MySql的示例crud操作

    去mysql-crud 使用Golang和MySql的示例Crud操作 API端点 所有帖子 路径: /posts 方法: GET 回应: 200 建立讯息 路径: /posts 方法: POST 字段: title, content 回应: 201 详细信息 路径: /posts/{id} ...

    iBaties连接mysql数据库CRUD实例

    本实例是关于如何使用iBATIS连接MySQL数据库进行CRUD(Create、Read、Update、Delete)操作的一个具体应用。 首先,让我们深入了解iBATIS的核心概念: 1. SQL映射文件:iBATIES的核心是SQL映射文件,通常以`.xml`...

    go-mysql-crud:Golang Mysql CRUD

    Golang Mysql CRUD 这是使用MySQL数据库和Golang的CRUD(创建,读取,更新,删除) 有3个源文件: main.go->用英语评论 main-pt-br.go->葡萄牙语注释-巴西 main-uncommented->没有任何评论 所有代码均以英语编写...

    android+json+php+mysql+CRUD功能

    在移动应用开发中,Android平台经常需要与服务器进行数据交互,实现创建(Create)、读取(Read)、更新(Update)和删除(Delete)等CRUD操作。本项目结合了Android客户端、JSON数据格式、PHP服务器端以及MySQL...

    MySql 基础CRUD.md

    MySQL学习笔记,实例总结了MySQL学习中遇到的各类常见问题与实用技巧,需要的朋友可以参考下

    reactjs-nodejs-mysql-crud:使用Nodejs后端,UI的reactjs和数据库MySQL进行CRUD(创建读取更新删除)的简单方法

    在本项目"reactjs-nodejs-mysql-crud"中,我们将探讨如何利用现代Web开发技术栈,包括ReactJS、Node.js以及MySQL数据库,实现CRUD(创建、读取、更新和删除)操作。这个项目是为初学者设计的,旨在帮助他们理解前后...

    SpringBoot+JPA+MySQL+Swagger+Redis实现CRUD

    在本项目中,我们利用了SpringBoot框架,联合JPA(Java Persistence API)与MySQL数据库,以及Swagger和Redis,来构建一个完整的CRUD(Create、Read、Update、Delete)应用程序。下面将详细介绍这些技术及其在项目中...

    CRUD CRUD CRUD

    CRUD,全称为Create(创建)、Read(读取)、Update(更新)和Delete(删除),是数据库操作的基础,也是理解任何数据驱动应用的核心概念。在IT行业中,CRUD操作广泛应用于各种应用程序,从简单的数据库管理工具到...

    SpringMVC+Hibernate +MySql+ EasyUI实现CRUD

    本篇文章将深入探讨这些技术以及如何将它们整合起来实现CRUD(创建、读取、更新、删除)操作。 **SpringMVC** 是Spring框架的一部分,是一个轻量级的MVC(模型-视图-控制器)框架。它为Web应用提供了一种组织代码...

    maven+springmvc+spring+mybatis+mysql整合实现用户的CRUD

    在"maven+springmvc+spring+mybatis+mysql整合实现用户的CRUD"中,Maven负责管理项目的所有依赖,包括Spring、Spring MVC、MyBatis等库,并确保它们的版本兼容。使用Maven,开发者可以通过编写`pom.xml`配置文件来...

    electron-mysql-crud:电子Mysql CRUD

    **电子Mysql CRUD** 是一个基于 Electron 框架的应用程序,主要用于实现对 MySQL 数据库的基本操作,包括创建(Create)、读取(Read)、更新(Update)和删除(Delete),也就是我们常说的CRUD操作。这个应用利用 ...

    C#_mySQL CRUD.rar

    在本项目"C#_mySQL CRUD.rar"中,开发者展示了如何使用C#编程语言和WinForm界面设计工具来实现对MySQL数据库的基本操作,包括创建(Create)、读取(Read)、更新(Update)和删除(Delete),简称CRUD。以下是关于...

    Employee-Logger:具有CRUD功能的员工JavaFx日志记录应用程序连接到具有MySQL数据库的PhP WampServer

    具有CRUD功能的信息记录应用系统,通过MySQL连接到PhP WampServer。 该项目的目标是开发一个三层的Apache MySQL服务应用程序,以演示使用Java和JDBC的Web和数据库连接。 (对于我的分布式系统分配) 我使用WAMP开发...

    使用EF操作Mysql(C#)

    将分步骤解释安装和连接MySQL数据库,创建实体类,并进行基本的CRUD操作(创建、读取、更新、删除)。同时,文章将包含一些可能遇到的常见错误解决方法。 ### 安装和连接MySQL数据库 在开始之前,需要下载并安装...

    jsp 实现的CRUD

    3. **错误处理与日志记录**:添加异常捕获,记录错误日志,便于问题排查。 4. **数据验证**:在Controller层对用户输入进行验证,防止无效数据进入数据库。 综上所述,JSP实现的CRUD操作结合了MVC架构、JDBC和...

Global site tag (gtag.js) - Google Analytics