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/mysql/123.log’;

  • 为表,则保存在mysql.slow_log表中
    select * from 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_nameValuenote
Max_used_connections464自服务启动以来最大的连接数
Max_used_connections_time2024-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.mzph.cn/diannao/54050.shtml

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

相关文章

maya-vray渲染蒙版

要用一个叫vrayMulWrapper的材质球,把alpha Conterbution调到-1,勾选matte surface启用蒙版物体。

VLDB 超级大表上没有index 还需要gather statistics吗?

文档指明这个问题不属于DBA的问题,而是属于DW的问题,超大表的情况,statistics 要分析,而且不能留给夜晚的job去跑。 Do I need to gather statistics on an Oracle table that has no index? I have an Oracle 11g DB, and some of the tables are truncated and re-impo…

【GESP】C++一级练习BCQM3005,基本输出语句printf

一道基础练习题,练习基本输出语句printf。 BCQM3005 题目要求 描述 输出表达式1234∗5678的结果。 输入 无 输出 1234∗56787006652 输入样例 无 输出样例 1234 * 5678 7006652 全文详见个人独立博客:https://www.coderli.com/gesp-1-bcqm3005/ 【…

在树莓派上构建和部署 Node.js 项目

探索在Raspberry Pi上构建和部署Node.js项目的最佳实践。通过我们的专业提示和技巧,克服常见挑战,使您的项目顺利运行。 去年圣诞节,我收到了一份极其令人着迷的礼物,它占据了我许多周末的时间,甚至让我夜不能寐。它就…

零基础考过软考信息系统项目管理师经验分享

选择适合的课程:如果你是零基础,建议找一些专门针对新手的课程,讲解通俗易懂。 刷题至关重要:软考的题库很庞大,多做题是必须的。 做好笔记和复习:上课时要做好笔记,课后及时复习,…

网络安全学习(二)初识kali

kali有两种界面模式,为了更好的适应windows用户,需要操作一下。 先更新一下kali,执行命令 sudo apt-get update 然后换界面 sudo apt install kali-desktop-gnome 等待,出现如下界面时,选择gdm3(键盘&a…

Mybatis中Like模糊查询三种处理方式

目录 Mybatis中Like模糊查询三种处理方式 1.通过单引号拼接${} 1)mapper接口 2)Mapper.xml 3)测试代码 4) 测试结果 2.通过concat()函数拼接(个人推荐使用这种) 1)mapper接口 2)Mapper.xml 3)测试代码 4) 测…

jvm学习记录01

目录标题 jvm和java的体系结构架构模型jvm生命周期启动执行结束 hotspot jvm和java的体系结构 架构模型 1基于栈的指令集架构2基于寄存器的指令集架构 两者区别: 基于栈式架构的特点 设计和实现更简单,适用于资源受限的系统; 避开了寄存器的分配难题:…

Requests-HTML模块怎样安装和使用?

要安装和使用Requests-HTML模块,您可以按照以下步骤进行操作: 打开命令行界面(如Windows的命令提示符或Mac的终端)。 使用pip命令安装Requests-HTML模块。在命令行中输入以下命令并按回车键执行: pip install request…

工厂模式(一):简单工厂模式

一、概念 顾名思义,带着工厂,两字肯定就是有标准、快速、统一等等一些工厂独有的特点。 那么什么是简单工厂模式呢? 定义:简单工厂模式是一种创建对象的设计模式,它定义了一个工厂类通过某个静态方法来生成不同类型的…

熵权法详细讲解+Python代码实现

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

C#/.NET/.NET Core技术前沿周刊 | 第 5 期(2024年9.9-9.15)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。 欢迎投稿&…

油烟净化器选购指南:高效净化与优质服务并存的选择

我最近分析了餐饮市场的油烟净化器等产品报告,解决了餐饮业厨房油腻的难题,更加方便了在餐饮业和商业场所有需求的小伙伴们。 随着环保政策的不断强化和人们对健康生活环境的追求,油烟净化器已经成为餐饮行业和家庭厨房的必备设备。然而&am…

Docker安装mysql安装nginx安装Redis

Docker安装mysql 下载镜像 docker pull mysql:8.0注意,使用此方法安装镜像需要提前配置镜像源,详情看之前的文章 安装 docker run -d -p 3306:3306 \ --name mysql \ --restartalways \ --privilegedtrue \ -e TZAsia/Shanghai \ -e MYSQL_ROOT_PASSWORDroot \ mysql:8.0进…

[网络]https的概念及加密过程

文章目录 一. HTTPS二. https加密过程 一. HTTPS https本质上就是http的基础上增加了一个加密层, 抛开加密之后, 剩下的就是个http是一样的 s > SSL HTTPS HTTP SSL 这个过程, 涉及到密码学的几个核心概念 明文 要传输的真正意思是啥 2)密文 加密之后得到的数据 这个密文…

【南方科技大学】CS315 Computer Security 【Lab2 Buffer Overflow】

目录 引言软件要求启动虚拟机环境设置禁用地址空间布局随机化(ASLR)设置编译器标志以禁用安全功能 概述BOF.ctestShellCode.c解释 createBadfile.c 开始利用漏洞在堆栈上查找返回地址 实验2的作业 之前有写过一个 博客,大家可以先看看栈溢出…

【裸机装机系列】2.kali(ubuntu)-裸机安装kali并进行磁盘分区-2024.9最新

【前言】 2024年为什么弃用ubuntu,请参考我写的另一篇博文:为什么不用ubuntu,而选择基于debian的kali操作系统-2024.9最新 【镜像下载】 1、镜像下载地址 https://www.kali.org/get-kali/选择installer-image,进入界面下载相应的ISO文件 我…

【Android 13源码分析】WindowContainer窗口层级-2-构建流程

在安卓源码的设计中,将将屏幕分为了37层,不同的窗口将在不同的层级中显示。 对这一块的概念以及相关源码做了详细分析,整理出以下几篇。 【Android 13源码分析】WindowContainer窗口层级-1-初识窗口层级树 【Android 13源码分析】WindowCon…

学习整理vue前端框架项目目录结构的含义

学习整理vue前端框架项目目录结构的含义 1、目录结构2、结构含义 1、目录结构 2、结构含义

EasyExcel拿表头(二级表头)爬坑,invokeHeadMap方法

OK,不废话,直接开干!说实话是有些坑,或者是我不会用吧 模板如下: invokeHeadMap 这个方法其实针对第一行就是表头的完全没问题。针对第二行的,我DEBUG拿到的是这样很明显,他拿到了第一行;既然…