mysql- sql-mode   数据库大小查询

Mysql ---查看数据库和表大小

查看mysql数据库大小的四种办法,分别有以下四种:

第一种:进去指定schema 数据库(存放了其他的数据库的信息)

use information_schema

第二种:查询所有数据的数据文件和索引文件 大小

select concat(round(sum(DATA_LENGTH/1024/1024),2),‘MB‘) as data_size from information_schema.TABLES;

select concat(round(sum(DATA_LENGTH/1024/1024),2),‘MB‘) as data_size,

CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),‘MB‘) AS index_size

from information_schema.TABLES;

第三种:查看指定数据库的数据文件和索引文件 的大小,比如说:数据库test

select concat(round(sum(DATA_LENGTH/1024/1024),2),‘MB‘) as data_size,

CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),‘MB‘) AS index_size

from information_schema.TABLES where table_schema=‘test‘;

第四种:查看指定数据库的表的数据文件和作引文件 大小,比如说:数据库test 中am21表

select concat(round(sum(DATA_LENGTH/1024/1024),2),‘MB‘) as data_size,

CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),‘MB‘) AS index_size

from information_schema.TABLES where table_schema=‘test‘ and table_name=‘am21‘;

综合查询在   5.7不适用   是因为sql_mode未设置

SELECT TABLE_SCHEMA, CONCAT(TRUNCATE(SUM(data_length)/1024/1024,2),‘ MB‘) AS data_size,

CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),‘MB‘) AS index_size

FROM information_schema.tables;

GROUP BY TABLE_SCHEMA

ORDER BY data_length DESC;

报错如下

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘GROUP BY TABLE_SCHEMA

ORDER BY data_length DESC‘ at line 1

解决办法---  echo "sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"" >> /etc/my.cnf   重启mysql,再次执行

查看sql_mode

mysql -uroot -psunfuzhou -e "SHOW VARIABLES LIKE ‘SQL_MODE‘;"

设置sql_mode

临时设置sql_mode

mysql -uroot -psunfuzhou -e "SET  sql_mode=‘NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ‘"

全局设置sql_mode

mysql -uroot -psunfuzhou -e "SET global  sql_mode=‘NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ‘"

SET @@GLOBAL.sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";

SELECT TABLE_SCHEMA, CONCAT(TRUNCATE(SUM(data_length)/1024/1024,2),‘ MB‘) AS data_size,

CONCAT(TRUNCATE(SUM(index_length)/1024/1024,2),‘MB‘) AS index_size

FROM information_schema.tables;

GROUP BY TABLE_SCHEMA

ORDER BY data_length DESC;

时间: 2024-10-01 01:25:01

mysql- sql-mode   数据库大小查询的相关文章

Mysql数据库大小查询

1.进入 information_schema 数据库(存放了其他的数据库的信息) use information_schema; 2.查询所有数据的大小: SELECT concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data FROM TABLES; 3.查看指定数据库的大小: 比如查看数据库hellodb的大小 SELECT concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as dat

关于SQL/NoSQL数据库搜索/查询的思考

转载请注明出处:jiq?钦's technical Blog Hbase特征: 最近在学习Hbase,Hbase基于行健是建立了索引的,查询速度会非常快,完全实时. 但是Hbase要基于行健之外的字段进行查询,那么就只能是全盘扫描,基本上不可接受. 所以Hbase一般来说会针对具体的应用场景来设计行健,利用基于行健的查询的实时性来达到Hbase数据的实时查询. 关系型数据库基于索引字段的实时查询: 然后联想到关系型SQL数据库,他们针对主键是建立了B/B+/B-树索引的,基于主键的查询是实时的,

sql查看mysql中各数据库大小

用SQL命令查看Mysql数据库大小 要想知道每个数据库的大小的话,步骤如下: 1.进入information_schema 数据库(存放了其他的数据库的信息) use information_schema; 2.查询所有数据的大小: select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables; 3.查看指定数据库的大小: 比如查看数据库home的大小 select concat(round(sum(da

【MySQL笔记】数据库的查询

数据库的查询 注:文中 [ ...] 代表该部分可以去掉. 理论基础:对表对象的一组关系运算,即选择(selection).投影(projection)和连接(join) 1.select语句 子语句顺序: select  [distinct | distinctRow | all]    ----distinct关键字会在结果集中去掉重复的值而只保留一个值,否则有重复值 from where group by having order by                           

mysql SQL优化之嵌套查询-遁地龙卷风

(-1) 写在前面 这篇随笔的数据使用的是http://blog.csdn.net/friendan/article/details/8072668#comments里的,里面有一些常见的select查询练习题. 我使用的是mysql自带的命令行 (1)数据准配 student 表 +---------+-----------+------+------+--------------+ | sno     | Sname     | Ssex | Sage | Sdept        | +-

sql server数据库数据查询成功

1 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> 2 <%@ page import="java.sql.*" %> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" &q

mysql数据库使用sql查询数据库大小及表大小

网上查了很多资料,最后发现一个可行的,分享如下: 数据库大小查询: select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from information_schema.TABLES where TABLE_SCHEMA='数据库名称'; 表大小查询:SELECT concat(round(sum(DATA_LENGTH/1024/1024),2),'M') FROM information_schema.TABLES where TABL

MySQL SQL概述

MySQL SQL概述 数据库的好处: •实现数据持久化 •使用完整的管理系统统一管理易 数据库的概念: DB:数据库(database):存储数据的“仓库”.它保存了一系列有组织的数据. DBMS:数据库管理系统(Database Management System).数据库是通过DBMS创建和操作的容器. SQL:结构化查询语言(Structure Query Language).专门用来与数据库通信的语言 SQL语言概述: SQL的优点:1.不是某个特定数据库供应商专有的语言,几乎所有DB

不同数据库oracle mysql SQL Server DB2 infomix sybase分页查询语句

在不同数据库中的使用的分页查询语句: 当前页:currentpage 页大小:pagesize 1. Oracle数据库 select * from (select A.*,rownum rn from ( QUERY_SQL ) A )  where rn <= ((currentpage+1)*pagesize) and rn > (currentpage*pagesize) 注:QUERY_SQL为查询sql语句. 或 select * from (select rownum rn,id