当前位置: 首页 > news >正文

MySQL程序介绍<二>

目录

mysqlcheck - 表维护程序

Mysqldump - 数据库备份程序

 mysqladmin - MySQL 服务器管理程序

mysqlshow - 显⽰数据库、表和列信息

mysqldumpslow - 总结慢查询⽇志⽂件 

​编辑 mysqlbinlog - 处理⼆进制⽇志⽂件

mysqlslap - 负载仿真客⼾端 

接着上篇继续介绍MySQL的一些重要程序MySQL程序介绍<一>

在命令⾏中使⽤MySQL发⾏版中的其他⼯具时,⼀些选项是公共的,⽐如⽤⼾名和密码,使⽤⽅法和mysql相同,在这⾥统⼀列出

mysqlcheck - 表维护程序

1.作用

mysqlcheck客⼾端⽤于执⾏表维护,可以对表进⾏:分析、检查、优化或修复操作。
分析的作⽤是查看表的关键字分布,能够让 sql ⽣成正确的执⾏计划(⽀持 InnoDB,MyISAM,NDB)
检查的作⽤是检查表的完整性以及数据库表和索引是否损坏(⽀持 InnoDB,MyISAM,
ARCHIVE,CSV)
优化的作⽤是回收空间、减少碎⽚、提⾼I/O(⽀持 InnoDB,MyISAM,ARCHIVE)
修复的作⽤是修复可能已经损坏的表(⽀持 MyISAM,ARCHIVE,CSV)

一些注意事项:

1.当使⽤mysqlcheck⼯具时,MySQL服务器必须在运⾏状态
2. 执⾏过程中相应的表将会被锁定,所以其他的操作将会被挂起
3. 并不是所有的存储引擎都⽀持以上四种操作,如果遇到不⽀持的引擎会报出相应的错误
4. 执⾏表修复操作之前对表进⾏备份,在某些情况下可能会导致数据丢失

2.使用方法

1.mysqlcheck [options] db_name [tbl_name ...]

2.mysqlcheck [options] --databases db_name ...
3.mysqlcheck [options] --all-databases
如果在 db_name 后没有指定任何表名,或者使⽤ --databases --all-databases
项,那么整个数据库都会被检查

3.常用选项

mysqlcheck有如下常⽤选项,可以在命令⾏中指定,也可以在选项⽂件中通过 [mysqlcheck] 和 [client] 组进⾏指定

举例:

4.mysqlcheck的特殊使⽤

Mysqldump - 数据库备份程序

1.作用

mysqldump客⼾端程序可以执⾏逻辑备份并⽣成⼀组SQL语句,其中包含原始数据库和表的定义 以及表中的数据,以便实现对数据库的简单备份或复制。mysqldump命令可以⽣成CSV、或XML格式的⽂件。

2.注意事项

1. 转储表时必须要有 SELECT 权限
2. 转储视图时必须要有 SHOW VIEW 权限
3. 转储触发器时必须要有 TRIGGER 权限
4. 如果没有使⽤ --single-transaction 选项时必须要有 LOCK TABLES 权限
5. 如果没有使⽤ --no-tablespaces 选项时必须要有 PROCESS 权限
6. 重新导⼊转储⽂件时,也需要有相应的权限
7. 由于mysqldump是逐⾏转储数据,所以不适⽤于⼤数据量的转储与导⼊

3.使用方法

 mysqldump的⽅法通常有以下使⽤,可以转储⼀个或多个表或数据库

mysqldump [options] db_name [ tbl_name ...]
mysqldump [options] --databases db_name ...
mysqldump [options] --all-databases
如果在 db_name 后没有指定任何表名,或者使⽤ --databases --all-databases
项,那么整个数据库都会被转储

4.常用选项

mysqldump有如下常⽤选项,可以在命令⾏中指定,也可以在选项⽂件中通过 [mysqldump]
[client] 组进⾏指定

 

 mysqladmin - MySQL 服务器管理程序

1.作用

mysqladmin 是⼀个执⾏管理操作的客⼾端。可以⽤来检查服务器的配置和当前状态,以及创建和删除数据库等(搭配使用的用户必须具有管理员权限)

2.使⽤⽅法
mysqladmin [options] command [command-arg] [command [command-arg]] ...

3.常⽤选项

mysqladmin 的常⽤选项参考公共选项部分,可以在命令⾏中指定,也可以在选项⽂件中通过
[mysqladmin] [client] 组进⾏指定
4.⽀持的命令
语法中的command 表⽰命令,有些命令后⾯需要跟上⼀个参数,下面是一些常用命令
1. version    显⽰来⾃服务器的版本信息
2. status      显⽰简短的服务器状态消息
3.create   db_name       创建⼀个数据库名为 db_name
4.drop db_name    删除名为 db_name 的数据库及其所有表
5. extended-status    显⽰服务器状态变量的值
6.flush-hosts          刷新主机缓存中的所有信息
7.flush-logs [ log_type ...]      刷新所有⽇志。 log_type 中可以提供以下⼀种或多种⽇志类型binary, engine, error, general, relay, slow,多个类型之间⽤空格分隔。
8.flush-privileges         重新加载授权表
9.flush-status       清除状态变量
10.flush-tables       刷新所有表
11.flush-threads         刷新线程缓存
12.password new_password      设置新密码。
如果密码中有空格必须⽤双引号把密码包裹起来
password 后可以省略新密码,mysqladmin会在之后提⽰输⼊新密码
password 做为最后⼀个command 时才可以省略密码值,否则下⼀个参数将作为密码被设
置。
13.ping          检查服务器是否可⽤
14.processlist         显⽰活动服务器线程的列表。
15. kill id , id ,...       终⽌服务器线程。如果给出了多个线程ID值,则列表中不能有空格
16.reload      重新加载授权表
17.refresh     刷新所有表。
18.shutdown       停⽌服务器
19.start-replica      在副本服务器上开始复制。MySQL 8.0.26及以后的版本使⽤此命令
20.start-slave       在副本服务器上开始复制。MySQL 8.0.26 之前使⽤此命令
21.stop-replica      停⽌副本服务器上的复制。MySQL 8.0.26及以后的版本使⽤此命令
22.stop-slave        停⽌副本服务器上的复制。MySQL 8.0.26 之前使⽤此命令
23.variables           显⽰服务器系统变量及其值

一些命令的举例:

mysqlshow - 显⽰数据库、表和列信息

1.使用

mysqlshow 客⼾端可⽤于快速查看存在哪些数据库、数据库中的表以及表中的列或索引。
2.注意事项
mysqlshow 为⼀些 SHOW 语句提供了⼀个命令⾏接⼝,详细可以参考文档: 直接使⽤这些SQL语句也可以获得相同的信息
3.常用选项
mysqlshow 的常⽤选项参考公共选项部分,可以在命令⾏中指定,也可以在选项⽂件中通过
[mysqlshow] [client] 组进⾏指定,具体选项参考公共选项列表
4.使⽤⽅法
mysqlshow [options] [db_name [tbl_name [col_name]]]
db_name tbl_name col_name 可以使⽤通配符 * ? % _
如果没有指定数据库,则显⽰所有数据库名称列表。
如果没有指定表,则显⽰数据库中所有匹配的表。
如果没有指定列,则显⽰表中所有匹配的列和列类型。
输出仅显⽰当前权限可以访问的数据库、表或列的名称

举例:

mysqldumpslow - 总结慢查询⽇志⽂件 

1.作用

在平时使⽤MySQL数据库时,经常进⾏查询操作,有些查询语句执⾏的时间⾮常⻓,当执⾏时间超过设定的阈值时,我们称这个查询为慢查询,慢查询的相关信息通常需要⽤⽇志记录下来称为慢查询⽇志, mysqldumpslow可以解析慢查询⽇志⽂件并汇总其内容(进行慢查询对应的SQL优化的依据)

2.注意事项

通常情况下,mysqldumpslow 会将相似的查询分组并显⽰摘要输出,⼀般会把数字和字符串⽤ N
"S" 代替,要想显⽰真实的值可以使⽤ -a 和 -n 选项
当sql语句查询超时时,对于查询条件一样的,就会用一个简单的标识把相同条件的多条sql语句记录为1条

3.使用方法

mysqldumpslow [options] [log_file ...]

 如:没有给出任何选项的输出

4.常⽤选项

 mysqlbinlog - 处理⼆进制⽇志⽂件

什么是⼆进制⽇志⽂件:
我们平时对数据库的修改,包括对数据的增删改,都会被描述成⼀个"事件",每个"事件"都会以⼆进制的形式记录在⼀个⽂件⾥,这个⽂件就是服务器的⼆进制⽇志⽂件,称为Binary Log或binlog
大概格式:
1.作用
mysqlbinlog 能够以⽂本格式显⽰⼆进制⽇志⽂件中的内容
2.注意事项
binlog的默认保存路径是数据⽬录:
Linux下默认⽬录:/var/lib/mysql
Windows下默认⽬录:C:\ProgramData\MySQL\MySQL Server 8.0\Data
binlog是以 .00000n 结尾命名的⽂件,n不断递增

 

3.使用方法

mysqlbinlog [options] log_file ...

 4.常用选项

mysqlbinlog 有如下常⽤选项,可以在命令⾏中指定,也可以在选项⽂件中通过 [mysqlbinlog]
[client] 组进⾏指定

mysqlslap - 负载仿真客⼾端 

1.作用

mysqlslap是⼀个诊断程序,⽤于模拟MySQL服务器的客⼾端负载,并报告每个阶段的时间,就好⽐多个客⼾端正在访问服务器⼀样
2.使用方法
mysqlslap [options]

3.注意事项

1. 可以通过 --create --query 选项,指定包含SQL语句的字符串或包含SQL语句的⽂件
2. 如果指定⼀个包含SQL语句的⽂件,默认情况下每⾏必须包含⼀条语句(也就是说,隐式语句分隔符是换⾏符)
3. 如果要把⼀条语句分为多⾏书写,可以使⽤ --delimiter 选项指定不同的分隔符
4. 不能在⽂件中包含注释,因为mysqlslap不能解析注释。
5. mysqlslap运⾏分为三个阶段:
a. 创建测试数据阶段:创建⽤于测试的库、表或数据,这个阶段使⽤单个客⼾端连接
b. 运⾏负载测试阶段,这个阶段可以使⽤许多客⼾端连接
c. 清理阶段:执⾏删除表,断开连接等操作,这个阶段使⽤单个客⼾端连接 

4.示例:

5 常⽤选项

mysqlslap 有如下常⽤选项,可以在命令⾏中指定,也可以在选项⽂件中通过 [mysqlslap]
[client] 组进⾏指定
对于选项可以参考官方文档

相关文章:

MySQL程序介绍<二>

目录 mysqlcheck - 表维护程序 Mysqldump - 数据库备份程序 mysqladmin - MySQL 服务器管理程序 mysqlshow - 显⽰数据库、表和列信息 mysqldumpslow - 总结慢查询⽇志⽂件 ​编辑 mysqlbinlog - 处理⼆进制⽇志⽂件 mysqlslap - 负载仿真客⼾端 接着上篇继续介绍MySQL…...

Java项目实战II基于Spring Boot的毕业就业信息管理系统设计与实现(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 随着高校扩…...

LeetCode 1343.大小为K且平均值大于等于阈值的子数组数目

题目&#xff1a; 给你一个整数数组 arr 和两个整数 k 和 threshold 。 请你返回长度为 k 且平均值大于等于 threshold 的子数组数目。 思路&#xff1a;定长滑动窗口 入 更新 出 代码&#xff1a; class Solution {public int numOfSubarrays(int[] arr, int k, int t…...

【电商项目】1分布式基础篇

1 项目简介 1.2 项目架构图 1.2.1 项目微服务架构图 1.2.2 微服务划分图 2 分布式基础概念 3 Linux系统环境搭建 查看网络IP和网关 linux网络环境配置 补充P123&#xff08;修改linux网络设置&开启root密码访问&#xff09; 设置主机名和hosts映射 主机名解析过程分析&…...

PHP嵌套函数

PHP嵌套函数&#xff08;Nested Functions&#xff09;在标准的PHP语法中并不直接支持&#xff0c;也就是说&#xff0c;你不能在一个函数内部直接定义另一个函数。然而&#xff0c;可以通过闭包&#xff08;Closures&#xff09;和匿名函数&#xff08;Anonymous Functions&am…...

外包干了2个月,技术明显退步

回望过去&#xff0c;我是一名普通的本科生&#xff0c;于2019年通过校招有幸加入了南京某知名软件公司。那时的我&#xff0c;满怀着对未来的憧憬和热情&#xff0c;投入到了功能测试的岗位中。日复一日&#xff0c;年复一年&#xff0c;转眼间&#xff0c;我已经在这个岗位上…...

kaptcha依赖maven无法拉取的问题

老依赖了&#xff0c;就是无法拉取&#xff0c;也不知道为什么&#xff0c;就是用maven一直拉去不成功&#xff0c;还以为是魔法的原因&#xff0c;试了好久发现不是&#xff0c;只好在百度寻求帮助了&#xff0c;好在寻找到了这位大佬的文章Maven - 解决无法安装 Kaptcha 依赖…...

48.旋转图像

秋招未止脚步不止&#xff0c;大厂&#xff0c;我一定要上大厂&#xff01; 题目链接 . - 力扣&#xff08;LeetCode&#xff09; 自己的思路 感觉好难&#xff0c;想不出来. 噫噫噫&#xff0c;我想着想着又想出来了。 //发现规律了&#xff0c;先左右对称&#xff0c; 再…...

每天5分钟玩转C#/.NET之goto跳转语句

前言 在我们日常工作中常用的C#跳转语句有break、continue、return&#xff0c;但是还有一个C#跳转语句很多同学可能都比较的陌生就是goto&#xff0c;今天大姚带大家一起来认识一下goto语句及其它的优缺点。 goto语句介绍 goto 语句由关键字 goto 后跟一个标签名称组成&…...

Java处理大数据小技巧:深入探讨与实践

引言 一、选择合适的数据结构 1. 使用高效的集合 2. 并发安全的数据结构 二、内存管理 1. JVM参数调优 2. 避免内存泄漏 三、并行计算与分布式处理 1. 利用Java并发API 2. 分布式框架 四、数据压缩与序列化 1. 数据压缩 2. 高效序列化 五、外部存储与缓存 1. NoS…...

我开源了Go语言连接数据库和一键生成结构体的包【实用】

项目地址&#xff1a;https://gitee.com/zht639/my_gopkg autosql autosql 是一个简化数据库使用的模块&#xff0c;支持常见的数据库&#xff08;MySQL、PostgreSQL、SQLite、SQL Server&#xff09;。该模块不仅提供了数据库连接函数&#xff0c;还能自动生成数据表对应的结…...

Sentinel 快速入门

前置推荐阅读:Sentinel 介绍-CSDN博客 前置推荐阅读&#xff1a;Nacos快速入门-CSDN博客 快速开始 欢迎来到 Sentinel 的世界&#xff01;这篇新手指南将指引您快速入门 Sentinel。 Sentinel 的使用可以分为两个部分: 核心库&#xff08;Java 客户端&#xff09;&#xff1a…...

基于SpringBoot健康生活助手微信小程序【附源码】

基于SpringBoot健康生活助手微信小程序 效果如下&#xff1a; 管理员登录界面 管理员主界面 用户管理界面 健康记录管理界面 健康目标管理界面 微信小程序首页界面 活动信息界面 留言反馈界面 研究背景 近年来&#xff0c;由于计算机技术和互联网技术的飞速发展&#xff0c;…...

功能安全实战系列-软件FEMA分析与组件鉴定

本文框架 前言1. 功能安全分析1.1 Why1.2 What?1.3 How?1.3.1 分析范围确定1.3.2 失效模式分析1.3.3 安全措施制定1.3.4 确认是否满足功能安全目标2. 软件组件鉴定2.1 Why2.2 How?前言 在本系列笔者将结合工作中对功能安全实战部分的开发经验进一步介绍常用,包括Memory(Fl…...

【数据结构与算法】链表(上)

记录自己所学&#xff0c;无详细讲解 无头单链表实现 1.项目目录文件 2.头文件 Slist.h #include <stdio.h> #include <assert.h> #include <stdlib.h> struct Slist {int data;struct Slist* next; }; typedef struct Slist Slist; //初始化 void SlistI…...

svn-拉取与更新代码

右键项目文件 进行更新与提交代码&#xff0c;提交代码选择更改的文件以及填写commit...

【C++ 算法进阶】算法提升四

数组查询问题 &#xff08;数组优化&#xff09; 题目 数组为 {3 &#xff0c; 2&#xff0c; 2 &#xff0c;3 &#xff0c;1} 查询为&#xff08;0 &#xff0c;3 &#xff0c;2&#xff09; 这个查询的意义是 在数组下标0~3这个范围上 有多少个2 &#xff08;答案为2&…...

多种方式实现安全帽佩戴检测

为什么要佩戴安全帽 在探讨安全帽佩戴检测之前&#xff0c;我们先来了解下安全帽佩戴的必要性&#xff1a; 保护头部免受外力伤害 防止物体打击 在建筑施工、矿山开采、工厂车间等场所&#xff0c;经常会有高空坠物的风险。例如在建筑工地上&#xff0c;可能会有工具、材料、…...

基于PHP+MySQL+Vue的网上订餐系统

摘要 本文介绍了一个基于PHPMySQLVue技术的网上订餐系统。该系统旨在为用户提供便捷的在线订餐服务&#xff0c;同时提高餐厅的运营效率。系统后端采用PHP语言开发&#xff0c;利用MySQL数据库进行数据存储与管理&#xff0c;实现了用户注册登录、菜品浏览、购物车管理、订单提…...

Vue学习笔记 Class绑定 Style绑定 侦听器 表单输入绑定 模板引用 组件组成 组件嵌套关系

文章目录 Class绑定绑定对象绑定数组注意事项 style绑定绑定对象代码效果展示 绑定数组 侦听器注意的点代码效果 表单输入绑定示例代码效果展示 修饰符.lazy.number.trim 模板引用组件组成组件组成结构引入组件步骤style中的scoped作用 组件嵌套关系 Class绑定 绑定对象 绑定数…...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合

在汽车智能化的汹涌浪潮中&#xff0c;车辆不再仅仅是传统的交通工具&#xff0c;而是逐步演变为高度智能的移动终端。这一转变的核心支撑&#xff0c;来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒&#xff08;T-Box&#xff09;方案&#xff1a;NXP S32K146 与…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...