【MySQL】常用SQL--持续更新ing

news2025/4/15 3:36:44

一、配置信息类

        1.查看版本

select @@version;
或
select version();

        2.查看配置 

show global variables where variable_name in ('basedir','binlog_format','datadir','expire_logs_days','innodb_buffer_pool_size','innodb_log_buffer_size','innodb_log_file_size','innodb_log_files_in_group','log_bin','log_bin_basename','log_bin_trust_function_creators','log_error','log_output','long_query_time','max_connections','port','slow_query_log','slow_query_log_file','socket','character_set_server','collation_server','default_storage_engine','pid_file','log_error','user','server_id','skip_name_resolve','event_scheduler','max_allowed_packet','lower_case_table_names','performance_schema_max_sql_text_length','open_files_limit','log_timestamps','sql_mode','general_log','general_log_file','explicit_defaults_for_timestamp');
变量名描述
basedirMySQL安装目录的位置。
binlog_format二进制日志记录格式,可以是STATEMENT, ROW或MIXED。
datadir存储数据库文件(如表和索引)的目录。
expire_logs_days设置二进制日志文件自动过期并被删除的天数。
innodb_buffer_pool_sizeInnoDB存储引擎用于缓存表和索引数据的内存大小。
innodb_log_buffer_sizeInnoDB存储引擎用于缓冲未写入磁盘的日志信息的内存大小。
innodb_log_file_size每个InnoDB重做日志文件的大小。
innodb_log_files_in_groupInnoDB重做日志文件组中的文件数量。
log_bin开启或关闭二进制日志记录功能。
log_bin_basename二进制日志文件的基本文件名。
log_bin_trust_function_creators允许不具有SUPER权限的用户创建安全函数。
log_error错误日志文件的位置。
log_output指定日志输出的目标(例如,TABLE, FILE等)。
long_query_time定义慢查询的时间阈值(以秒为单位)。
max_connectionsMySQL服务器允许的最大并发连接数。
portMySQL监听客户端连接的TCP/IP端口。
slow_query_log开启或关闭慢查询日志记录功能。
slow_query_log_file慢查询日志文件的位置。
socket本地Unix套接字文件路径。
character_set_server服务器使用的默认字符集。
collation_server服务器使用的默认排序规则。
default_storage_engine创建新表时的默认存储引擎。
pid_file进程ID文件的位置。
userMySQL作为该用户身份运行(仅限UNIX)。
server_id在复制环境中唯一标识服务器的数字。
skip_name_resolve如果设置,则禁止解析主机名到IP地址。
event_scheduler启用或禁用事件调度器。
max_allowed_packetMySQL接收的最大单个数据包/行大小。
lower_case_table_names控制表名是否区分大小写。
performance_schema_max_sql_text_lengthperformance schema 中 SQL 文本的最大长度。
open_files_limit打开文件的最大数目。
log_timestamps日志条目的时间戳格式。
sql_mode设置SQL操作模式,影响数据库行为。
general_log开启或关闭普通查询日志记录功能。
general_log_file普通查询日志文件的位置。
explicit_defaults_for_timestamp对于TIMESTAMP类型,默认使用显式指定的时间戳。

 

二、基础信息类

        1. 用户信息

select * from mysql.user;

        2.查看用户权限

查看root用户有哪些权限
show grants for root@'%';

        3.密码策略

SHOW VARIABLES LIKE 'validate_password%';
变量名描述
validate_password_length密码所需的最小长度。
validate_password_mixed_case_count密码中包含的大写字母的最小数量。
validate_password_number_count密码中包含的数字的最小数量。
validate_password_policy密码策略等级,0/LOW、1/MEDIUM、2/STRONG。默认是1。
validate_password_special_char_count密码中包含的特殊字符的最小数量。(注:这不是标准变量名,实际应为 validate_password_special_character_count

        4.库信息

show databases;

        5. 表信息

需要连接具体的库
show tables;

        6.表描述

desc table_name;

例如查看t1的表结构描述:
desc t1;

        7. 表定义

show create table table_name;

输出的就是表的ddl

        8.所有表详细信息

select * from information_schema.tables;

        9. 索引信息

show index from table_name;

        10.统计信息

select * from information_schema.statistics;

        11. 视图

select * from information_schema.views;

        12.分区表

select * from information_schema.partitions;

        13.存储过程

select * from information_schema.routines;

        14. 触发器

select * from information_schema.triggers;

        15.事件

select * from information_schema.events;

三、运行情况类 

        1. 连接情况

show full processlist;
或
select * from information_schema.processlist;

        2. 事务情况

select * from information_schema.innodb_trx;

        3.锁情况

                3.1 被锁表

show open tables where in_use > 0;

                3.2 innodb行锁

select * from information_schema.innodb_locks;

                3.3  锁等待

select * from information_schema.innodb_lock_waits;

                3.4 阻塞

SELECT
    p2.`HOST` 被阻塞方host,
    p2.`USER` 被阻塞方用户,
    r.trx_id 被阻塞方事务id,
    r.trx_mysql_thread_id 被阻塞方线程号,
    TIMESTAMPDIFF(SECOND,
        r.trx_wait_started,
        CURRENT_TIMESTAMP) 等待时间,
    r.trx_query 被阻塞的查询,
    l.lock_table 阻塞方锁住的表,
    m.`lock_mode` 被阻塞方的锁模式,
    m.`lock_type` '被阻塞方的锁类型(表锁还是行锁)',
    m.`lock_index` 被阻塞方锁住的索引,
    m.`lock_space` 被阻塞方锁对象的space_id,
    m.lock_page 被阻塞方事务锁定页的数量,
    m.lock_rec 被阻塞方事务锁定行的数量,
    m.lock_data 被阻塞方事务锁定记录的主键值,
    p.`HOST` 阻塞方主机,
    p.`USER` 阻塞方用户,
    b.trx_id 阻塞方事务id,
    b.trx_mysql_thread_id 阻塞方线程号,
    b.trx_query 阻塞方查询,
    l.`lock_mode` 阻塞方的锁模式,
    l.`lock_type` '阻塞方的锁类型(表锁还是行锁)',
    l.`lock_index` 阻塞方锁住的索引,
    l.`lock_space` 阻塞方锁对象的space_id,
    l.lock_page 阻塞方事务锁定页的数量,
    l.lock_rec 阻塞方事务锁定行的数量,
    l.lock_data 阻塞方事务锁定记录的主键值,
    IF(p.COMMAND = 'Sleep',
        CONCAT(p.TIME, ' 秒'),
        0) 阻塞方事务空闲的时间
FROM
    information_schema.INNODB_LOCK_WAITS w
        INNER JOIN
    information_schema.INNODB_TRX b ON b.trx_id = w.blocking_trx_id
        INNER JOIN
    information_schema.INNODB_TRX r ON r.trx_id = w.requesting_trx_id
        INNER JOIN
    information_schema.INNODB_LOCKS l ON w.blocking_lock_id = l.lock_id
        AND l.`lock_trx_id` = b.`trx_id`
        INNER JOIN
    information_schema.INNODB_LOCKS m ON m.`lock_id` = w.`requested_lock_id`
        AND m.`lock_trx_id` = r.`trx_id`
        INNER JOIN
    information_schema.PROCESSLIST p ON p.ID = b.trx_mysql_thread_id
        INNER JOIN
    information_schema.PROCESSLIST p2 ON p2.ID = r.trx_mysql_thread_id
ORDER BY 等待时间 DESC;

              4.索引情况        

                   4.1 冗余索引

SELECT
    object_schema,
  count(*)
FROM
    PERFORMANCE_SCHEMA.table_io_waits_summary_by_index_usage
WHERE
    count_star = 0
AND sum_timer_wait = 0
GROUP BY object_schema
order by count(*) desc;

               4.2 查看性能较差的索引 TOP10

SELECT
    object_schema,object_name,index_name,max_timer_wait
FROM
    PERFORMANCE_SCHEMA.table_io_waits_summary_by_index_usage
ORDER BY
    max_timer_wait DESC
LIMIT 10;

                4.3 未使用的索引

SELECT
    object_schema,
    count(*)
FROM
    PERFORMANCE_SCHEMA .table_io_waits_summary_by_index_usage
WHERE
    index_name IS NULL
GROUP BY
    object_schema
ORDER BY
    count(*) DESC;

四、数据情况类

        1. 实例数据大小

SELECT
    'all_database' AS '数据库',
    SUM(table_rows) AS '记录数',
    SUM(TRUNCATE (data_length / 1024 / 1024 / 1024, 2) + TRUNCATE (index_length / 1024 / 1024 / 1024, 2)) AS '数据容量(GB)'
FROM
    information_schema.tables
ORDER BY
    data_length DESC,
    index_length DESC limit 10;

        2.库数据大小

SELECT
    table_schema AS '数据库',
    sum(table_rows) AS '记录数',
    sum(TRUNCATE (data_length / 1024 / 1024 / 1024, 2) + TRUNCATE (index_length / 1024 / 1024 / 1024, 2)) AS '数据容量(GB)'
FROM
    information_schema.tables
-- WHERE table_schema = 'stdsj_dw'  -- 指定数据库名
GROUP BY table_schema
ORDER BY
    data_length DESC,
    index_length DESC limit 10;

        3.表数据大小

SELECT
    table_schema AS '数据库',
    table_name AS '表名',
    table_rows AS '记录数',
    TRUNCATE (data_length / 1024 / 1024 / 1024, 2) AS '数据容量(GB)',
    TRUNCATE (index_length / 1024 / 1024, 2) AS '索引容量(MB)'
FROM
    information_schema.tables
-- WHERE table_schema = 'stdsj_dw'  -- 指定数据库名
ORDER BY
    table_rows DESC limit 10;

 

 

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

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

相关文章

视频分析设备平台EasyCVR打造汽车门店经营场景安全:AI智慧安防技术全解析

一、方案背景 某电动车企业不停爆出维权新闻,支持和反对的声音此起彼伏,事情不断发酵、反转,每天都有新消息,令人目不暇接。车展、车店作为维权事件的高发场所,事后复盘和责任认定时,安防监控和视频监控平…

Hibernate里的对象不同状态和Session的核心方法

临时状态的测试 Student student new Student("张三", "男", 22, new Date()); 以上student就是一个Transient(临时状态),此时student并没有被session进行托管,即在session的缓存中还不存在student这个对象,当执行完save方法后&a…

模型嵌入式部署

背景 自从深度学习大规模应用以来,其中一个应用方向就是将深度学习视觉算法部署到嵌入式平台上,使用NPU推理。虽然已经做了很久的模型部署,但一直都是在公司默默耕耘,为了发展一下自己“边缘部署专家”这个个人品牌,打…

Redlinux(2025.3.29)

1、将你的虚拟机的网卡模式设置为nat模式,给虚拟机网卡配置三个主机位分别为100、200、168的ip地址。(以nmtui命令为例) 2、测试你的虚拟机是否能够ping通网关和dns,如果不能请修改网关和dns的地址。 首先打开虚拟网络编辑器查看NAT设置里的网关IP&…

uni-app项目运行在浏览器、微信开发者工具、mumu模拟器

一、安装HBuilder X 1、下载HBuilder X 官网网址:https://dcloud.io/hbuilderx.html 根据电脑系统下载对应的版本(我的电脑是Windows 10) 2.安装HBuilder X 直接将HBuilderX.4.61.2025040322-alpha.zip解压到自己想要存放的文件夹中 双击…

2025-04-07 NO.3 Quest3 MR 配置

文章目录 1 MR 介绍1.1 透视1.2 场景理解1.3 空间设置 2 配置 MR 环境2.1 场景配置2.2 MR 配置 3 运行测试 配置环境: Windows 11Unity 6000.0.42f1Meta SDK v74.0.2Quest3 1 MR 介绍 1.1 透视 ​ 透视(Passthrough)是将应用的背景从虚拟的…

抓wifi无线空口包之Macbook Pro抓包(一)

参考: 在MAC OS上进行Wi-Fi抓包和空中包分析_空口抓包和无线网卡抓包的区别-CSDN博客 WireShark中802.11帧的类型、子类型对照表_wireshark 怎么看disassociate帧和deauthenticate-CSDN博客 一、在macbook pro上,点击option 同时点击右上角wifi 功能&a…

单元测试原则之——不要模拟值对象 (1)

1. 什么是值对象(Value Objects)? 值对象是指那些不可变且仅通过其属性(数据)来定义的对象。它们通常没有复杂的逻辑或行为,主要用于存储和传递数据。例如: ● 字符串(String) ● 数字(Integer, Double) ● 日期(LocalDate, Instant) ● 自定义的简单数据类(如…

版本控制工具——SVN

目录 【版本控制系统】 【SVN概述】 【SVN基本使用】 【解决SVN拉取文件到本地后不显示绿色图标问题】 【版本控制系统】 版本控制系统(version control system)是一种用于管理文件变更的软件工具,主要用于记录文件的修改历史&#xff0c…

2022第十三届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组(题解解析)

记录刷题的过程、感悟、题解。 希望能帮到,那些与我一同前行的,来自远方的朋友😉 大纲: 1、九进制转十进制-(解析)-简单的进制转化问题😄 2、顺子日期-(解析)-考察日期 3…

【EC200N-CN——Linux驱动移植】问题回顾

【EC200N-CN——Linux驱动移植】问题回顾 1)、开发回顾一、问题回顾与解决过程二、核心原理分析1. **USB设备识别的关键:VID/PID**2. **为什么之前不生成ttyUSB节点?**3. **为什么添加PID后就能生成节点?** 三、日志关键信息解读1…

构建k8s下Helm私有仓库与自定义Chart开发指南

#作者:程宏斌 文章目录 自定义helm模板1、开发自己的chare包2、调试chart3、安装chart 自定义helm模板 https://hub.helm.sh/ 1、开发自己的chare包 [rootmaster ~]# helm create mychare //创建一个名为mychare的chare包 [rootmaster ~]# tree -C mychare/ //以…

【7】C#上位机---Modbus RTU 界面设计与封装

C#上位机---Modbus通讯 1 Modbus RTU 通讯1.1 RS485串口与串行通信(Serial Communications)1.2 Modbus RTU协议1.3 Modbus RTU主从模式1.4 Modbus 主从站模拟调试2 Modbus RTU 界面设计与封装2.1 温度控件的类属性2.2 C#封装Modbus实现通讯2.3 C#封装Modbus TRU通用类2.4 上位…

【嵌入式学习6】多任务版TCP服务器

目录 如何实现: 客户端1.0版本: 服务端: 客户端2.0版本: thread.join() 是一个线程同步方法,用于主线程等待子线程完成。当你调用 thread.join() 时,主线程会阻塞,直到调用 join() 的子线程…

每天认识一个设计模式-外观模式:化繁为简的接口魔法

一、前言 在设计模式中,结构型设计模式处理类或对象组合,可助力构建灵活、可维护软件结构。此前探讨过组合模式(将对象组合成树形结构,统一处理单个与组合对象,如文件系统管理)和装饰器模式(动…

VLAN(虚拟局域网)

一、vlan概述 VLAN(virtual local area network)是一种通过逻辑方式划分网络的技术,允许将一个物理网络划分为多个独立的虚拟网络。每一个vlan是一个广播域,不同vlan之间的通信需要通过路由器或三层交换机 [!注意] vlan是交换机独有的技术,P…

Transformers without Normalization论文翻译

论文信息: 作者:Jiachen Zhu, Xinlei Chen, Kaiming He, Yann LeCun, Zhuang Liu 论文地址:arxiv.org/pdf/2503.10622 代码仓库:jiachenzhu/DyT: Code release for DynamicTanh (DyT) 摘要 归一化层在现代神经网络中无处不在…

题目练习之set的奇妙使用

♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨ 个…

网站提示“不安全“怎么办?原因分析与解决方法

引言:为什么浏览器会提示网站"不安全"? 当您访问某些网站时,浏览器可能会显示"不安全"警告。这通常意味着该网站存在安全风险,可能影响您的隐私或数据安全。本文将介绍常见原因及解决方法,帮助您…

如何利用AI智能生成PPT,提升工作效率与创意表现

如何利用AI智能生成PPT,提升工作效率与创意表现!在这个信息爆炸的时代,制作一份既专业又富有创意的PPT,已经不再是一个简单的任务。尤其是对于每天都需要做报告、做展示的职场人士来说,PPT的质量直接影响着工作效率和个…