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的格式进行输出

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

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

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

相关文章

Linux系统编程(七)网络编程TCP、UDP

本文目录 一、基础知识点1. IP地址2. 端口3. 域名4. 网络协议类型5. IP协议类型6. 字节序7. socket套接字 二、TCP 常用API1. socket套接字描述符2. bind套接字绑定3. listen设置最大排队数4. accept接收客户端请求5. connect连接服务端6. read读取数据7. write发送数据 三、UD…

240.搜索二维矩阵

题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1: 输入:matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,…

【AI大模型】基于Langchain和Openai借口实现英文翻译中文应用

🚀 作者 :“大数据小禅” 🚀 文章简介 :本专栏后续将持续更新大模型相关文章,从开发到微调到应用,需要下载好的模型包可私。 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 目…

CSPM.pdf

PDF转图片 归档:

C盘清理攻略!!!详细步骤

c盘爆满怎么清,往下看 一、清缓存文件键盘winr打开运行窗口,输入:%temp% 二、清理安装包文件键盘winr打开运行窗口,输入:softwaredistribution 三、清理软件解压临时文件键盘winr打开运行窗口,输入&#xf…

【C语言】结构体(及位段)

你好!感谢支持孔乙己的新作,本文就结构体与大家分析我的思路。 希望能大佬们多多纠正及支持 !!! 个人主页:爱摸鱼的孔乙己-CSDN博客 欢迎 互粉哦🙈🙈! 目录 1. 声明结构…

SQL注入-时间盲注

SQL时间盲注(Time-based Blind SQL Injection),又叫延时注入,是一种SQL注入攻击技术,用于在无法直接获取查询结果或查看响应内容变化的情况下,通过引入时间延迟来推断数据库的信息;时间盲注依赖…

tinyrenderer-切线空间法线贴图

法线贴图 法线贴图分两种,一种是模型空间中的,一种是切线空间中的 模型空间中的法线贴图的rgb代表着每个渲染像素法线的xyz,与顶点坐标处于一个空间,图片是五颜六色的。 切线空间中的法线贴图的rgb同样对应xyz,是切线…

可视化数据科学平台在信贷领域应用系列四:决策树策略挖掘

信贷行业的风控策略挖掘是一个综合过程,需要综合考虑风控规则分析结果、效果评估、线上实时监测和业务管理需求等多个方面,以发现和制定有效的信贷风险管理策略。这些策略可能涉及贷款审批标准的调整、贷款利率的制定、贷款额度的设定等,在贷…

低代码开发平台一般都有哪些功能和模块?

在当今快速变化的数字化时代,企业对于高效、灵活且经济的软件开发解决方案的需求愈发迫切。低代码开发平台应运而生,成为众多企业实现数字化转型的首选工具。本文将详细探讨低代码开发平台一般具备的主要功能和模块,以及它们如何助力企业提升…

Dinky MySQLCDC 整库同步到 Doris

资源:flink 1.17.0、dinky 1.0.2、doris-2.0.1-rc04 问题:Cannot deserialize value of type int from String ,detailMessageunknowndatabases ,not a valid int value 2024-05-29 16:52:20.136 ERROR org.apache.doris.flink.…

AI论文工具推荐

AI 在学术界的使用情况也比较疯狂,特别是一些美国大学,用 AI 来辅助阅读文献以及辅助写论文的越来越多,毕竟确实可以提高写作效率,特别是在文献综述和初稿生成方面。 但在科研界其实,发现看论文的速度已经赶不上发论文…

领夹麦克风什么牌子好?2024无线领夹麦克风十大品牌排行榜推荐

​如今,无线麦克风已逐渐渗透到我们日常生活的各个角落,无论是专业的自媒体创作者、带货主播,还是日常拍摄记录生活的我们,都可能用到它。在挑选无线麦克风时,收音降噪效果和性价比无疑是两大核心考量因素。为此&#…

【wiki知识库】05.分类管理实现--前端Vue模块

📝个人主页:哈__ 期待您的关注 目录 一、🔥今日目标 二、🌏前端部分的改造 2.1 新增一个tool.ts 2.2 新增admin-categoty.vue 2.3 添加新的路由规则 2.4 添加the-welcome.vue 2.5 修改HomeView.vue 三、❗注意 一、&…

The authenticity of host ‘github.com (20.205.243.166)‘ can‘t be established.

目录 github初始化仓库,无法链接 解决无法与主机github.com(20.205.243.166)建立真实性 # 问题原因 # 生成密钥 # 物理路径 # 建立交互 # 验证 github初始化仓库,无法链接 在github创建一个新的仓库时,如果我们未初始化,…

面试题vue+uniapp(个人理解-面试口头答述)未编辑完整....

1.vue2和vue3的区别(vue3与vue2的区别(你不知道细节全在这)_vue2和vue3区别-CSDN博客)参考 Vue3 在组合式(Composition )API,中使用生命周期钩子时需要先引入,而 Vue2 在选项API&am…

操作失败——后端

控制台观察,页面发送的保存菜品的请求 返回的response显示: ---------- 我开始查看明明感觉都挺正常,没啥错误,就是查不出来。结果后面电脑关机重启后,隔一天看,就突然可以了。我觉着可能是浏览器的缓存没…

2022.9.26DAY678

课程学习:《数据处理技术》讲了“数据查询”的语法格式,语法格式也算是简单,就是没能跟之前的内容联系起来,之前的内容没有及时回顾。 高等数学:“ 函数的概念”,讲了函数的概念,反函数&#…

登录通用解决方案 —— 第三方登录处理

目录 01: 前言 02: 第三方平台登录解决方案流程大解析 03: QQ 开放平台流程大解析 04: QQ 登录对接流程:获取 QQ 用户信息 05: QQ 登录对接流程:跨页面信息传输 06: QQ 登录对接流程:认证是否已注册,完成 QQ …

今日科普:了解、预防、控制高血压

高血压,常被称为“隐形的健康威胁”,许多患者可能在毫无预警的情况下发病,且患病率逐年攀升,同时患者群体逐渐年轻化,高血压虽然难以根治,但并不可怕,真正可怕的是血压长期居高不下,…