社区编辑申请
注册/登录
MySQL常用查询Databases和Tables
数据库 MySQL
本篇文章分享一下工作中常见的MySQL脚本,具体内容如下,我们一起来看。

分享一下工作中常见的mysql脚本,此次分享的内容如下:

  • Databases
  • tables

一、Databases and schemas

列出了 MySQL 实例上的用户数据库(模式):

select schema_name as database_name
from information_schema.schemata
where schema_name not in('mysql','information_schema',
'performance_schema','sys')
order by schema_name

说明:database_name - 数据库(模式)名称。

二、Tables

1. 列出 MySQL 数据库中的表

下面的查询列出了当前或提供的数据库中的表。要列出所有用户数据库中的表

(1) 当前数据库

select table_schema as database_name,
table_name
from information_schema.tables
where table_type = 'BASE TABLE'
and table_schema = database()
order by database_name, table_name;

说明:

  • table_schema - 数据库(模式)名称
  • table_name - 表名

(2) 指定数据库

select table_schema as database_name,
table_name
from information_schema.tables
where table_type = 'BASE TABLE'
and table_schema = 'database_name' -- enter your database name here
order by database_name, table_name;

说明:

  • table_schema - 数据库(模式)名称
  • table_name - 表名

2. 列出 MySQL 中所有数据库的表

下面的查询列出了所有用户数据库中的所有表:

select table_schema as database_name,
table_name
from information_schema.tables
where table_type = 'BASE TABLE'
and table_schema not in ('information_schema','mysql',
'performance_schema','sys')
order by database_name, table_name;

说明:

  • table_schema - 数据库(模式)名称
  • table_name - 表名

3. 列出 MySQL 数据库中的 MyISAM 表

select table_schema as database_name,
table_name
from information_schema.tables tab
where engine = 'MyISAM'
and table_type = 'BASE TABLE'
and table_schema not in ('information_schema', 'sys',
'performance_schema','mysql')
-- and table_schema = 'your database name'
order by table_schema,
table_name;

说明:

  • database_name - 数据库(模式)名称
  • table_name - 表名

4. 列出 MySQL 数据库中的 InnoDB 表

select table_schema as database_name,
table_name
from information_schema.tables tab
where engine = 'InnoDB'
and table_type = 'BASE TABLE'
and table_schema not in ('information_schema', 'sys',
'performance_schema','mysql')
-- and table_schema = 'your database name'
order by table_schema,
table_name;

说明:

  • database_name - 数据库(模式)名称
  • table_name - 表名

5. 识别 MySQL 数据库中的表存储引擎(模式)

select table_schema as database_name,
table_name,
engine
from information_schema.tables
where table_type = 'BASE TABLE'
and table_schema not in ('information_schema','mysql',
'performance_schema','sys')
-- and table_schema = 'your database name'
order by table_schema,
table_name;

说明:

(1)table_schema - 数据库(模式)名称

(2)table_name - 表名

(3)engine- 表存储引擎。可能的值:

  • CSV
  • InnoDB
  • 记忆
  • MyISAM
  • 档案
  • 黑洞
  • MRG_MyISAM
  • 联合的

6. 在 MySQL 数据库中查找最近创建的表

select table_schema as database_name,
table_name,
create_time
from information_schema.tables
where create_time > adddate(current_date,INTERVAL -60 DAY)
and table_schema not in('information_schema', 'mysql',
'performance_schema','sys')
and table_type ='BASE TABLE'
-- and table_schema = 'your database name'
order by create_time desc,
table_schema;

MySQL 数据库中最近 60 天内创建的所有表,按表的创建日期(降序)和数据库名称排序

说明:

  • database_name - 表所有者,模式名称
  • table_name - 表名
  • create_time - 表的创建日期

7. 在 MySQL 数据库中查找最近修改的表

select table_schema as database_name,
table_name,
update_time
from information_schema.tables tab
where update_time > (current_timestamp() - interval 30 day)
and table_type = 'BASE TABLE'
and table_schema not in ('information_schema', 'sys',
'performance_schema','mysql')
-- and table_schema = 'your database name'
order by update_time desc;

所有数据库(模式)中最近 30 天内最后修改的所有表,按更新时间降序排列

说明:

  • database_name - 数据库(模式)名称
  • table_name - 表名
  • update_time - 表的最后更新时间(UPDATE、INSERT 或 DELETE 操作或 MVCC 的 COMMIT)
责任编辑:赵宁宁 来源: 今日头条
相关推荐

2022-07-03 06:10:15

2022-06-23 11:42:22

MySQL数据库

2022-06-26 06:32:28

MySQL数据库维护

2022-06-22 09:56:19

PythonMySQL数据库

2022-06-06 07:35:26

2022-05-17 11:06:44

数据库MySQL系统

2022-05-30 11:10:04

数据库MySQL系统

2022-05-11 09:02:27

Python数据库Excel

2022-06-20 12:00:43

MySQL数据库升级

2022-06-29 09:43:14

SQL优化数据库

2022-06-30 10:56:18

字节云数据库存储

2022-05-26 06:05:16

MySQL数据库

2022-03-16 14:45:18

MySQL慢查询数据库

2022-06-14 08:01:43

数据库MySQL

2022-06-13 07:36:06

2022-06-13 14:58:19

系统案例

2022-05-09 15:52:23

MySQL数据库数据库表

2022-04-29 10:27:58

数据库删库MySQL

2022-05-20 11:54:13

KubernetesK3sLinux

2022-03-22 15:05:15

MySQL缓冲池

同话题下的热门内容

一次非常有意思的 SQL 优化经历:从 30248.271s 到 0.001s为什么MySQL的count()方法这么慢?解决MySQL幻读的终极指南面试突击:说一下MySQL事务隔离级别?分库分表实战:小试牛刀—千万级数据之SQL优化MySQL 死锁了,怎么办?你知道MySQL中的游标吗?MySQL主键自增值为什么有“空洞”?

编辑推荐

MySQL集群搭建详解如果对MySQL还停留在这个印象,就out了防止服务器宕机时MySQL数据丢失的几种方案MySQL innodb引擎备份工具XtraBackup之二(数据库全备)MySQL优化: Slave延迟很大的优化方法总结
我收藏的内容
点赞
收藏

51CTO技术栈公众号