mysql DBA常用的sql

news/2024/9/18 12:47:58/ 标签: mysql, dba, sql
  • 是否一般查询日志,默认关闭
    show variables like ‘general_log’;

  • 是否开启慢日志查询 默认关闭
    show global variables like ‘slow_query_log’;

  • 开启慢日志查询
    SET GLOBAL slow_query_log = ‘ON’;

  • 默认是10 单位s
    SELECT @@long_query_time;

  • 设置超过1s就算慢查
    SET GLOBAL long_query_time=1;

  • 查询数量小于这个值,不计入慢查询,默认是 0
    SELECT @@min_examined_row_limit;

  • 慢查默认不包括管理语句,比如创建表、创建索引等等
    SELECT @@log_slow_admin_statements;

  • 默认也不记录不使用索引的慢查
    SELECT @@log_queries_not_using_indexes;

  • 日志保存方式,FILE 或 TABLE, 也可以TABLE,FILE 或者NONE 代表禁用日志写入

  • table是将慢日志添加至表中,FILE是将慢日志添加至慢日志文件

  • 慢查存在哪里
    SELECT @@log_output;

  • 比如我希望2边都保存
    SET GLOBAL log_output=‘table,file’;

  • 为file,那么保存的文件路径为slow_query_log_file
    SELECT @@slow_query_log_file;
    SET GLOBAL slow_query_log_file=‘/data/soft/sql>mysql/123.log’;

  • 为表,则保存在sql>mysql.slow_log表中
    select * from sql>mysql.slow_log;

  • 根据表结构创建空表
    CREATE TABLE new_table LIKE old_table;

  • 复制表结构与数据到新表
    CREATE TABLE new_table AS SELECT * FROM old_table;

  • 查看表结构
    DESCRIBE bfa.bfa_ic_invoice;

  • 查询线程
    show status like ‘Threads%’;

Variable_nameValuenote
Threads_cached4缓存的线程数,thread_cache_size 默认-1,自动调整,最大是16384
Threads_connected177当前打开的线程数
Threads_created195261创建的线程总数
Threads_running1正在运行的线程数
  • 查询thread_cache_size系统变量
    SELECT @@thread_cache_size;
  • 显示用户正在运行的线程
    show FULL PROCESSLIST;
    | 字段名 | 字段含义 |
    |:-----|:----|
    | user | 操作的用户名 |
    | host | 地址 |
    | db | 操作的DB |
    | command | 当前连接执行的命令 休眠、查询 sleep为空闲连接 |
    | time | 这个状态持续的时间,单位是秒 |
    | state | 状态 |
    | info | 执行信息 |

删除线程,阻塞线程之类的格式为
KILL command id;
例如
KILL sleep 1234;

  • 查询最大使用链接
    show status like ‘Max_used_connections%’;
    | Variable_name | Value | note |
    |:---------|:----|:------------------------------|
    | Max_used_connections | 464 | 自服务启动以来最大的连接数 |
    | Max_used_connections_time | 2024-08-01 17:15:14 | 达到最大连接数的时间 |

  • 最大的连接数,超过该值不允许建立连接 默认151 1~100000
    SELECT @@max_connections;

  • 非交互连接等待的时间 (单位s) 默认28800 = 8小时 如果线程空闲8小时,就会断开
    SELECT @@wait_timeout;

  • 查询当前服务器支持的存储引擎
    SHOW ENGINES;

  • 临时表空间

  • 创建临时表
    CREATE TEMPORARY TABLE temp_table (
    id INT,
    name VARCHAR(50)
    );

  • 查询临时表,不同事务查不到,事务关闭后自动删除
    SELECT * FROM temp_table;

  • 查询页大小,默认16KB
    SELECT @@innodb_page_size;

  • 默认行格式 默认为 dynamic
    SELECT @@innodb_default_row_format;

  • 更改默认行格式
    SET GLOBAL innodb_default_row_format=DYNAMIC;

  • 查询bufferPool 默认134217728字节 /1024/1024
    SELECT @@innodb_buffer_pool_size;

  • 设置bufferPool的大小
    SET GLOBAL innodb_buffer_pool_size=402653184;

  • 刷脏线程数

  • 默认是4 但是不能超过buffer-pool的实例数
    SELECT @@innodb_page_cleaners;

  • buffer-pool的实例数
    SELECT @@innodb_buffer_pool_instances;

  • 通过以下2个参数来控制我内存中的脏页量

  • 当脏页数量低于特定阈值时InnoDB存储引擎开始刷新脏页的行为,默认10
    SELECT @@innodb_max_dirty_pages_pct_lwm;

  • 内存中可以存在的脏页的最大百分比
    SELECT @@innodb_max_dirty_pages_pct;

  • 表示在空闲时刷新脏页的百分比默认100 将全部脏页刷新 越高 跟磁盘的IO越多,因为要刷新的脏页也会越多
    SELECT @@innodb_idle_flush_pct;

  • 双写缓存区

  • 双写,就是page页刷新到磁盘的时候,把这个page数据写到不同的地方去,当出现问题是,有备份来达到持久性跟数据的一致性。

  • 默认开启 会加强一致性,但是会影响一定的性能
    SELECT @@innodb_doublewrite;

  • 默认为2 至少2个备份
    SELECT @@innodb_doublewrite_files;

  • 双写磁盘的位置配置
    SELECT @@innodb_doublewrite_dir;
    SELECT @@innodb_data_home_dir;

  • 没有配置则用默认
    SELECT @@datadir;

  • 哪些操作需要用到bufferpool
    SELECT @@innodb_change_buffering;

  • changebuffer的空间大小

  • 默认是内存空间的25%
    SELECT @@innodb_change_buffer_max_size;

  • logbuffer大小 默认16M
    select @@innodb_log_buffer_size;

  • RedoLog同步方案默认设置为1
    SELECT @@innodb_flush_log_at_trx_commit;

  • 查询表占用内存
    select TABLE_NAME, concat(truncate(data_length/1024/1024,2),’ MB’)as data_size,
    concat(truncate(index_length/1024/1024,2),’ MB’) as index_size
    from information_schema.tables where
    TABLE_SCHEMA = ‘数据库名’ group by TABLE_NAME order by data_length desc;

  • 查看各个库的内存使用情况
    select ‘all’ as TABLE_SCHEMA ,
    truncate(sum(data_length)/1024/1024/1024,0) as data_size,
    truncate(sum(index_length)/1024/1024/1024,0) as index_size
    from information_schema.tables
    union all
    select TABLE_SCHEMA,
    truncate(sum(data_length)/1024/1024/1024,0) as data_size,
    truncate(sum(index_length)/1024/1024/1024,0) as index_size
    from information_schema.tables group by TABLE_SCHEMA order by data_size desc;

  • 释放空间的两种方案
    1、optimize table 数据库.表;
    2、alter table 数据库.表 ENGINE = ‘InnoDB’;


http://www.ppmy.cn/news/1524630.html

相关文章

探索 Logrus 日志框架:Go 语言的强大日志工具

在 Go 语言的生态系统中,日志记录是开发过程中不可或缺的一部分。Logrus 是一个流行的日志框架,它为 Go 应用程序提供了灵活且功能丰富的日志记录解决方案。本文将介绍 Logrus 的基本用法,包括如何配置日志格式、设置日志级别、以及如何添加自…

web杂项

1.$a!$b md5(a)md5(b):弱绕过问题 可以用科学技术法形式来进行绕过 s878926199a 0e545993274517709034328855841020 s155964671a 0e342768416822451524974117254469 s214587387a 0e848240448830537924465865611904 s214587387a 0e848240448830537924465865611904 s878926199a 0…

数据结构6—队列(附源码)

1.队列 1.1 概念与结构 概念:只允许在一端插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 入队列:进行插入操作的一端称为队尾 出队列:进行…

Spring中Bean的相关注解

目录 1.Spring IoC&DI 2.关于Bean存储的相关注解(类注解与方法注解) Bean的获取方式 类注解和方法注解的重命名 2.1 类注解 2.1.1 Controller 2.1.2 Service 2.1.3 Repository 2.1.4 Component 2.1.5 Configuration 2.2 方法注解-Bean 2.2.1 定义多个对象 2.2…

四七层如何获取客户端真实地址

7层代理会对报文进行重新封装,封装过程中可以通过增加XFF的header传递客户端IP。4层转发不会修改报文。在不修改HTTP报文前提下,前置补充代理信息, 格式: PROXY TCP 客户端IP 代理端IP 客户端端口 代理端端口。 nginx 七层代理配置: server …

求逆序对(平推)

题目描述 给定一个序列a1,a2,…,an&#xff0c;如果存在i<j并且ai>aj&#xff0c;那么我们称之为逆序对&#xff0c;求逆序对的数目。 输入 第一行&#xff0c;一个数 n&#xff0c;表示序列中有 n个数。 第二行 n 个数&#xff0c;表示给定的序列。序列中每个数字不…

Unexpected token ‘o‘, “[object Obj“... is not valid JSON 报错原因解释

在开发时使用到JSON.parse报错&#xff0c;不过第一次不会报错&#xff0c;解释一下原因&#xff1a; JSON.parse()用于从一个字符串中解析出json对象&#xff0c;举个例子&#xff1a; var str {"name":"Bom","age":"15"}JSON.par…

salesforce user 使用 dataloader.io 需要哪些权限

使用 dataloader.io 来处理 Salesforce 数据时&#xff0c;用户需要具备特定的权限&#xff0c;确保能够顺利进行数据导入、导出和更新操作。以下是所需的关键权限&#xff1a; 1. API 访问权限 “API Enabled” 权限&#xff1a;dataloader.io 依赖 Salesforce API 来与 Sal…

JVM面试真题总结(六)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 解释GC的标记-整理算法及其优点 GC&#xff08;垃圾收集&#xff…

WPF利用Path自定义画头部导航条(TOP)样式

1;新建两个多值转换器&#xff0c;都有用处&#xff0c;用来动态确定PATH的X,Y州坐标的。 EndPointConverter 该转换器主要用来动态确定X轴&#xff0c;和Y轴。用于画线条的。 internal class EndPointConverter : IMultiValueConverter {public object Convert(object[] val…

【视频教程】Python语言在地球科学领域中的实践技术应用

Python是功能强大、免费、开源&#xff0c;实现面向对象的编程语言&#xff0c;Python能够运行在Linux、Windows、Macintosh、AIX操作系统上及不同平台&#xff08;x86和arm&#xff09;&#xff0c;Python简洁的语法和对动态输入的支持&#xff0c;再加上解释性语言的本质&…

【C++】list(下)

个人主页~ list&#xff08;上&#xff09;~ list 四、模拟实现1、list.h&#xff08;1&#xff09;关于整个list的搭建①节点②迭代器③接口 &#xff08;2&#xff09;自定义类型实例化 2、test.cpp&#xff08;1&#xff09;test1&#xff08;2&#xff09;test2 五、额外小…

0906作业+思维导图梳理

一、作业&#xff1a; 1、创捷一个类似于qq登录的界面 1&#xff09;源代码 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//QPushbutton:登录、退出this-…

决策树(Decison Tree)—有监督学习方法、概率模型、生成模型、非线性模型、非参数化模型、批量学习

定义 ID3算法 输入&#xff1a;训练数据集&#xff08;T { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } \left\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\right\} {(x1​,y1​),(x2​,y2​),⋯,(xN​,yN​)}&#xff09;&#xff0c;特征集A阀值 ε \varepsilon ε 输…

日志框架log4j打印异常堆栈信息携带traceId,方便接口异常排查

一、异常堆栈无traceId 排查定位问题异常痛苦 在日常项目开发中&#xff0c;我们会自定义一个traceId方便&#xff0c;链路追踪。在log4j2.xml 我们可能是这样去配置日志打印格式。 <Console name"CONSOLE" target"SYSTEM_OUT"><PatternLayoutpa…

大腾智能出席龙华云创中心启动与鸿蒙园揭牌仪式

在数字化转型的浪潮中&#xff0c;深圳市龙华区再次引领行业创新&#xff0c;携手华为云成功举办“龙华工业软件云工程应用创新中心启动仪式暨鸿蒙产业园揭牌仪式”&#xff0c;本次盛会已于8月26日圆满落幕。活动现场&#xff0c;来自全国各地的行业精英、企业领袖及专家学者汇…

基于SpringBoot+Vue+MySQL的滑雪场管理系统

系统展示 用户前台界面 管理员后台界面 系统背景 在快速发展的冰雪运动热潮下&#xff0c;为了提升滑雪场的管理效率与顾客体验&#xff0c;我们设计并实现了一套基于SpringBoot后端框架、Vue前端框架以及MySQL数据库的滑雪场管理系统。该系统旨在通过数字化手段&#xff0c;优…

web框架

1. Web框架: 1.1Web框架定义&#xff1a; Web框架是一个用于构建Web应用程序的软件框架&#xff0c;它提供了一套完整的开发工具和库&#xff0c;以简化Web应用的开发过程。Web框架通常实现了HTTP协议、路由机制、模板渲染、数据验证、数据库操作等常用功能。 1.2Web框架与数…

苹果三款Mac新品十月登场:标配M4系列芯片

Mark Gurman爆料&#xff0c; 苹果将在10月推出14和16英寸MacBook Pro、Mac mini和iMac等设备&#xff0c;标配M4系列芯片。 据悉&#xff0c;苹果Mac新品搭载的M4芯片有两种版本&#xff0c;一种是10核CPU10核GPU&#xff0c;一种是8核CPU8核GPU。 值得注意的是&#xff0c;以…

如何将网络安全防范游戏化

组织对威胁的准备和恢复能力跟不上网络犯罪分子的进步。 一些首席执行官仍然认为网络安全需要偶尔干预&#xff0c;而不是持续关注。 但对于许多公司来说&#xff0c;情况并非如此&#xff1b;网络威胁准备需要协调一致的培训工作&#xff0c;因此网络安全团队在攻击发生时已…