【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

这篇具有很好参考价值的文章主要介绍了【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、系统数据库

二、常用工具 

2.1 mysql

示例

2.2 mysqladmin 

示例 

2.3 mysqlbinlog

示例

2.4 mysqlshow

示例

2.5 mysqldump(数据备份)

示例

2.6 mysqlimport/source(数据恢复)

2.6.1 mysqlimport

2.6.2 source


一、系统数据库

Mysql 数据库安装完成后,自带了以下四个数据库,具体作用如下:

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

二、常用工具 

2.1 mysql

该 mysql 不是指 mysqld 服务,而是指 mysql 的客户端工具。 

语法 :
    mysql [options] [database]
选项 :
    -u, --user=name           # 指定用户名
    -p, --password[=name]     # 指定密码
    -h, --host=name           # 指定服务器 IP 或域名(不写则默认本地 ip)
    -P, --port=port           # 指定连接端口(不写则默认端口 3306)
    -e, --execute=name        # 执行 SQL 语句并退出

        -e 选项可以在 Mysql 客户端执行 SQL 语句,而不用连接到 MySQL 数据库再执行,对于一些批处理脚本,这种方式尤其方便。

示例

mysql -uroot -p1234 itcast -e "select * from stu"

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

2.2 mysqladmin 

        mysqladmin 是一个执行管理操作的客户端程序。可以用它来检查服务器的配置和当前状态、创建并删除数据库等。

# 通过帮助文档查看选项:
[root@mysql01 ~]# mysqladmin --help

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

语法:
    mysqladmin [options] command ...
选项:
    -u, --user=name             # 指定用户名
    -p, --password[=name]       # 指定密码
    -h, --host=name             # 指定服务器 IP 或域名
    -P, --port=port             # 指定连接端口

示例 

# 删除指定的数据库
mysqladmin -uroot –p1234 drop 'test01'

# 查看数据库版本信息
mysqladmin -uroot –p1234 version

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

2.3 mysqlbinlog

        由于服务器生成的二进制日志文件以二进制格式保存,所以如果想要检查这些文本的文本格式,就会使用到 mysqlbinlog 日志管理工具。 

语法 :
    mysqlbinlog [options] log-files1 log-files2 ...
选项 :
    -d, --database=name         # 指定数据库名称,只列出指定的数据库相关操作。
    -o, --offset=               # 忽略掉日志中的前 n 行命令。
    -r, --result-file=name      # 将输出的文本格式日志输出到指定文件。
    -s, --short-form            # 显示简单格式, 省略掉一些信息。
    --start-datatime=date1 --stop-datetime=date2 # 指定日期间隔内的所有日志。
    --start-position=pos1 --stop-position=pos2   # 指定位置间隔内的所有日志。

示例

A. 查看 binlog.000008 这个二进制文件中的数据信息

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

        上述查看到的二进制日志文件数据信息量太多了,不方便查询。我们可以加上一个参数 -s 来显示简单格式。 

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

2.4 mysqlshow

        mysqlshow 客户端对象查找工具,用来很快地查找存在哪些数据库、数据库中的表、表中的列或者索引。 

语法 :
    mysqlshow [options] [db_name [table_name [col_name]]]

选项 :
    --count     # 显示数据库及表的统计信息(数据库,表 均可以不指定)
    -i          # 显示指定数据库或者指定表的状态信息

示例:
    # 查询 test 库中每个表中的字段书,及行数
    mysqlshow -uroot -p2143 test --count

    # 查询 test 库中 book 表的详细情况
    mysqlshow -uroot -p2143 test book --count

示例

A. 查询每个数据库的表的数量及表中记录的数量

mysqlshow -uroot -p1234 --count

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

B. 查看数据库 itcast 的统计信息 

mysqlshow -uroot -p1234 itcast --count

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

C. 查看数据库 itcast 中的 stu 表的信息 

mysqlshow -uroot -p1234 itcast stu --count

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

D. 查看数据库 itcast 中的 stu 表的 id 字段的信息 

mysqlshow -uroot -p1234 itcast stu id --count

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

2.5 mysqldump(数据备份)

        mysqldump 客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建表及插入表的 SQL 语句。 

语法 :
    mysqldump [options] db_name [tables]
    mysqldump [options] --database/-B db1 [db2 db3...]
    mysqldump [options] --all-databases/-A

连接选项 :
    -u, --user=name               # 指定用户名
    -p, --password[=name]         # 指定密码
    -h, --host=name               # 指定服务器ip或域名
    -P, --port=                   # 指定连接端口

输出选项:
    --add-drop-database           # 在每个数据库创建语句前加上 drop database 语句
    --add-drop-table              # 在每个表创建语句前加上 drop table 语句 , 默认开启; 不开启 (--skip-add-drop-table)
    -n, --no-create-db            # 不包含数据库的创建语句
    -t, --no-create-info          # 不包含数据表的创建语句
    -d, --no-data                 # 不包含数据
    -T, --tab=name                # 自动生成两个文件:一个.sql文件,创建表结构的语句;一个.txt文件,数据文件

示例

A. 备份 itcast 数据库

# 备份文件在当前目录(也可以写绝对路径到指定目录)
mysqldump -uroot -p1234 itcast > itcast_20230421.sql

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

可以直接打开 cat itcast_20230421.sql,来查看备份出来的数据到底什么样。 

备份出来的数据包含:

  • 删除表的语句

  • 创建表的语句

  • 数据插入语句

        如果我们在数据备份时,不需要创建表,或者不需要备份数据,只需要备份表结构,都可以通过对应的参数来实现。 

B. 备份 itcast 数据库中的表数据,不备份表结构(-t)

mysqldump -uroot -p1234 -t itcast > itcast02_20230421.sql

打开 itcast02_20230421.sql,来查看备份的数据,只有 insert 语句,没有备份表结构。

C. 将 itcast 数据库的表的表结构与数据分开备份(-T)

mysqldump -uroot -p1234 -T /root itcast stu

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

        执行上述指令,会出错,数据不能完成备份,原因是因为我们所指定的数据存放目录 /root,MySQL 认为是不安全的,需要存储在 MySQL 信任的目录下。那么,哪个目录才是 MySQL 信任的目录呢,可以查看 一下系统变量 secure_file_priv 。执行结果如下: 

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

        上述的两个文件 stu.sql 中记录的就是表结构文件,而 stu.txt 就是表数据文件,但是需要注意表数据文件,并不是记录一条条的 insert 语句,而是按照一定的格式记录表结构中的数据。如 下: 

【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

2.6 mysqlimport/source(数据恢复)

2.6.1 mysqlimport

mysqlimport 是客户端数据导入工具,用来导入 mysqldump 加 -T 参数后导出的文本文件。

注意:导入前需要把原来的表删掉才能成功。 

语法 :
    mysqlimport [options] db_name textfile1 [textfile2...]

示例 :
    mysqlimport -uroot -p2143 test /tmp/city.txt

2.6.2 source

如果需要导入 sql 文件,可以使用 mysql 中的 source 指令 (需要进入 mysql 命令行内执行): 

语法 :
    source /root/xxxxx.sql

上一篇文章:【MySQL | 进阶篇】08、InnoDB 引擎架构、事务原理及 MVCC 讲解_Stars.Sky的博客-CSDN博客

下一篇文章:【MySQL | 运维篇】01、日志_数据库 日志 管理 运维_Stars.Sky的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-420459.html

到了这里,关于【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 包管理器 | 浅谈几个常用的包管理工具

    目录 🖥️ 前言 ◼️ npm ◼️ cnpm ◼️ yarn ◼️ pnpm ◼️ Bower 🖥️ 参考文献  🖥️ 参考资料    如果你是前端开发者,或多或少都会接触到一些包管理工具,包管理工具是用于持续自动化程序的集合,例如安装、升级、配置和删除程序。使用包管理工具可以为前端开发解

    2024年02月13日
    浏览(255)
  • npm常用命令 + 前端常用的包管理工具 以及 npm淘宝镜像配置等

    下载地址 官网: https://nodejs.org/en. 中文网站: https://nodejs.org/zh-cn. 安装之后,使用 node -v 命令查看安装的版本,如下: 关于windows上的安装可以参考下面的文章: vue2入门——菜鸟级1篇. 前端常用的包管理工具有:npm、cnpm、yarn,更多请继续…… 前端常用的包管理工具有:n

    2024年02月11日
    浏览(43)
  • 在IT行业,管理者常用的三款项目管理工具

    对于IT项目管理工具相信很多开发者都不陌生,因为它是我们每天都要接触的。项目管理是一个复杂的过程,一款专业的项目管理工具能够有效帮助团队提升研发效能,促进项目的良好运转,保障项目的有序实施。但是在前期选择IT项目管理工具的时候往往是我们最头疼的时候

    2024年02月05日
    浏览(37)
  • Jira最新安装破解文档,企业常用项目管理工具Jira

    安装docker 启动docker 上传并解压(tar -xvf)数据库驱动(tar.gz),上传破解jar包(atlassian-agent.jar) 运行命令,下载镜像并启动mysql容器 进入/var/lib/docker/volumes/mysql_conf/_data/目录,执行命令 vim mysql.cnf 接下来按顺序执行以下命令: 按照指示填,即可破解成功!!!

    2024年02月12日
    浏览(36)
  • 前端包管理器的工具,npm和Yarn以及pnpm是最常用的

    👍 点赞,你的认可是我创作的动力! ⭐️ 收藏,你的青睐是我努力的方向! ✏️ 评论,你的意见是我进步的财富! 前端包管理器是用于管理前端项目依赖项(如库、框架和工具)的工具。它们有助于确保项目的依赖项始终保持最新、可维护和可复制。以下是一些常用的前

    2024年02月07日
    浏览(46)
  • 银河麒麟高级服务器操作系统V10-系统管理员手册:03 常用图形化工具

    目录 第三章 常用图形化工具 3.1. 刻录工具 3.2. 磁盘 3.2.1. 磁盘管理 3.2.1.1. 磁盘管理工具介绍 3.2.1.2. 磁盘管理工具界面展示 3.2.2. 磁盘管理工具使用 3.2.2.2. 分区格式化 3.2.2.3. 分区编辑 3.2.2.4. 编辑文件系统 3.2.2.5. 分区大小调整 3.2.2.6. 分区卸载和挂载 3.2.2.7. 分区删除 3.3. 远程

    2024年02月08日
    浏览(119)
  • 分享20+个在线工具网站,60+常用工具

    💂 个人网站:【工具大全】【游戏大全】【神级源码资源网】 🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】 💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 今天给大家分享20+在线工具网站和 60个常用在线工具+前端工具 欢迎大家访问:h

    2024年02月09日
    浏览(43)
  • java常用工具类

    Arrays:这是一个操作数组的工具类,提供了如排序、查找等功能。 Collections:这个类提供了大量的静态方法,用于操纵和处理集合类,如List、Set和Map。 Math:这个类包含用于执行基本数学运算的方法,如最初级的加、减、乘、除,还有取绝对值,平方根,取最大最小值等。

    2024年04月15日
    浏览(36)
  • 【Linux】常用工具(上)

    在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序. 但是这样太麻烦了,于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成 windows 上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,

    2024年02月07日
    浏览(45)
  • 6 - 常用工具类

    目录 1. Scanner 扫描控制台输入 1.1 扫描控制台输入 1)nextLine 2)nextInt 3)其他方法 1.2 扫描文件 1.3 查找匹配项 2. Arrays 数组工具 2.1 创建数组 1)copyOf 2)copyOfRange 3)fill 2.2 比较数组 2.3 数组排序 2.4 数组检索 2.5 数组转流 2.6 打印数组 2.7 数组转 List 2.8 setAll 2.9 parallelPrefix 3. S

    2024年01月16日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包