- 浏览: 7929120 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
mysql 5.6中的information schema,就是存储了很多数据库的元数据,其实很多可以用来
做数据库的性能查询用,下面小结介绍其中几个:
1) Information_Schema.Tables
这里存放的是数据库的所有表的元数据信息,比如下面的语句可以计算哪些表是最占空间的:
又例如:
Select Table_Name
-> From Information_Schema.Tables
-> Where Engine <> 'innodb' and Table_Schema = 'employees';
2) Information_Schema.Columns
这个是存放管理列的信息了,比如:
mysql> Select Table_Name, Column_Name From Information_schema.Columns
-> Where Column_Name Like '%name%' And Table_Schema = 'employees';
3) Information_Schema.Referential_Constraints
这里是存放什么表用到什么样的外键
mysql> Select
-> Table_Name
-> ,Constraint_Name
-> ,Referenced_Table_Name Ref_Tbl
-> ,Unique_Constraint_Name As Ref_Cnstr
-> From Information_schema.Referential_Constraints
-> Where Constraint_Schema = 'employees';
+--------------+---------------------+-------------+-----------+
| Table_Name | Constraint_Name | Ref_Tbl | Ref_Cnstr |
+--------------+---------------------+-------------+-----------+
| dept_emp | dept_emp_ibfk_1 | employees | PRIMARY |
| dept_emp | dept_emp_ibfk_2 | departments | PRIMARY |
| dept_manager | dept_manager_ibfk_1 | employees | PRIMARY |
| dept_manager | dept_manager_ibfk_2 | departments | PRIMARY |
| salaries | salaries_ibfk_1 | employees | PRIMARY |
| titles | titles_ibfk_1 | employees | PRIMARY |
+--------------+---------------------+-------------+-----------+
6 rows in set (0.00 sec)
4) Information_Schema.Key_Column_Usage
这个是用来显示组成索引的有哪些列,比如:
利用mysql 的INFORMATION_SCHEMA.KEY_COLUMN_USAGE表查找某个表的外键(primary, unique, and foreign key constraints)
语句:select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME ='guestbook' and CONSTRAINT_NAME LIKE 'fk_%';
5)
Information_Schema.Processlist
看进程情况
mysql> Select User, Command, Time From Information_schema.processlist;
+------+---------+------+
| User | Command | Time |
+------+---------+------+
| root | Sleep | 86 |
| root | Sleep | 439 |
| root | Query | 0 |
+------+---------+------+
3 rows in set (0.01 sec)
6) Information_Schema.InnoDb_Lock_Waits
看等待事件
Select
r.trx_id waiting_trx_id
,r.trx_mysql_thread_id waiting_thread
,r.trx_query waiting_query
,b.trx_id blocking_trx_id
,b.trx_mysql_thread_id blocking_thread
,b.trx_query blocking_query
From information_schema.innodb_lock_waits w
Join information_schema.innodb_trx b On b.trx_id = w.blocking_trx_id
Join information_schema.innodb_trx r On r.trx_id = w.requesting_trx_id;
做数据库的性能查询用,下面小结介绍其中几个:
1) Information_Schema.Tables
这里存放的是数据库的所有表的元数据信息,比如下面的语句可以计算哪些表是最占空间的:
Select Concat(table_schema, '.', table_name) As "Name" ,Concat(Round(table_rows / 1000000, 2), 'M') As "Rows" ,Concat(Round(data_length / ( 1024 * 1024 * 1024 ), 2), 'G') As "Row Size" ,Concat(Round(index_length / ( 1024 * 1024 * 1024 ), 2), 'G') As "Index Size" ,Concat(Round(( data_length + index_length ) / ( 1024 * 1024 * 1024 ), 2), 'G') As "Total" ,Round(index_length / data_length, 2) "Row / Index Ratio" From information_schema.TABLES Order By data_length + index_length DESC Limit 10;
又例如:
Select Table_Name
-> From Information_Schema.Tables
-> Where Engine <> 'innodb' and Table_Schema = 'employees';
2) Information_Schema.Columns
这个是存放管理列的信息了,比如:
mysql> Select Table_Name, Column_Name From Information_schema.Columns
-> Where Column_Name Like '%name%' And Table_Schema = 'employees';
3) Information_Schema.Referential_Constraints
这里是存放什么表用到什么样的外键
mysql> Select
-> Table_Name
-> ,Constraint_Name
-> ,Referenced_Table_Name Ref_Tbl
-> ,Unique_Constraint_Name As Ref_Cnstr
-> From Information_schema.Referential_Constraints
-> Where Constraint_Schema = 'employees';
+--------------+---------------------+-------------+-----------+
| Table_Name | Constraint_Name | Ref_Tbl | Ref_Cnstr |
+--------------+---------------------+-------------+-----------+
| dept_emp | dept_emp_ibfk_1 | employees | PRIMARY |
| dept_emp | dept_emp_ibfk_2 | departments | PRIMARY |
| dept_manager | dept_manager_ibfk_1 | employees | PRIMARY |
| dept_manager | dept_manager_ibfk_2 | departments | PRIMARY |
| salaries | salaries_ibfk_1 | employees | PRIMARY |
| titles | titles_ibfk_1 | employees | PRIMARY |
+--------------+---------------------+-------------+-----------+
6 rows in set (0.00 sec)
4) Information_Schema.Key_Column_Usage
这个是用来显示组成索引的有哪些列,比如:
利用mysql 的INFORMATION_SCHEMA.KEY_COLUMN_USAGE表查找某个表的外键(primary, unique, and foreign key constraints)
语句:select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME ='guestbook' and CONSTRAINT_NAME LIKE 'fk_%';
5)
Information_Schema.Processlist
看进程情况
mysql> Select User, Command, Time From Information_schema.processlist;
+------+---------+------+
| User | Command | Time |
+------+---------+------+
| root | Sleep | 86 |
| root | Sleep | 439 |
| root | Query | 0 |
+------+---------+------+
3 rows in set (0.01 sec)
6) Information_Schema.InnoDb_Lock_Waits
看等待事件
Select
r.trx_id waiting_trx_id
,r.trx_mysql_thread_id waiting_thread
,r.trx_query waiting_query
,b.trx_id blocking_trx_id
,b.trx_mysql_thread_id blocking_thread
,b.trx_query blocking_query
From information_schema.innodb_lock_waits w
Join information_schema.innodb_trx b On b.trx_id = w.blocking_trx_id
Join information_schema.innodb_trx r On r.trx_id = w.requesting_trx_id;
发表评论
-
让 InnoDB 多任务运行
2018-09-06 16:06 777今天偶然看到的一招,记录下 如果服务器上的参数 innodb_ ... -
mysql中查询连接工作状态
2018-05-31 15:13 679#!/bin/bash while true do mysql ... -
MYSQL BACKUP的SHELL相关语句
2018-05-25 20:33 544#!/bin/bash ###############Basi ... -
MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法
2018-05-08 11:17 610MySQL开启bin-log后,调用存储过程或者函数以及触发器 ... -
NUMA的选择
2018-04-24 09:52 1402现在的机器上都是有 ... -
关于MYSQL 5.7线程池的好文收集
2018-03-27 10:57 1524来自腾讯工程师的好文: https://www.jianshu ... -
MYSQL 的审计日志插件
2017-11-30 10:19 1278MYSQL 的审计日志插件,可惜目前只是LINUX用: 来自M ... -
(转)MySQL InnoDB缓冲池配置详解
2017-10-09 16:55 4060一、InnoDB缓冲池 InnoDB维护一个称为缓冲池的内存 ... -
(转)MySQL 5.7默认SQL模式带来的问题总结
2017-10-05 18:46 1859http://www.ywnds.com/?p=8865 在 ... -
(转)MySQL 5.7默认ONLY_FULL_GROUP_BY语义介绍
2017-10-05 18:45 1179http://www.ywnds.com/?p=8184 ON ... -
MySQL 5.6 新功能之 Index Condition Pushdown (ICP)
2017-10-05 15:52 780http://www.cnblogs.com/zhoujiny ... -
mysql 5.7中的MBR和BKA算法
2017-10-03 15:11 1714一、什么是MRR MMR全称是Multi-Range Re ... -
(收藏)万字总结:学习MySQL优化原理,这一篇就够了!
2017-09-30 23:37 1184http://dbaplus.cn/news-155-1531 ... -
(转)MySQL中NULL和空值的区别
2017-09-23 15:57 2224MySQL中NULL和空值的区别 http://www.yw ... -
mysql 5.7中关于count(*)的优化
2017-09-20 19:15 2345在mysql 5.7中,对于select count(*) f ... -
MySQL 索引设计概要
2017-09-12 21:12 505<<MySQL 索引设计概要>>,不错 ... -
10分钟学会理解和解决MySQL乱码问题
2017-07-22 18:21 542http://cenalulu.github.io/mysql ... -
MySQL的or/in/union与索引优化
2017-07-22 08:29 944https://mp.weixin.qq.com/s/ZWez ... -
MYSQL中查看某个表或库的大小语句
2017-04-02 09:12 1949在information_schema.tables中有相关记 ... -
(收藏)MYSQL大表方案
2017-01-09 19:58 1430https://segmentfault.com/a/1190 ...
相关推荐
在上面的示例中,执行 SHOW DATABASES 语句后,显示了 5 个数据库,分别是 mysql、information_schema、performance_schema、sys 和 test。 mysql 数据库 mysql 数据库是 MySQL 的默认数据库,主要用于存储用户...
实验小结中提到,安装MySQL时可能会遇到问题,比如安装失败或者卸载不彻底。这种情况下,可能需要使用专门的清理工具来确保所有关联文件都被正确删除,然后再重新安装。在配置MySQL时,为了支持中文字符,需要在安装...
* 将当前的数据库设定为 information_schema,并查看数据库数据库中有哪些表 实验小结 在安装 MySql 中有时可能不能安装不成功,那么卸载时,会存在删除不完全的情况。导致再次安装时依然不成功。在对某个数据库...
实验小结强调了安装过程中的常见问题和解决方案,如彻底卸载、字符集选择等,同时也提醒了在进行数据库操作前必须先选择目标数据库。 通过本次实验,学生不仅掌握了 MySQL 的基本安装和使用,还对数据库管理有了...
在NAVICAT中,你可以通过查询MySQL的`INFORMATION_SCHEMA`库中的`STATISTICS`表或者`INDEXES`视图来查看表的索引信息,包括索引名称、类型、包含的列等。 2. **修改索引**: 如果需要修改索引,比如更改索引类型...
实验小结: 通过本次实验,学生不仅掌握了MySQL的安装与基本操作,还学习了如何解决安装过程中可能出现的问题,如字符集设置和数据库对象的管理。同时,对MySQL客户端的使用有了深入的理解,为进一步学习和应用MySQL...
### 小结 无论是Oracle还是MySQL,通过使用特定的SQL语句,你都可以有效地在多表中查找包含特定字符串的表名或字段名。这些查询技巧对于维护和优化大型数据库系统尤其有用,它们帮助你快速定位到感兴趣的数据,从而...
在MySQL数据库操作中,SQL(Structured Query Language)是不可或缺的工具,它用于管理关系数据库系统。以下是六个实用的SQL语句,对初学者尤其有帮助: 1. **计算年数** 当需要根据生日计算年龄时,可以使用以下...
### SQL注入绕WAF小结 #### 一、概述 SQL注入是一种常见的Web应用程序安全漏洞,攻击者通过向Web应用程序提交恶意SQL语句来获取敏感数据、修改数据或执行其他非法操作。随着网络安全技术的发展,Web应用防火墙...
1.7 小结 23 第2章 PHP的基础语法 24 2.1 语言构成与工作原理 24 2.2 常量与变量 25 2.2.1 常量的定义 25 2.2.2 变量的定义 26 2.2.3 变量的作用域 27 2.2.4 动态变量 29 2.3 运算符和关键字 29 2.4 流程控制语法 30...
针对MySQL的SQL注入攻击策略通常涉及利用其特有的函数或特性,如`information_schema`等。 ##### 2. Oracle数据库注入攻击 Oracle数据库因其强大的功能和稳定性,在大型企业级应用中占据重要地位。针对Oracle的SQL...