分享好友 站长动态首页 网站导航

MySQL常用查询Databases和Tables

2022-06-02 22:00 · 头闻号数据库

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

一、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;

说明:

(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;

说明:

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;

说明:

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;

说明:

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;

说明:

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- 表存储引擎。可能的值:

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 天内创建的所有表,按表的创建日期(降序)和数据库名称排序

说明:

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 天内最后修改的所有表,按更新时间降序排列

说明:

免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报

举报
反对 0
打赏 0
更多相关文章

评论

0

收藏

点赞