news 2026/5/1 14:43:47

MySQL - 4 - mysqldump/mysqladmin/mysqlshow讲解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL - 4 - mysqldump/mysqladmin/mysqlshow讲解

大家好,这篇文章带来有关mysqldump, mysqladmin, mysqlshow这几个客户端程序的讲解,希望对你有所帮助。

mysqldump程序

作用

mysqldump 客户端程序可以执行逻辑备份并生成一组 SQL 语句,其中包含原始数据库和表的定义以及表中的数据,以便实现对数据库的简单备份或复制。mysqldump 命令除了生成.sql格式还可以生成 CSV 或 XML 格式的文件。

注意事项

  • 转储表时必须要有SELECT权限
  • 转储视图时必须要有SHOW VIEW权限
  • 转储触发器时必须要有TRIGGER权限
  • 未使用--single-transaction选项时,必须要有LOCK TABLES权限
  • 未使用--no-tablespaces选项时,必须要有PROCESS权限
  • 重新导入转储文件时,也需要具备对应的操作权限
  • 由于mysqldump是逐行转储数据,因此不适合大数据量的转储与导入

使用方法

mysqldump的使用方法通常有以下几种,可以转储一个或者多个表或数据库

mysqldump [options] db_name [tbl_name ... ]

mysqldump [options] --databases db_name ...

mysqldump [options] --all-databases

如果在db_name后没有指定任何表名,或者使用--databases 或 --all-databases选项,那么整个数据库都会被转储

常用选项

mysqldump有如下的常用选项,可以在使用的时候进行指定,也可以在选项文件中通过[mysqldump] 和 [client]组进行指定 :

选项说明
--add-drop-database

在每个create database语句之前添加

drop database语句

--add-drop-table

在每个create table语句之前添加

drop table语句

--add-drop-trigger

在每个create trigger语句之前添加

drop trigger语句

--add-locks用lock tables 和 unlock tables语句包裹锁定每个表的转储
--all-databases, -A转储所有数据库中的所有表
--databases, -B

--databases=db_name 多个数据库名用空格隔开

将参数解释成数据库名称并转储所有的表

--comments, -i添加注释到转储文件
--compact

紧凑格式输出

--ignore-table

--ignore-table=db_name.table_name 多个表用空格隔开,

不转储给定的表

--no-create-db,-n不要生成create database语句
--no-create-info, -t不要为每个转储的表生成create table语句
--no-data, -d不转储表内容
--tables

--tables=table_name 多个表用空格隔开

在选项之后的所有名称参数视为表名

--triggers转储每个表中的触发器
--xml, -X

以XML格式输出


官方查询地址:

MySQL :: MySQL 8.4 Reference Manual :: 6.5.4 mysqldump — A Database Backup Program

Example:

检查对应文件是可以看见我们对应添加参数是可以找到其中的变化的

mysqladmin程序

作用

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

使用方法

mysqladmin可以使用以下语法:

mysqladmin [options] command [command-arg] [command [command-arg]] ...

常用选项

mysqladmin的常用选项参考前面文章有写的公共部分,可以在命令行中指定,也可以在选项文件中指定[mysqladmin] 和 [client]组进行指定

支持的命令

语法中的command表示命令,有些命令后面需要跟上一个参数,如下列出了mysqladmin的常用命令:

1.version

显示来自服务器的版本信息,mysqladmin version -uroot -p

  • UptimeMySQL 服务器已运行的总秒数。

  • Threads当前活动线程(客户端连接)数量。

  • Questions服务器启动后,客户端累计执行的 SQL 查询请求总数。

  • Slow queries执行时长超过慢查询阈值的慢 SQL 总数。

  • Opens服务生命周期内,累计打开过的数据表总数量。

  • Flush tables已执行flushrefreshreload等刷新类命令的累计次数。

  • Open tables当前时刻正在打开的数据表数量。

2.create db_name

创建一个数据库名为db_name

3.drop db_name

删除名为db_name的数据库及其所有表

4.extended-status

显示服务器状态变量的值

5.flush-hosts

刷新主机缓存中的所有信息

6.flush-logs [log_type ...]

刷新所有日志。log_type 中可以提供以下一种或多种日志类型binary, engine, error, general, relay, slow, 多个类型之间用空格分隔

7.flush-privileges

重新加载授权表

8.flush-status

清楚状态变量

9.flush-tables

刷新所有表

10.flush-threads

刷新线程缓存

11.password new_password

设置新密码

如果密码有空格必须用双引号把密码包裹起来

password后可以省略新密码,mysqladmin会在之后提示输入新密码

password作为最后一个command时才可以省略密码值,否则下一个参数将作为密码被设置

12.ping

检查服务器是否可用

13.processlist

显示活动服务器线程的列表

默认MySQL服务器可以维护150个活动连接,如果不主动断开就会出现大量无效连接,就可以通过mysqladmin去查看下,kill 掉对应线程让睡眠时间长的连接释放掉

14.kill id, id, ...

终止服务器线程。如果给出多个线程ID值,则列表中不能有空格

15.reload

重新加载授权表

16.refresh

刷新所有表

17.shutdown

停止服务器

18.start-replica

在副本服务器上开始复制。MySQL 8.0.26及以后的版本使用此命令

19.start-slave

在副本服务器上开始复制。MySQL 8.0.26之前使用此命令

20.status

显示简短的服务器状态消息

21.stop-replica

停止副本服务器上的复制。MySQL 8.0.26及以后的版本使用此命令

22.stop-slave

停止副本服务器上的复制。MySQL 8.0.26之前使用此命令

23.variables

显示服务器系统变量及其值

官网地址:

MySQL :: MySQL 8.4 Reference Manual :: 6.5.2 mysqladmin — A MySQL Server Administration Program

mysqlshow

作用

mysqlshow客户端可用于快速查看存在哪些数据库、数据库中的表,以及表中的列或索引。

注意事项

mysqlshow为一些show语句提供了一个命令行接口。直接使用这些SQL语句也可以获得相同的信息

官网:MySQL :: MySQL 8.0 Reference Manual :: 6.5.7 mysqlshow — Display Database, Table, and Column Information

使用方法

mysqlshow可以使用以下方法:

mysqlshow [options] [db_name [tbl_name [col_name] ] ]

  • 支持使用通配符:*?%_
  • 如果未指定数据库,则显示所有数据库名称列表
  • 如果未指定表,则显示数据库中所有匹配的表
  • 如果未指定列,则显示表中所有匹配的列及列类型
  • 输出仅显示当前权限可访问的数据库、表或列名称

常用选项

mysqlshow 的常用选项和公共选项部分差不多,可以在命令行中指定。也可以在选项文件中通过[mysqlshow] 和 [client] 组进行指定,具体选项参考公共选项列表

结尾

希望大家能多多点赞 + 收藏 + 关注!博主更新ing...

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 14:39:28

RuoYi 中 Spring IOC/DI 与 Spring MVC 注解实战分析

一、Spring 环境启动(核心入口)RuoYi 的 Spring 全容器启动依靠以下代码:代码位置ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java作用说明:SpringBootApplication:开启 Spring Boot 自动配置、包扫描、Be…

作者头像 李华
网站建设 2026/5/1 14:39:28

3分钟掌握XGP存档提取:实现游戏进度无损迁移的终极指南

3分钟掌握XGP存档提取:实现游戏进度无损迁移的终极指南 【免费下载链接】XGP-save-extractor Python script to extract savefiles out of Xbox Game Pass for PC games 项目地址: https://gitcode.com/gh_mirrors/xg/XGP-save-extractor 你是否曾因Xbox Gam…

作者头像 李华
网站建设 2026/5/1 14:38:46

ViGEmBus内核驱动架构解析:Windows虚拟游戏控制器深度指南

ViGEmBus内核驱动架构解析:Windows虚拟游戏控制器深度指南 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus ViGEmBus是一款基于Windows内核模式驱…

作者头像 李华
网站建设 2026/5/1 14:37:23

基于MCP协议的AI智能体邮件自动化工具mcp-mail实战指南

1. 项目概述:一个为AI智能体打造的邮件操作工具箱最近在折腾AI智能体(Agent)的开发,发现一个挺普遍的需求:让智能体能够自动处理邮件。无论是自动回复客户咨询、整理会议纪要,,还是根据邮件内容…

作者头像 李华
网站建设 2026/5/1 14:36:58

零膨胀泊松回归怎么做:SPSSAU软件操作步骤与结果解读

一、零膨胀泊松回归所属模块零膨胀泊松回归在SPSSAU中属于【计量经济研究】模块。二、方法概述零膨胀泊松回归主要用于处理零值很多的计数型数据,尤其适合结果变量中“0”明显偏多的研究场景。它既能分析零值出现的可能性,也能分析非零计数部分的变化规律…

作者头像 李华
网站建设 2026/5/1 14:35:44

UE5多人游戏开发避坑:手把手教你用C++搞定Steam会话创建(附蓝图调用)

UE5多人游戏开发实战:C与Steam会话创建的深度解析 在虚幻引擎5的多人游戏开发中,会话管理是连接玩家的核心桥梁。许多开发者在初次接触Steam会话创建时,往往会被各种回调、委托和平台特定设置搞得晕头转向。本文将带你深入UE5的多人游戏会话系…

作者头像 李华