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的格式进行输出
太多了这里罗列了一些常见的,有需要的话可以去官方文档读一读
相关文章:
MySQL数据库常见工具的基础使用_1
在上一篇文章中提到了对MySQL数据库进行操作的一些常见工具 mysqlcheck mysqlcheck是一个用于数据库表的检查,修复,分析和优化的一个客户端程序 分析的作用是查看表的关键字分布,能够让sql生成正确的执行计划(支持InnoDB,MyISAM,NDB)检查的作用是检查…...
C语言中指针的说明
什么是指针? 在C语言当中,我们可以将指针理解为内存当中存储的地址,就像生活当中,一个小区里面,在小区里面有很单元,每一栋单元,单元内的房间有着不同的房间号,我们可以同过几栋几单…...
webrtc vp8/9视频编解码介绍
文章目录 一、libvpx项目介绍libvpx基本概念编码器使用流程解码器使用流程示例代码:官方文档和资源二、VP8/9在WebRTC中的应用2.1 VP82.2 VP92.3如何选择哪种编码方式2.4 vp9编码的主要步骤2.5 vp9解码C++代码示例注意事项三、webrtc在音视频传输中是怎样选择vp8还是vp9<...
【机器学习300问】107、自然语言处理(NLP)领域有哪些子任务?
自然语言处理(NLP)是计算机科学、人工智能和语言学领域的一个交叉学科,致力于让计算机能够理解、解析、生成和与人类的自然语言进行互动。自然语言指的是人们日常交流使用的语言,如英语、汉语等,与计算机编程语言相对。…...
面试被问准备多久要孩子?这样回答
听说有人面试被问到多久要孩子的问题,当时觉得很尴尬,不知如何回答,怕回答的不好不被录用,其实你可以这样回答,让面试官心满意足。 A 面试官:结婚了吗? 我:结婚了 面试官࿱…...
HCIP-Datacom-ARST自选题库__多种协议简答【11道题】
1.BGP/MPLSIP VPN的典型组网场景如图所示,PE1和PE2通过LoopbackO建立MP-IBGP,PE1和PE2之间只传递VPN路由,其中PE1BGP进程的部分配置已在图中标出,则编号为0的命令不是必须的。(填写阿拉伯数字) 3 2.在如图所示的Hub&Spok…...
C# 泛型函数
1.非约束 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace MyGeneirc {public class GeneircMethod{/// <summary>/// 泛型方法解决,一个方法,满足不同参数类型…...
C# Onnx E2Pose人体关键点检测
C# Onnx E2Pose人体关键点检测 目录 效果 模型信息 项目 代码 下载 效果 模型信息 Inputs ------------------------- name:inputimg tensor:Float[1, 3, 512, 512] --------------------------------------------------------------- Outputs ---…...
YOLO10:手把手安装教程与使用说明
目录 前言一、YOLO10检测模型二、YOLO安装过程1.新建conda的环境 yolo10安装依赖包测试 总结 前言 v9还没整明白,v10又来了。而且还是打败天下无敌手的存在,连最近很火的RT-DETR都被打败了。那么,笑傲目标检测之林的v10又能持续多久呢&#…...
EasyRecovery2024永久免费crack激活码注册码
在数字化时代,数据已经成为我们生活和工作中不可或缺的一部分。无论是个人用户还是企业用户,都面临着数据丢失的风险。一旦数据丢失,可能会给我们的工作带来极大的不便,甚至可能对企业造成重大损失。因此,数据安全和恢…...
Linux Centos内网环境中安装mysql5.7详细安装过程
一、下载安装包 下载地址(可下载历史版本): https://downloads.mysql.com/archives/community 二、解压到安装路径 tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz三、重命名 mv /usr/local/mysql-5.7.20-linux-glibc2.12-x86_64 …...
新字符设备驱动实验学习
register_chrdev 和 unregister_chrdev 这两个函数是老版本驱动使用的函数,现在新的字符设备驱动已经不再使用这两个函数,而是使用Linux内核推荐的新字符设备驱动API函数。新字符设别驱动API函数在驱动模块加载的时候自动创建设备节点文件。 分配和释放…...
篇1:Mapbox Style Specification
目录 引言 地图创建与样式加载 Spec Reference Root sources type:vector矢量瓦片...
实时监控与报警:人员跌倒检测算法的实践
在全球范围内,跌倒事件对老年人和儿童的健康与安全构成了重大威胁。据统计,跌倒是老年人意外伤害和死亡的主要原因之一。开发人员跌倒检测算法的目的是通过技术手段及时发现和响应跌倒事件,减少因延迟救助而造成的严重后果。这不仅对老年人群…...
LeetCode25_K个一组翻转链表
. - 力扣(LeetCode) 一、题目描述 二、过程模拟 1. 第一步 2. 第二步:子链表分组 3. 第三步:断开前后两组 4. 第四步:翻转start到end的部分 5. 第五步:连接翻转好的前半部分和未翻转的后半部分ÿ…...
电脑突然提示:“failed to load steamui.dll”是什么情况?分享几种解决steamui.dll丢失的方法
相信有一些用户正在面临一个叫做“failed to load steamui.dll”的问题,这种情况多半发生在试图运行某个程序时,系统会提示一条错误消息:“failed to load steamui.dll”。那么,为何steamui.dll文件会丢失,又应该如何解…...
【vue实战项目】通用管理系统:作业列表
目录 目录 1.前言 2.后端API 3.前端API 4.组件 5.分页 6.封装组件 1.前言 本文是博主前端Vue实战系列中的一篇文章,本系列将会带大家一起从0开始一步步完整的做完一个小项目,让你找到Vue实战的技巧和感觉。 专栏地址: https://blog…...
Scikit-Learn随机森林回归
Scikit-Learn随机森林回归 1、随机森林1.1、集成学习1.2、Bagging方法1.3、随机森林算法1.4、随机森林的优缺点2、Scikit-Learn随机森林回归2.1、Scikit-Learn随机森林回归API2.2、随机森林回归实践(加州房价预测)1、随机森林 随机森林是一种由决策树构成的集成算法,它在大多…...
Vue Router 教程
Vue Router 是 Vue.js 的官方路由管理器,它提供了一种方便的方式来管理应用的路由。在本教程中,我们将介绍 Vue Router 的一些常见用法和示例。 一、安装 Vue Router 使用 Vue Router 之前,需要先安装它。可以使用以下命令通过 npm 安装&am…...
【数据库】SQL--DQL(初阶)
文章目录 DCL1. 基本介绍2. 语法2.1 基础查询2.2 条件查询2.3 聚合函数2.4 聚合查询2.5 分组查询2.6 排序查询2.7 分页查询2.8 综合案例练习2.9 执行顺序 3. DQL总结 DCL 更多数据库MySQL系统内容就在以下专栏: 专栏链接:数据库MySQL 1. 基本介绍 DQL英…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
