MySQL数据库常见工具的基础使用_1

在上一篇文章中提到了对MySQL数据库进行操作的一些常见工具 

mysqlcheck

mysqlcheck是一个用于数据库表的检查,修复,分析和优化的一个客户端程序

  • 分析的作用是查看表的关键字分布,能够让sql生成正确的执行计划(支持InnoDB,MyISAM,NDB)
  • 检查的作用是检查表的完整性以及数据库表和索引是否损坏(支持InnoDB,MyISAM,ARCHIVE,CSV)
  • 优化的作用是回收空间,减少碎片,提高I/O性能(支持InnoDB,MyISAM,ARCHIVE)
  • 修复的作用是修复可能已经损坏的表(支持MyISAM,ARCHIVE,CSV)

使用过程中注意事项

  • 使用过程中mysql服务器必须处于运行状态
  • 执行过程中相应的表将会被锁定,所以其他的操作将被挂起
  • 并不是所有的存储引擎都支持以上四种操作,如果遇到不支持的引擎会报出相应错误
  • 执行表修复操作之前对表进行备份,在某些情况下可能会导致数据丢失

使用方式

mysqlcheck [options] 数据库名 [表名]

要是不指定表名 ,数据库中的所有表都会进行检查 
通常情况下 mysqlcheck会有如下的一些选项

mysqlcheck基本选项

  • 选项                                            说明
  • --analyze  -a                               分析表
  • --auto-repair                               如果检查的表有损坏,则自动修复它,所有表都检查过之后才进行必要的修复
  • --check   -c                                  仅检查自上次检查以来更改过的表
  • --databases,-B                          --databases 数据库名 多个数据库名用空格进行分割,处理指定数据库中的所有表
  • --force, -f                                     即使SQL错误也要继续
  • --optimize,  -o                              优化表
  • --repair, -r                                    执行可能进行的任务修复操作,除了唯一键
  • --skip-database                           --skip-database=数据库名       不需要执行检查的数据库名
  • --tables                                        --tables=表名  多个表名用空格隔开   在选项之后的所有名称参数都被视为表名
  • --use-frm                                      对于MyISAM表的修复操作 

上述指令中如果我们要对InnoDB存储引擎进行表的修复repair是不支持进行修复的,此时我们可以先把InnoDB存储引擎转化为MyISAM(这些存储引擎后期的文章中会详细提到的)。

第一个指令分析表的使用  后面的指令可以自己下去试一试

mysqlcheck的特殊使用 

mysqlcheck程序的默认功能是对数据表进行检查操作(相当于指定选项--check) 如果想对表进行修复操作,可以通过复制原来的mysqlcheck程序,并重命名为mysqlrepair,直接运行即可,还可以通过把mysqlcheck的快捷方式重命名为mysqlrepair然后直接运行就可以了

  • mysqlrepair              默认是修复  相当于选项--repair
  • mysqlanalyze           默认是修复  相当于选项--analyze
  • mysqloptimize          默认是修复  相当于选项--optimize 

 mysqldump

mysqldump是一个数据库备份的工具 他可以执行逻辑备份并生成一组sql语句,其中包含了原始数据库和表的定义以及表中的数据,以便实现对数据库的简单备份或复制,他可以生成CSV,XML格式的文件

mysqldump使用时注意事项

  • 转储表时必须有select权限
  • 转储视图时必须要有show view权限
  • 转储触发器时必须要有trigger权限
  • 如果没有使用--single-transaction选项时必须要有lock tables权限
  • 如果没有实现--no-tablespaces选项时必须要有process权限
  • 重新导入转储文件时,也需要有相应的权限
  • 由于mysqldump是逐行转储数据,所以不适合大数据量的转储与导入

使用方式

mysqldump [options] 数据库名 表名

可以转储一个或多个表或者数据库

mysqldump常用选项

  • 选项                                                     说明
  •  --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                                  将参数解释为数据库名称并转储所有的表
  • --comments,-i                                    添加注释到转储文件
  • --compact                                            紧凑格式输出
  • --compatible=ansi                               生成与其他数据库或旧MYsql服务器更兼容的输出
  • --complete-insert,-c                          使用包含列名的完整insert语句
  • --events,-E                                       从转储数据库中转储事件
  • --extended-insert,-e                          使用多行insert语法
  • --flush-logs,-F                                   在开始转储前刷新日志
  • --flush-privileges                                  在转储后刷新权限
  • --force,-f                                             转储期间发生了sql错误也要继续
  • --hex-blob                                               使用十六进制表示法转储二进制序列
  • --no-data,-d                                         转储过程中不转储表的内容
  • --xml,-X                                               以xml的格式进行输出

太多了这里罗列了一些常见的,有需要的话可以去官方文档读一读

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

BGP基础配置实验

接下来R1,R2就可以通过三次握手建立TCP会话 然后建立R2,R4邻居 对R5和R4 然后拿4ping5 但是在4,5之间不能跑别的协议,然后要直接告知才可以 再ping通了建立邻居 用环回建邻居要改一下原 然后在建立的时候要把R4TTL值改成2&#xf…

机器学习:更多关于元学习

目录 Meta Learning vs Self-supervised Learning 自监督学习——找初始化的参数MAML 自动学出合适的参数 MAML:不断的学初始化参数MAML的初始化参数来自BERT MAML:找出来的初始化参数能在训练任务上表现的很好BERT:自监督目标是不同的下游任…

门外汉一次过软考中级(系统集成项目管理工程师)秘笈,请收藏!

24上软考考试已经结束,24下软考备考又要开启了!今年软考发生了改革,很多考试由一年考两次变成了一年考一次,比如高级信息系统项目管理师,比如中级系统集成项目管理工程师,这两科是高、中级里相对简单&#…

GLM-4-9B性能究竟如何?

GLM-4-9B 开源系列模型 前言 自 2023 年 3 月 14 日 ChatGLM-6B 开源以来,GLM 系列模型受到广泛认可。特别是在 ChatGLM3-6B 开源后,针对让小模型能够拥有更为强大的能力这一目标,GLM 技术团队展开了诸多的探索性工作。历经将近半年的探索历程…

springboot 打成jar部署到Linux环境后读取resources下面的文件

方法代码: ClassLoader loader Thread.currentThread().getContextClassLoader();InputStream flagInputStream loader.getResourceAsStream("static/imagesLogo/imageaaa.png");BufferedImage read;read ImageIO.read(flagInputStream);System.out.pr…

Git权限管理

Git权限管理 简介:大家好,我是程序员枫哥,🌟一线互联网的IT民工、📝资深面试官、🌹Java跳槽网创始人。拥有多年一线研发经验,曾就职过科大讯飞、美团网、平安等公司。在上海有自己小伙伴组建的副…

空调外机清洁机器人设计

现在的空调,有很多安装在高层,一旦安装使用后,外机几乎不可能再清洗。因为费用高,清洁工人的钱应该是好几百还不止;清洁风险高,空调师傅需要高空作业,如果发生意外业主难以承担。但空调运行几年…

I.MX6ULL 串口格式化函数移植实验

系列文章目录 I.MX6ULL高精度延时实验 I.MX6ULL高精度延时实验 系列文章目录一、前言二、串口格式化函数简介三、硬件原理分析四、实验程序编写五、编译下载验证 一、前言 上一节实验实现了 UART1 基本的数据收发功能,虽然可以用来调试程序,但是功能太单…

低功耗,低噪声 CMOS 轨到轨输入输出运算放大器

产品简述 MS6001/2/4 运算放大器具有极低功耗,轨到轨输入输出,低 的输入电压和低的电流噪声。具体表现在可工作在幅度为 1.8V 到 5V 的单电源或者双电源条件,低功耗和低噪声使得 MS6001/2/4 能够用在可移动设备上,输入输…

TransGNN:Transformer和GNN能互相帮助吗?

前言 本文将从模型背景、模型介绍、模型应用三个方面,带您一文搞懂TransGNN:Transformer和GNN能互相帮助吗? 模型背景 图神经网络(GNN)和Transformer模型各自以其独特的优势在处理复杂数据和捕捉序列依赖关系上取得…

DNS解析与Bond

一、DNS 1、DNS概念 DNS是域名系统的简称:域名和ip地址之间的映射关系互联网中IP地址是通信的唯一标识,逻辑地址访问网站,有域名,ip地址不好记,域名朗朗上口,好记。 域名解析的目的:实现访问…

QT+FFmpeg+Windows开发环境搭建(加薪点)

01、Windows 环境搭建 FFMPEG官网:http://ffmpeg.org/ 02、下载4.2.1版本源码 源码:https://ffmpeg.org/releases/ffmpeg-4.2.1.tar.bz2 03、下载4.2.1编译好的文件 下载已经编译好的FFMPEG)(迅雷下载很快) 网址:https://ffmpeg.zeranoe.com/builds/ 32位下载地址:(迅雷…

欧洲历史的五个阶段

欧洲的历史基本上都是分裂的,大致可以分为五个时期,分别为古希腊时代、罗马帝国时代、中世纪时代,文艺复兴时代、工业革命时代。 一,古希腊时代 古希腊是西方文明的源头,也是最重要和最直接的文明起源,首…

dirfuzz-web敏感目录文件扫描工具

dirfuzz介绍 dirfuzz是一款基于Python3的敏感目录文件扫描工具,借鉴了dirsearch的思路,扬长避短。在根据自身实战经验的基础上而编写的一款工具,经过断断续续几个月的测试、修改和完善。 项目地址:https://github.com/ssrc-c/di…

手写mybatis-预编译sql语句

sql表 mybatis数据库中的gxa_user表 /*Navicat Premium Data TransferSource Server : rootSource Server Type : MySQLSource Server Version : 80028Source Host : localhost:3306Source Schema : mybatisTarget Server Type : MySQLTarget…

【源码】Spring Data JPA原理解析之事务注册原理

Spring Data JPA系列 1、SpringBoot集成JPA及基本使用 2、Spring Data JPA Criteria查询、部分字段查询 3、Spring Data JPA数据批量插入、批量更新真的用对了吗 4、Spring Data JPA的一对一、LazyInitializationException异常、一对多、多对多操作 5、Spring Data JPA自定…

重学java 65.IO流 缓冲流

I am not afraid tomorrow for I have seen yesterday and love today —— 24.6.5 一、字节缓冲流 1.字节缓冲流的意义 之前所写的FileOutputstream、FileInputstream、FileReader、Filewriter这都叫做基本流,其中FileInputstream和FieOutputstream的读写方法都是本地方法(方…

python字符串的进阶

在上一篇文章的 密码破解器 中,我们回顾了循环专题的知识点。 while 循环和 for 循环是 Python 中的两大循环语句,它们都可以实现循环的功能,但在具体使用时略有差别。当循环次数不确定时,我们选用 while 循环;当循环…

C#操作MySQL从入门到精通(10)——对查询数据进行通配符过滤

前言 我们有时候需要查询数据,并且这个数据包含某个字符串,这时候我们再使用where就无法实现了,所以mysql中提供了一种模糊查询机制,通过Like关键字来实现,下面进行详细介绍: 本次查询的表中数据如下: 1、使用(%)通配符 %通配符的作用是,表示任意字符出现任意次数…

DP读书:《ModelArts人工智能应用开发指南》(一)人工智能技术、应用平台

怎么用ModelArts人工智能应用 训练底座训练案例 盘古矿山模型Main config.py 训练底座 训练案例 盘古矿山模型 Main 下面是快速助手 https://support.huaweicloud.com/qs-modelarts/modelarts_06_0006.html 准备开发环境 在ModelArts控制台的“ 开发环境 > Notebook”页面…