MySQL查看数据库信息
使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小、字符集、用户等等。下面总结了一些查看数据库相关信息的命令
1:查看显示所有数据库

- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | INVOICE |
- | mysql |
- | performance_schema |
- | test |
- +--------------------+
- 5 rows in set (0.00 sec)
- mysql>

2:查看当前使用的数据库

- mysql> select database();
- +------------+
- | database() |
- +------------+
- | INVOICE |
- +------------+
- 1 row in set (0.00 sec)
- mysql>

3:查看数据库使用端口

- mysql> show variables like 'port';
- +---------------+-------+
- | Variable_name | Value |
- +---------------+-------+
- | port | 3306 |
- +---------------+-------+
- 1 row in set (0.00 sec)

4:查看当前数据库大小
例如,我要查看INVOICE数据库的大小,那么可以通过下面SQL查看

- mysql> use information_schema
- Reading table information for completion of table and column names
- You can turn off this feature to get a quicker startup with -A
- Database changed
- mysql> select concat(round(sum(data_length)/(1024*1024),2) + round(sum(index_length)/(1024*1024),2),'MB') as 'DB Size'
- -> from tables
- -> where table_schema='INVOICE';
- +-----------+
- | DB Size |
- +-----------+
- | 7929.58MB |
- +-----------+
- 1 row in set, 1 warning (0.00 sec)

查看数据所占的空间大小

- mysql> use information_schema;
- Reading table information for completion of table and column names
- You can turn off this feature to get a quicker startup with -A
- Database changed
- mysql> select concat(round(sum(data_length)/(1024*1024),2),'MB') as 'DB Size'
- -> from tables
- -> where table_schema='INVOICE';
- +-----------+
- | DB Size |
- +-----------+
- | 6430.26MB |
- +-----------+
- 1 row in set, 1 warning (0.00 sec)
- mysql>

查看索引所占的空间大小

- mysql> select concat(round(sum(index_length)/(1024*1024),2),'MB') as 'DB Size'
- -> from tables
- -> where table_schema='INVOICE';
- +-----------+
- | DB Size |
- +-----------+
- | 1499.32MB |
- +-----------+
- 1 row in set, 1 warning (0.13 sec)
- mysql>

5:查看数据库编码

- mysql> show variables like 'character%';
- +--------------------------+----------------------------+
- | Variable_name | Value |
- +--------------------------+----------------------------+
- | character_set_client | utf8 |
- | character_set_connection | utf8 |
- | character_set_database | utf8 |
- | character_set_filesystem | binary |
- | character_set_results | utf8 |
- | character_set_server | latin1 |
- | character_set_system | utf8 |
- | character_sets_dir | /usr/share/mysql/charsets/ |
- +--------------------------+----------------------------+
- 8 rows in set (0.00 sec)

character_set_client 为客户端编码方式;
character_set_connection 为建立连接使用的编码;
character_set_database 为数据库的编码;
character_set_results 为结果集的编码;
character_set_server 为数据库服务器的编码;
只要保证以上采用的编码方式一样,就不会出现乱码问题。

- mysql> show variables like 'collation%';
- +----------------------+-------------------+
- | Variable_name | Value |
- +----------------------+-------------------+
- | collation_connection | utf8_general_ci |
- | collation_database | utf8_general_ci |
- | collation_server | latin1_swedish_ci |
- +----------------------+-------------------+
- 3 rows in set (0.00 sec)

status也可以查看数据库的编码

- mysql> status;
- --------------
- mysql Ver 14.14 Distrib 5.6.20, for Linux (x86_64) using EditLine wrapper
- Connection id: 1
- Current database: INVOICE
- Current user: root@localhost
- SSL: Not in use
- Current pager: stdout
- Using outfile: ''
- Using delimiter: ;
- Server version: 5.6.20-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)
- Protocol version: 10
- Connection: Localhost via UNIX socket
- Server characterset: latin1
- Db characterset: latin1
- Client characterset: utf8
- Conn. characterset: utf8
- UNIX socket: /var/lib/mysql/mysql.sock
- Uptime: 5 hours 18 min 51 sec
- Threads: 1 Questions: 10884 Slow queries: 0 Opens: 650 Flush tables: 1 Open tables: 268 Queries per second avg: 0.568
- --------------
- mysql>

6:查看数据库的表信息

- mysql> show tables;
- +---------------------------------------+
- | Tables_in_information_schema |
- +---------------------------------------+
- | CHARACTER_SETS |
- | COLLATIONS |
- | COLLATION_CHARACTER_SET_APPLICABILITY |
- | COLUMNS |
- | COLUMN_PRIVILEGES |
- | ENGINES |
- | EVENTS |
- | FILES |
- | GLOBAL_STATUS |
- | GLOBAL_VARIABLES |
- | KEY_COLUMN_USAGE |
- | OPTIMIZER_TRACE |
- | PARAMETERS |
- | PARTITIONS |
- | PLUGINS |
- | PROCESSLIST |
- | PROFILING |
- | REFERENTIAL_CONSTRAINTS |
- | ROUTINES |
- | SCHEMATA |
- | SCHEMA_PRIVILEGES |
- | SESSION_STATUS |
- | SESSION_VARIABLES |
- | STATISTICS |
- | TABLES |
- | TABLESPACES |
- | TABLE_CONSTRAINTS |
- | TABLE_PRIVILEGES |
- | TRIGGERS |
- | USER_PRIVILEGES |
- | VIEWS |
- | INNODB_LOCKS |
- | INNODB_TRX |
- | INNODB_SYS_DATAFILES |
- | INNODB_LOCK_WAITS |
- | INNODB_SYS_TABLESTATS |
- | INNODB_CMP |
- | INNODB_METRICS |
- | INNODB_CMP_RESET |
- | INNODB_CMP_PER_INDEX |
- | INNODB_CMPMEM_RESET |
- | INNODB_FT_DELETED |
- | INNODB_BUFFER_PAGE_LRU |
- | INNODB_SYS_FOREIGN |
- | INNODB_SYS_COLUMNS |
- | INNODB_SYS_INDEXES |
- | INNODB_FT_DEFAULT_STOPWORD |
- | INNODB_SYS_FIELDS |
- | INNODB_CMP_PER_INDEX_RESET |
- | INNODB_BUFFER_PAGE |
- | INNODB_CMPMEM |
- | INNODB_FT_INDEX_TABLE |
- | INNODB_FT_BEING_DELETED |
- | INNODB_SYS_TABLESPACES |
- | INNODB_FT_INDEX_CACHE |
- | INNODB_SYS_FOREIGN_COLS |
- | INNODB_SYS_TABLES |
- | INNODB_BUFFER_POOL_STATS |
- | INNODB_FT_CONFIG |
- +---------------------------------------+
- 59 rows in set (0.00 sec)

或者使用下面SQL语句查看某个数据库的表信息。
select * from information_schema.tables where table_schema='databasename';
查看某种具体表的信息
select * from information_schema.tables where table_name ='table_name'
7:查看数据库的所有用户信息

- mysql> select distinct concat('user: ''',user,'''@''',host,''';') as query from mysql.user;
- +-------------------------------------+
- | query |
- +-------------------------------------+
- | user: 'root'@'127.0.0.1'; |
- | user: 'root'@'::1'; |
- | user: 'root'@'gettesx20.test.com'; |
- | user: 'root'@'localhost'; |
- +-------------------------------------+
- 4 rows in set (0.00 sec)
- mysql>

8: 查看某个具体用户的权限

- mysql> show grants for 'root'@'localhost';
- +---------------------------------------------------------------------------------------------------------------------------------+
- | Grants for root@localhost |
- +---------------------------------------------------------------------------------------------------------------------------------+
- | GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*C7B1594FD74578DA3A92A61720AC67C6DBE6FC23' WITH GRANT OPTION |
- | GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
- +---------------------------------------------------------------------------------------------------------------------------------+
- 2 rows in set (0.00 sec)

9: 查看数据库的最大连接数

- mysql> show variables like '%max_connections%';
- +-----------------+-------+
- | Variable_name | Value |
- +-----------------+-------+
- | max_connections | 151 |
- +-----------------+-------+
- 1 row in set (0.00 sec)
- mysql>

10:查看数据库当前连接数,并发数。

- mysql> show status like 'Threads%';
- +-------------------+-------+
- | Variable_name | Value |
- +-------------------+-------+
- | Threads_cached | 0 |
- | Threads_connected | 1 |
- | Threads_created | 1 |
- | Threads_running | 1 |
- +-------------------+-------+
- 4 rows in set (0.00 sec)

Threads_cached : 代表当前此时此刻线程缓存中有多少空闲线程。
Threads_connected :代表当前已建立连接的数量,因为一个连接就需要一个线程,所以也可以看成当前被使用的线程数。
Threads_created :代表从最近一次服务启动,已创建线程的数量。
Threads_running :代表当前激活的(非睡眠状态)线程数。并不是代表正在使用的线程数,有时候连接已建立,但是连接处于sleep状态,这里相对应的线程也是sleep状态。
11:查看数据文件存放路径

- mysql> show variables like '%datadir%';
- +---------------+-------------------+
- | Variable_name | Value |
- +---------------+-------------------+
- | datadir | /mysqldata/mysql/ |
- +---------------+-------------------+
- 1 row in set (0.00 sec)
- mysql>

MySQL查看数据库信息的更多相关文章
- [转]MySQL查看数据库相关信息
原文链接:MySQL查看数据库相关信息 使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql& ...
- MySQL学习——查看数据库信息
MySQL学习——查看数据库信息 摘要:本文主要学习了查看数据库信息的方法. 查询指定表的索引 语法 show index from 表名; 示例 mysql> show index from ...
- Sql Server之使用T_SQL创建,修改,查看数据库信息
一.使用Transact_SQL创建数据库 Transact_SQL语法如下: create database database_name [ on [primary] [<fi ...
- mysql查看数据库和表的占用空间大小
mysql查看数据库和表的占用空间大小 第一部分-任务 将线上db,导出后,导入到office db 一. 两种方案: 1,将数据直接从online-->office,通过mysqldump ...
- MySQL查看数据库表容量大小
本文介绍MySQL查看数据库表容量大小的命令语句,提供完整查询语句及实例,方便大家学习使用. 1.查看所有数据库容量大小 select table_schema as '数据库', sum(table ...
- T-SQL - query02_查看数据库信息|查看服务器名称|查看实例名
时间:2017-09-29 编辑:byzqy 本篇记录几个查询数据库信息的 T-SQL 语句: 查看数据库信息 查看服务器名称 查看实例名 文件:SQLQuery2.sql /* 说明: SQLQue ...
- MySQL查看数据库相关信息
使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql> show databases ...
- mysql 查看数据库、表的基本命令
1:show databases; 查看所有的数据库,等同于select schema_name from information_schema.schemata\G.\G 替换;,以纵向报表的形式输 ...
- MySQL查看数据库安装路径
有时候在我们开发的过程中并不一定记得数据库的安装路径.比如要查看mysql 数据库的安装目录在哪里:我们可以通过mysql命令查看mysql的安装路径: # 以下两个sql任意一个可查询 select ...
随机推荐
- eclipse+Maven插件报错:-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
问题描述: eclipse indigo+maven3.3.3+jdk1.70 maven插件执行报错:-Dmaven.multiModuleProjectDirectory system prope ...
- jsp连接书库DatabaseUtil类
public class DatabaseUtil { private static String driver = ConfigManager.getProperties("driver& ...
- linux 安装jdk以及nginx详细过程
一.安装jdk 1:首先下载jdk到本地,然后通过git 上传到linux服务器上 2:进入目录usr,并创建目录java,将jdk的压缩文件移动到该目录下 cd /usr mkdir java mv ...
- Python基础--函数的定义和调用
一.函数的作用: 提高代码的可读性,减少代码的冗余,方便调用和修改,组织结构清晰 二.函数的定义:函数遵循先定义后调用的原则 1.无参函数 def funcname(): #def 是关键字,后跟函数 ...
- Menu-菜单组件
#menu菜单组件 from tkinter import * master=Tk() def callback(): print('你好咯!!') m = Menu(master) m.add_co ...
- Linux OpenGL 实践篇-4 坐标系统
OpenGL中顶点经过顶点着色器后会变为标准设备坐标系.标准设备坐标系的各坐标的取值范围是[-1,1],超过这个范围的点将会被剔除.而这个变换的过程可描述为顶点在几个坐标系统的变换,这几个坐标系统为: ...
- 机器学习技法:14 Radial Basis Function Network
Roadmap RBF Network Hypothesis RBF Network Learning k-Means Algorithm k-Means and RBF Network in Act ...
- LruCache的缓存策略
一.Android中的缓存策略 一般来说,缓存策略主要包含缓存的添加.获取和删除这三类操作.如何添加和获取缓存这个比较好理解,那么为什么还要删除缓存呢?这是因为不管是内存缓存还是硬盘缓存,它们的缓存大 ...
- [Vijos 1143]三取方格数
Description 设有N*N的方格图,我们将其中的某些方格填入正整数, 而其他的方格中放入0. 某人从图得左上角出发,可以向下走,也可以向右走,直到到达右下角. 在走过的路上,他取走了方格中的数 ...
- C++Primer学习——类型转换
无符号之间的运算 当一个是无符号类型,另外一个是带符号类型: 如果无符号不小于带符号,那么带符号转换成无符号. 如果无符号小于带符号,当无符号类型的所有值都能存到带符号中时,则无符号转换成带符号,否则 ...