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

MySQL bin目录下的可执行文件

文章目录

  • MySQL bin目录下的可执行文件
    • 1.mysqldump
    • 2.mysqladmin
    • 3.mysqlcheck
    • 4.mysqlimport
    • 5.mysqlshow
    • 6.mysqlbinlog
    • 7.常用可执行文件

MySQL bin目录下的可执行文件

image-20250430103537400

1.mysqldump

mysqldump 是 MySQL 的数据库备份工具。对数据备份、迁移或恢复非常重要。

  • 备份整个数据库:
mysqldump -u [username] -p[password] [database_name] > [filename].sql

image-20250430105317192

  • 备份指定的表,比如备份 mysql 数据库的 user 表:
mysqldump -u root -p mysql user > mysql_user_back.sql

image-20250430110037491

  • 备份多个数据库。使用 --databases 参数,后面跟上要备份的数据库名,中间用空格隔开。备份所有数据库,可以使用 --all-databases 参数。
mysqldump -uroot -p --databases database1 database2 > test.sql

2.mysqladmin

mysqladmin 是 MySQL 的管理工具,可以执行一些管理操作,比如创建数据库、删除数据库、查看 MySQL 服务器的状态等。通常在自动化脚本中使用。

  • 查看 MySQL 服务器的状态:
mysqladmin -uroot -p status

image-20250430111404931

  • 重新加载授权表:
mysqladmin -uroot -p flush-privileges
mysqladmin -uroot -p reload
  • 刷新日志文件:
mysqladmin -uroot -p flush-logs
  • 创建数据库:
mysqladmin -uroot -p create test
  • 删除数据库:
mysqladmin -uroot -p drop test

3.mysqlcheck

mysqlcheck 是 MySQL 提供的命令行工具,用于检查、修复、分析和优化数据库表。

  • 检查数据库的所有表:
mysqlcheck -uroot -p --check your_database_name

image-20250430112011424

4.mysqlimport

mysqlimport 用于从文本文件中导入数据到数据库表中,适合用于批量导入数据。比如,有一个 CSV 文件,要导入到数据库表中:

mysqlimport -uroot -p --fields-terminated-by=, --fields-enclosed-by='"' --lines-terminated-by='\n' your_database_name your_table_name.csv
  • --fields-terminated-by:指定字段之间的分隔符。
  • --fields-enclosed-by:指定字段的包围符。
  • --lines-terminated-by:指定行的结束符。
  • your_table_name.csv:指定要导入的文件。
  • your_database_name:指定要导入的数据库。

示例:

  • 先创建一个 CSV 文件:
echo "1, 'Java', 'Java is the best language', '2022-02-05 19:30:00'" > article.csv
echo "2, 'Python', 'Python is the best language', '2022-02-05 19:30:00'" >> article.csv
echo "3, 'Go', 'Go is the best language', '2022-02-05 19:30:00'" >> article.csv
  • 在创建一张表:
CREATE TABLE `article` (`id` int(11) NOT NULL AUTO_INCREMENT,`title` varchar(255) NOT NULL,`content` text NOT NULL,`create_time` datetime NOT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
  • 利用 mysqlimport 导入 article.csv 到 article 表:
mysqlimport -uroot -p --fields-terminated-by=, --fields-enclosed-by='"' --lines-terminated-by='\n' --local mysql article.csv

5.mysqlshow

mysqlshow 用于显示 MySQL 数据库服务器中的数据库、表、列等信息。

  • 查看数据库中的所有表:
mysqlshow -uroot -p your_database_name

image-20250430151529804

  • 查看表中的所有列:
mysqlshow -uroot -p your_database_name your_table_name

image-20250430151848382

  • 查看表的索引信息:
mysqlshow -uroot -p --keys your_database_name your_table_name

image-20250430152213868

6.mysqlbinlog

mysqlbinlog 用于查看 MySQL 二进制日志文件的内容,可以用于恢复数据、查看数据变更等。二进制日志是 MySQL 服务器的一个重要特性,记录了数据库更改的所有“事件”,如表的创建、数据的插入、更新和删除操作。

  • 查看二进制日志文件的内容:
mysqlbinlog -uroot -p /path/to/your/binlog-file
  • 查看并恢复从昨天晚上 10 点到今天早上 2 点之间发生的所有数据库更改:
mysqlbinlog --start-datetime="YYYY-MM-DD 22:00:00" \--stop-datetime="YYYY-MM-DD 02:00:00" \/path/to/binlog-file > /path/to/output.sql

7.常用可执行文件

文件名功能说明常用用途示例
mysqlMySQL 客户端工具,连接并操作数据库登录数据库:mysql -u root -p
mysqldMySQL 服务器守护进程,数据库服务的主程序启动 MySQL 服务(一般由系统调用)
mysqld_safe启动 mysqld 的安全脚本,提供日志和崩溃自动重启支持通常用于安全模式启动
mysqladmin管理 MySQL 服务器(关闭、检查、重启等)关闭服务器:mysqladmin shutdown
mysqldump逻辑备份工具,将数据库导出为 SQL 文件备份数据库:mysqldump dbname > file.sql
mysqlimport将数据文件导入数据库(基于 .txt.csv导入 CSV 数据:mysqlimport --local ...
mysqlcheck检查、修复、分析表修复表:mysqlcheck -r dbname
mysqlshow显示数据库、表和列的信息查看表结构:mysqlshow dbname
mysqlbinlog查看和解析二进制日志(用于主从同步或数据恢复)恢复操作:mysqlbinlog binlog.000001
mysqlpump高性能备份工具,支持并行导出并行备份:mysqlpump --databases test
mysqlslap性能测试工具压测命令:mysqlslap --concurrency=50 ...
mysqld_multi管理多实例 MySQL 服务器启动多个实例
mysql_config输出编译信息(用于开发时获取编译参数)获取编译参数:mysql_config --libs
mysql_secure_installation配置 MySQL 安全选项(如设置 root 密码、删除匿名用户等)初次安装后的安全设置工具
mysql_upgrade升级工具,检查并升级数据库文件结构,使其兼容新版本的 MySQL升级数据库:mysql_upgrade -u root -pMySQL 8.0 之后部分功能被自动化
mysql_tzinfo_to_sql将操作系统的时区信息(如 /usr/share/zoneinfo)导入 MySQL 数据库中的 mysql.time_zone导入时区:`mysql_tzinfo_to_sql /usr/share/zoneinfo

😃😃😃

相关文章:

  • LeetCode LCP40 心算挑战题解
  • AI工作流自动化工具coze、dify、n8n,个人用户如何选择?
  • 当插入排序遇上“凌波微步“——希尔排序的奇幻漂流
  • 【DBeaver】如何连接MongoDB
  • Java学习手册:Spring MVC 架构与实现
  • iOS HTTPS 抓包踩坑记:几种方案尝试与替代工具记录
  • 人工智能数学基础(五):概率论
  • Android 移动开发:ProgressBar(转圈进度条)
  • C# 面向对象实例演示
  • 私有知识库 Coco AI 实战(六):打造 ES Mapping 小助手
  • C#学习第20天:垃圾回收
  • winget使用
  • UI设计之photoshop学习笔记
  • linux联接服务器SSH-局域网内网穿透分享
  • 【Java】一篇讲透Java中的集合类
  • Centos 7安装 NVIDIA CUDA Toolkit
  • Java 运算符入门指南
  • Win下的Kafka安装配置
  • 闪电贷攻击方式
  • C++(初阶)(十六)——set
  • 证监会:坚决拥护党中央对王建军进行纪律审查和监察调查决定
  • 首开股份:一季度净利润亏损约10.79亿元,签约金额63.9亿元
  • 医学统计专家童新元逝世,终年61岁
  • 国台办:提醒相关人员不要假借去第三地名义绕道赴台
  • 俄宣布停火三天,外交部:希望各方继续通过对话谈判解决危机
  • 比熬夜更伤肝的事,你可能每天都在做