十一、Mysql常见的show命令及information_schema.tables视图说明

news2025/8/11 12:13:53

在这里插入图片描述

Mysql常见的show命令及information_schema.tables视图说明

  • 十一、Mysql常见的show命令及information_schema.tables视图说明
  • 一、常见的show命令
  • 二、information_schema.tables视图说明
    • 1、information_schema.tables视图的结构说明
    • 2、information_schema.tables视图的案例说明
    • 3、"concat"命令拼接用法及"INTO OUTFILE" 的导出

十一、Mysql常见的show命令及information_schema.tables视图说明

一、常见的show命令

show  databases;                          #查看所有数据库
show tables;                              #查看当前库的所有表
SHOW TABLES FROM                          #查看某个指定库下的表
show create database world                #查看建库语句
show create table world.city              #查看建表语句
show  grants for  root@'localhost'        #查看用户的权限信息
show  charset;                           #查看字符集
show collation                            #查看校对规则
show processlist;                         #查看数据库连接情况
show index from                           #表的索引情况
show status                               #数据库状态查看
SHOW STATUS LIKE '%lock%';                #模糊查询数据库某些状态
SHOW VARIABLES                            #查看所有配置信息
SHOW variables LIKE '%lock%';             #查看部分配置信息
show engines                              #查看支持的所有的存储引擎
show engine innodb status\G               #查看InnoDB引擎相关的状态信息
show binary logs                          #列举所有的二进制日志
show master status                        #查看数据库的日志位置信息
show binlog evnets in                     #查看二进制日志事件
show slave status \G                      #查看从库状态
SHOW RELAYLOG EVENTS                      #查看从库relaylog事件信息
desc  (show colums from city)             #查看表的列定义信息
http://dev.mysql.com/doc/refman/5.7/en/show.html

二、information_schema.tables视图说明

1、information_schema.tables视图的结构说明

information_schema.tables视图常用列属性

DESC information_schema.TABLES
TABLE_SCHEMA    ---->所有数据库的库名
TABLE_NAME      ---->所有表的表名
ENGINE          ---->引擎
TABLE_ROWS      ---->表的行数
AVG_ROW_LENGTH  ---->表中行的平均行(字节)
INDEX_LENGTH    ---->索引的占用空间大小(字节)

2、information_schema.tables视图的案例说明

1)查询整个数据库中所有库和所对应的表信息

SELECT TABLE_SCHEMA,GROUP_CONCAT(TABLE_NAME)
FROM information_schema.tables
GROUP BY TABLE_SCHEMA;

2)统计所有库下的表个数

SELECT TABLE_SCHEMA,COUNT(TABLE_NAME)
FROM information_schema.tables
GROUP BY TABLE_SCHEMA;

3)查询所有innodb引擎的表及所在的库

SELECT TABLE_SCHEMA,TABLE_NAME,ENGINE
FROM information_schema.TABLES
WHERE ENGINE='innodb';

4)统计mysql数据库下每张表的磁盘空间占用

数据库下表所占用空间的计算

表中的平均行(字节)*表的行数+索引的占用空间大小
AVG_ROW_LENGTH*TABLE_ROWS+INDEX_LENGTH
单位为字节
SELECT TABLE_SCHEMA,CONCAT((TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024,"KB") AS size_KB
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='mysql';

#CONCAT((TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024,"KB")
#拼接单位KB

5)统计每个数据库所占用的磁盘空间

SELECT
TABLE_SCHEMA,
CONCAT(SUM(TABLE_ROWS*AVG_ROW_LENGTH+INDEX_LENGTH)/1024," KB") AS Total_KB
FROM information_schema.tables
GROUP BY table_schema;

3、“concat"命令拼接用法及"INTO OUTFILE” 的导出

6)生成整个数据库下的所有表的单独备份语句(不备份’information_schema’,‘performance_schema’,‘sys’)

表的备份语句

mysqldump -uroot -p123 mysql user > /tmp/mysql_user.sql
SELECT CONCAT('mysqldump -uroot -p123456 ',table_schema,' ',table_name,' > /tmp/',table_schema,'_',table_name,'.sql')
FROM information_schema.tables 
WHERE table_schema NOT IN('information_schema','performance_schema','sys')
INTO OUTFILE '/tmp/bak.sh' ;
#INTO OUTFILE '/tmp/bak.sh';
#把拼接的整个数据库下的所有表的单独备份语句导出到/tmp/bak.sh
注意INTO OUTFILE导出命令需要在my.cnf中添加secure-file-priv=xxx目录路径,不添加该项执行会报---secure-file-priv错误
INTO OUTFILE后只能接xxx目录路径/xxx文件名
例如:只能导出到/tmp目录
[root@vm01 ~]# cat /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql
server_id=201
port=3306
socket=/tmp/mysql.sock
log_bin=mysql-bin
log_error=/tmp/mysqld_err.log
secure-file-priv=/tmp
[mysql]
socket=/tmp/mysql.sock
prompt= [\\d]>

重启数据库

执行结果

[root@vm01 ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.20-log MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

[(none)]>SELECT CONCAT('mysqldump -uroot -p123456 ',table_schema,' ',table_name,' > /tmp/',table_schema,'_',table_name,'.sql')
    -> FROM information_schema.tables 
    -> WHERE table_schema NOT IN('information_schema','performance_schema','sys')
    -> INTO OUTFILE '/tmp/bak.sh' ;
Query OK, 39 rows affected (0.00 sec)
[root@vm01 ~]# ll /tmp/bak.sh
-rw-rw-rw- 1 mysql mysql 2837 Nov 12 06:00 /tmp/bak.sh

执行bak.sh看看数据库是否备份成功

[root@vm01 ~]# cd /tmp
[root@vm01 tmp]# bash bak.sh 
[root@vm01 tmp]# ls *.sql
mysql_columns_priv.sql   mysql_help_keyword.sql        mysql_proc.sql     mysql_tables_priv.sql                school_sc.sql
mysql_db.sql             mysql_help_relation.sql       mysql_proxies_priv.sql          mysql_time_zone_leap_second.sql      school_stu.sql
mysql_engine_cost.sql    mysql_help_topic.sql          mysql_server_cost.sql           mysql_time_zone_name.sql             school_teacher.sql
mysql_event.sql          mysql_innodb_index_stats.sql  mysql_servers.sql               mysql_time_zone.sql                  world_city.sql
mysql_func.sql           mysql_innodb_table_stats.sql  mysql_slave_master_info.sql     mysql_time_zone_transition.sql       world_countrylanguage.sql
mysql_general_log.sql    mysql_ndb_binlog_index.sql    mysql_slave_relay_log_info.sql  mysql_time_zone_transition_type.sql  world_country.sql
mysql_gtid_executed.sql  mysql_plugin.sql              mysql_slave_worker_info.sql     mysql_user.sql                       ywx_king.sql
mysql_help_category.sql  mysql_procs_priv.sql          mysql_slow_log.sql              school_course.sql

数据库的表已经全部备份成功

7)107张表,都需要执行以下2条语句

ALTER TABLE world.city DISCARD TABLESPACE;
ALTER TABLE world.city IMPORT TABLESPACE;
SELECT CONCAT("alter table ",table_schema,".",table_name," discard tablespace")
FROM information_schema.tables
WHERE table_schema='world'
INTO OUTFILE '/tmp/dis.sql';

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/15430.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【现代密码学原理实验】——CrypTool2与OpenSSL的使用(学习笔记)

📖 前言:本期我们将使用两个密码学常用工具来实现与分析前面所学的理论知识。 目录🕒 1. 工具介绍🕘 1.1 CrypTool 2🕘 1.2 OpenSSL🕤 1.2.1 常用指令语法🕤 1.2.2 Dgst 指令语法🕒…

c++/VS XP系统 无法定位程序输入点WSAPoll于动态链接库ws2_32.dll解决方案

项目情况: 调用第三方网络库(hv库),在win7/8/10等系统都运行正常,在XP系统提示“ 无法定位程序输入点WSAPoll于动态链接库ws2_32.dll” 产生原因: 第三方网络库(hv库)使用到了wsap…

PDF转OFD ~java实现

PDF转OFD ~java实现 上篇文章记录了一下我第一次对接“超阅云”实现了ofd转pdf功能,想了想,还是再写一篇pdf转ofd的实现,其实对接的API基本一样,如果你是第一次看,建议先看看上一篇文章-“ofd转pdf” ———————…

Web前端——用CSS的常用样式制作一个炫酷的按钮

文章目录笔记:CSS的常用样式炫酷按钮效果实现笔记:CSS的常用样式 边框以及弧度样式 border-width:边框的线条宽度。 border-style:边框的样式,例如 solid实现 dotted 点线 dashed 虚线… border-color:边框…

Docker -- 01实践:使用Docker 快速安装Jenkins

使用Docker 快速安装Jenkins1. Docker install2. Jenkins install3. User Guide1.1 Big Data -- Postgres3. User Guide1.1 Big Data -- PostgresJenkins Website: https://www.jenkins.io/. 1. Docker install Docker 安装和基础知识 Docker install: https://blog.csdn.net/w…

TS学习笔记 类型标签 联合类型 枚举类型 泛型 类型别名

个人理解总结: js天生没有编译和类型检查的束缚 灵活好上手 结合项目使用时也可以做到热更新提升开发体验。 (需要编译的JAVA以前开发DEBUG很麻烦但现在有了容器编排技术,也可以实现类似效果) TS是JS的超集,添加了类型标注,不能直…

vulnhub靶机corrosion1

靶机下载地址:Corrosion: 1 ~ VulnHub Kail IP:192.168.174.128 Corrosion ip:192.168.174.133 思路: 靶机端口扫描,ssh日志反弹shell,linpeas脚本扫描,备份文件发现密码,爆破zi…

医疗器械设计时需要注意的事项

伴随着医疗器械的增加,经市场评估的医疗器械产品也趋向多样化,医疗器械设计也非常重要,下面小编就带大家了解一下开展医疗器械设计时需要注意什么? 说到医疗器械,相信大家都很熟悉。医疗器械有很多种,包括一类医疗器械…

【C++位图】1. 快速查找某个数据是否在一个集合中 2. 排序(全部插入,遍历一遍) 3. 求两个集合的交集、并集等

目录 问题:给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这40亿个数中。 2.简单实现一个位图 3.如何利用位图求两个集合的交集、并集 问题:给40亿个不重复的无符号整数,没排过序…

Golang入门笔记(14)—— 错误处理

来一个除以0的异常,代码如下: package mainimport "fmt"func main() {fmt.Println("before")divNum()fmt.Println("after") }func divNum() {num1 : 10num2 : 0result : num1 / num2fmt.Println(result) } console 异常&…

GitHub 昙花一现:《Spring Boot 趣味实战》神作开源几分钟被下架

又来给大家分享好书了:刘水镜老师的 Spring Boot 趣味实战,网上依旧是没有开源版本!文末送上 刘水镜是谁? 十余年持续技术文章输出,CSDN 博客专家。2020 年《 Spring Boot 趣味私房课》专栏上线,凭借风趣…

创新案例|巴黎欧莱雅如何以内容+货架双轮驱动全渠道兴趣电商增长飞轮

对巴黎欧莱雅而言,兴趣电商作为内容场景为核心的平台,但货架场景已成为驱动增长的飞轮。巴黎欧莱雅团队注意到,抖音用户不只是被动地接受信息流推送,而是越来越倾向于主动搜索。消费者行为的重大变革意味着消费者不再满足于货找人…

【MFC】初识MFC(8)

MFC简介 微软提供的一个类库(Class Libraries),封装了Windows的API,并且包含一个应用程序框架。 1、MFC是对前面窗口编程所用到的API进行封装,在Windows C基础上引入了C面向对象的思想,简单而言就是把API…

【论文翻译】2.5PC:一个更快的非阻塞原子提交协议

2.5-PC: A Faster and Non-Blocking Atomic Commit Protocol 目录1 介绍2 相关工作3 原子承诺和 3PC 概述4 为什么 3PC 是非阻塞的?5 2.5 PC6 2.5 PC 的非正式证明7 确认信息8 2.5 PC 机器证明参考摘要:我们提出 2.5PC,一种非阻塞原子提交协…

DNS与网站访问流程

1:dns与网址url简介 DNS是域名系统(DomainNameSystem)的缩写,域名系统是一中庞大而复杂的系统,但我们这里讲解重心并不是这个系统,而是指本地电脑dns是什么 讲到dns,我们就不得不讲讲网址和域名,我们经常会…

linux杀死进程的五种方法(kill)

添加链接描述 相关博主的链接; 方法一:通过kill 进程id的方式可以实现 首先需要知道进程id, 例如,想要杀死firefox的进程,通过 ps -ef|grep firefox,可以查到firefox的进程id: 然后通过 kill 3781 就可以关闭进程了. 补充: kill -9 来强制终止退出, 例…

16.一篇文章学会django模型的使用

1.django模型简单示例 1.1 创建django项目 创建完项目,还需要创建django子项目 django-admin startproject model_study cd .\model_study\ python manage.py startapp model_app1.2配置应用 将模型对应的应用程序(刚刚创建的子应用)添加…

CentOS 7 Jenkins配置及SpringBoot项目自动部署

1.下载Jenkins 下载地址:War Jenkins Packages 运行Jenkins之前确保系统已经安装好JDK,因为我安装的是JDK1.8,所以选择2.346.1 这个版本 2.启动jenkins 将下载好的jenkins.war上传到服务器上,我的目录是/home/jenkins 启动命令 java -jar jenkins.war --httpPo…

万字详文:TCP 拥塞控制详解

本文主要介绍 TCP 拥塞控制算法,内容多来自网上各个大佬的博客及《TCP/IP 详解》一书,在此基础上进行梳理总结,与大家分享。因水平有限,内容多有不足之处, 敬请谅解。一、TCP 首部格式 在了解 TCP 的拥塞控制之前&…

多向思考者--高敏感人群的内心世界

工作以后很少看心理学的书,因为心理学书给我的印象是:国外翻译的很啰嗦,国内的太鸡汤,看的时候能有感触,看完以后就都忘记了。阅读心理学的书籍,更多的是跟着书中的内容和自己对话。看完《多向思考者》这本…