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

MySQL数据库专用命令详细使用指南

目录

1. MySQL命令速查表

2. 核心工具详解与应用场景

2.1 服务器与核心客户端

2.2 安装初始化与安全

2.3 备份与恢复

2.4 管理与维护

2.5 性能与诊断

2.6 数据导入导出

3. 总结


1. MySQL命令速查表

这些工具涵盖了 MySQL 数据库的服务器管理客户端操作数据维护配置和安全等各个方面。

工具名称类别主要功能描述
mysql客户端工具最主要的命令行客户端,用于连接服务器并执行 SQL 命令、查询数据等。
mysqld服务器MySQL 服务器主程序(守护进程)。启动它即启动了 MySQL 服务。
mysqld-debug服务器包含调试信息的 mysqld 版本,用于开发和故障排查。
mysqladmin管理工具管理 MySQL 服务器的命令行工具,常用于检查状态、创建/删除数据库、重载权限等。
mysqldump备份恢复逻辑备份工具。将数据库的结构和数据导出为 SQL 脚本文件。
mysqlpump备份恢复mysqldump 的增强版,支持并行导出、压缩等功能(MySQL 5.7+)。
mysqlcheck维护工具检查、修复、优化和分析表的命令行工具。
mysqlbinlog二进制日志查看和处理 MySQL 二进制日志文件内容,用于点播恢复或复制故障排查。
mysql_secure_installation安全工具安全初始化脚本。引导用户设置 root 密码、移除匿名用户、禁用远程 root 登录等,新安装后必运行
mysql_ssl_rsa_setup安全工具用于创建 SSL 证书和 RSA 密钥文件,以支持安全的加密连接。
mysql_config_editor安全工具允许将认证信息(用户、密码)加密存储到 .mylogin.cnf 文件,实现安全无密码登录。
mysql_tzinfo_to_sql配置工具将系统时区信息加载到 MySQL 时区表中。
mysql_install_db初始化工具(已弃用) 旧版本中用于初始化数据目录、创建系统表。现被 mysqld --initialize 取代。
mysql_upgrade升级工具升级 MySQL 版本后,检查并更新系统表结构以确保与新版本的兼容性。
mysqlimport数据导入命令行工具,用于将文本文件(如 CSV)的数据导入到表中,本质是 LOAD DATA INFILE 的封装。
mysqlshow信息查看快速查看服务器上有哪些数据库、表、列或索引信息。
mysqlslap性能测试模拟客户端负载,对 MySQL 服务器进行压力测试和基准测试。
mysqldumpslow性能工具解析和分析 MySQL 慢查询日志,汇总显示常见的慢查询模式。
mysql_plugin服务器插件配置 MySQL 服务器运行时加载的插件。
mysqld_pre_systemd系统集成与 systemd 系统集成的辅助脚本,用于在启动主服务器前进行必要的预处理。

2. 核心工具详解与应用场景

2.1 服务器与核心客户端

  • mysqld:这是 MySQL 数据库的核心服务器进程。你的所有数据都由它来管理。通常通过系统服务(如 systemctl start mysql 或 systemctl start mysqld)来间接控制它,而不是直接运行。

  • mysqlDBA 和开发者最常用的工具。通过它连接数据库执行所有操作。

    # 基本连接
    mysql -u root -p
    # 连接指定主机和数据库
    mysql -h 192.168.8.200 -u username -p database_name

2.2 安装初始化与安全

mysql_secure_installation生产环境安全加固的第一步。它会引导你完成一系列安全设置,强烈建议在安装完 MySQL 服务器后立即执行。

mysql_install_db / mysqld --initialize:用于初始化数据目录,生成 mysql 系统数据库(其中包含用户权限表等)。这只在第一次安装 MySQL 时使用一次。

2.3 备份与恢复

  • mysqldump最经典的逻辑备份工具。备份结果是一个 .sql 文件,可以用于在不同机器架构或 MySQL 版本之间迁移数据。

    # 备份单个数据库
    mysqldump -u root -p database_name > backup.sql
    # 备份所有数据库
    mysqldump -u root -p --all-databases > full_backup.sql
    # 从备份文件恢复
    mysql -u root -p database_name < backup.sql
  • mysqlbinlog:当开启了二进制日志后,它可以用于基于时间点的恢复。先通过 mysqldump 恢复一个全量备份,再用这个工具重放某个时间点之后的二进制日志。

    mysqlbinlog --start-datetime="2023-10-27 14:00:00" binlog.000001 | mysql -u root -p

2.4 管理与维护

  • mysqladmin服务器管理的瑞士军刀,常用于脚本中。

    # 检查服务器是否运行
    mysqladmin -u root -p ping
    # 查看服务器状态
    mysqladmin -u root -p status
    # 关闭服务器
    mysqladmin -u root -p shutdown
    # 创建新数据库
    mysqladmin -u root -p create new_database
  • mysqlcheck:用于表维护,如检查错误、修复损坏的表、优化表等。

    # 检查所有表
    mysqlcheck -u root -p --check database_name
    # 修复所有表
    mysqlcheck -u root -p --repair database_name
  • mysql_upgrade升级 MySQL 大版本后(如 5.7 -> 8.0)必须运行,以确保系统表与新版本兼容。

2.5 性能与诊断

  • mysqlslap压力测试工具,可以模拟多个客户端并发访问。

    # 模拟 50 个客户端,共执行 1000 次查询
    mysqlslap -u root -p --concurrency=50 --iterations=1000 --query="SELECT * FROM my_table"
  • mysqldumpslow分析慢查询日志,帮你快速找出最耗时的 SQL 语句,以便优化。

    # 列出前 10 个最慢的查询
    mysqldumpslow -s t -t 10 /path/to/slow.log

2.6 数据导入导出

  • mysqlimport批量导入文本文件到数据库表的便捷工具。要求文件名必须与表名相同。

    # 将 data.txt 导入到 mytable 表
    mysqlimport -u root -p --fields-terminated-by=',' database_name /path/to/data.txt
    # 等效的 SQL 语句是:
    # LOAD DATA INFILE '/path/to/data.txt' INTO TABLE mytable FIELDS TERMINATED BY ',';

3. 总结

  • 日常操作:使用 mysql

  • 启动服务:通过系统服务管理 mysqld

  • 备份数据:使用 mysqldump

  • 安全初始化:务必运行 mysql_secure_installation

  • 版本升级:别忘了运行 mysql_upgrade

  • 性能排查:结合慢查询日志和 mysqldumpslow

  • 压力测试:使用 mysqlslap


文章转载自:

http://cfbbE42g.prjns.cn
http://c3hZIb3F.prjns.cn
http://y4Or5Xvk.prjns.cn
http://rleuFEuA.prjns.cn
http://hIVIJY3E.prjns.cn
http://pA7YsuBu.prjns.cn
http://HQGjBe4T.prjns.cn
http://96HzOIzx.prjns.cn
http://MdXYHxhK.prjns.cn
http://2ri514I8.prjns.cn
http://Nd5v28PM.prjns.cn
http://FCCkwRRS.prjns.cn
http://EyB0uO2o.prjns.cn
http://qHfrme5U.prjns.cn
http://7vQZMiwc.prjns.cn
http://OehetXYn.prjns.cn
http://322Mv8VU.prjns.cn
http://IISc6YXX.prjns.cn
http://lzyGcaEw.prjns.cn
http://aNpgfG9B.prjns.cn
http://bVGCroMF.prjns.cn
http://7zyHrr6u.prjns.cn
http://fyQN1tP7.prjns.cn
http://sv0t5aBX.prjns.cn
http://SaB8o2qN.prjns.cn
http://OgtFClFE.prjns.cn
http://mywvoSZz.prjns.cn
http://fcsYVOmq.prjns.cn
http://yjJZFwS5.prjns.cn
http://t0T3koYX.prjns.cn
http://www.dtcms.com/a/372281.html

相关文章:

  • Python3.12-slim版本
  • AI 生成式艺术重塑动漫角色创作:从技术逻辑到多元可能性(三)
  • 【面试向】元宇宙介绍
  • 硬件开发(4)—ARM裸机体系结构
  • Stream API三巨头:filter、map、collect
  • NAS可以干啥?好玩吗?
  • GDAL 在 Python 中的开发起步
  • RK3568编译linux内核遇到问题总结
  • React学习教程,从入门到精通, React 样式语法知识点与案例详解(13)
  • BiFormer注意力机制YOLOV8
  • 【算法】字符串专题
  • 谓语动词选择指南
  • JavaScript常见算法题分类
  • python---多态
  • 中兴B860AV3.2-M/B860AV3.1-M2-内存大小区分参考指南
  • 【开题答辩全过程】以 校园二手货物交易平台为例,包含答辩的问题和答案
  • 【PyTorch】图像多分类部署
  • 阿里云上启动enclave 并与宿主机通信
  • Python 多任务编程:进程、线程与协程全面解析
  • Wan系列模型解析--VACE
  • 关于学习的一些感悟
  • 如何在Python中使用正则表达式替换特定格式的文本?
  • 【正则表达式】 正则表达式断言(Assertion)是什么?
  • GD32入门到实战39--SRAM
  • [RootersCTF2019]I_<3_Flask
  • 多功能台灯设计与实现(论文+源码)
  • SpringBoot+RustFS实现高效文件存储解决方案
  • Docker04-镜像源切换
  • Python 2025:量化金融与智能交易的新纪元
  • 基于 WeKnora 构建企业级 RAG 知识库:Windows 部署与实践全解析