首页 > 数据库 >mysqldump备份

mysqldump备份

时间:2024-02-18 16:35:28浏览次数:37  
标签:pxxxxxx -- 备份 uroot mysqldump sql db1

前言:

mysqldump 是日常比较常用的一个工具了,在对数据库进行导出工作时,经常会用到 mysqldump 。本篇文章将介绍 mysqldump 工具的使用方法并分享几点备份技巧。

1.mysqldump使用简介

mysqldump 是 MySQL 系统自带的逻辑备份工具,主要用于转储数据库。它主要产生一系列的 SQL 语句,可以封装到文件,该文件包含重建数据库所需要的 SQL 命令如 CREATE DATABASE ,CREATE TABLE ,INSERT 等等。当我们需要还原这些数据时,只需要执行此文件,即可将对应的数据还原。

mysqldump 基础使用语法如下:

Usage: mysqldump [OPTIONS] database [tables]
OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR     mysqldump [OPTIONS] --all-databases [OPTIONS]

 

执行 mysqldump --help 或参考 MySQL 官方文档,我们发现 mysqldump 工具可配置的参数有很多,以下简要说明部分常用的参数。

   

 

上表展示了一些常见的 mysqldump 相关选项,当你不了解某个参数的作用时,可以执行 mysqldump --help 来获取帮助。对于布尔类型的参数,一般还存在一个与之对立的参数,如 --triggers 默认开启,可以使用 --skip-triggers 来禁用它。

2.几点备份小技巧

虽然 mysqldump 不太适用于大数据量的备份,但因其具有灵活方便、可根据场景定制参数等优点,还是被广泛应用在数据导出领域。

笔者根据自己的使用经验,简单分享几点 mysqldump 备份小技巧:

  • 建议使用 --single-transaction 参数来获得一致性备份,减少锁表。
  • 按需求来导出,只要自己想要的数据,尽量减少导出文件大小。
  • 若想用于搭建从库,建议使用 --master-data = 2 参数记录主库 binlog 信息。
  • 若想备份存储过程、自定义函数及事件,请加 -R -E 参数,此二者默认不开启。
  • 不了解的参数不要随意加,按默认即可。

下面分享几个不同场景下的 mysqldump 使用方法:

 

# 备份全部数据库(包含存储过程、自定义函数及事件)
mysqldump -uroot -pxxxxxx --single-transaction -R -E --all-databases > /tmp/all_database.sql

# 要求记录 binlog 位点信息 可用于搭建从库
mysqldump -uroot -pxxxxxx --single-transaction -R -E --all-databases --master-data=2 > /tmp/all_database.sql

# 备份指定数据库
mysqldump -uroot -pxxxxxx --single-transaction -R -E --databases db1 > /tmp/db1.sql
mysqldump -uroot -pxxxxxx --single-transaction -R -E --databases db1 db2 > /tmp/db1_db2.sql

# 备份部分表
mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 > /tmp/tb1.sql
mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 tb2 tb3 > /tmp/tb.sql

# 导出某个表,数据以单行insert显示
mysqldump -uroot -pxxxxxx --single-transaction --skip-extended-insert db1 tb1 > /tmp/tb1.sql

# 导出单表的部分数据
mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 --where=" create_time >= '2021-06-01 00:00:00' " > /tmp/tb1.sql
mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 --where='id < 10' > /tmp/tb1.sql

# 排除某些表导出
mysqldump -uroot -pxxxxxx --single-transaction --databases db1 --ignore-table=db1.tb1 --ignore-table=db1.tb2 > /tmp/db1.sql

# 只导出结构或只导出数据
mysqldump -uroot -pxxxxxx db1 --no-data > /tmp/db1_jiegou.sql
mysqldump -uroot -pxxxxxx db1 --no-create-info > /tmp/db1_data.sql

# 只导出某个库的存储过程及自定义函数
mysqldump -uroot -pxxxxxx -d -t -R db1 > /tmp/db1_routine.sql

# 远程导出 即MySQL服务端不在本地
mysqldump -uroot -pxxxxxx -hxxx.xxx.xx -P3306 --single-transaction --databases db1 > /tmp/db1.sql

 

摘自:

https://cloud.tencent.com/developer/article/1854071

标签:pxxxxxx,--,备份,uroot,mysqldump,sql,db1
From: https://www.cnblogs.com/fengjian2016/p/18019505

相关文章

  • 数据实时备份
    数据实时备份这里采用lsyncd+rsync实现服务器之间数据实时同步服务端配置备份服务器执行这个脚本,确保服务启动#配置rsyncd服务端的全部流程,也可以写成脚本,一键安装#/bin/bashyuminstallrsync-ycat>/etc/rsyncd.conf<<'EOF'uid=wwwgid=wwwport=873fake......
  • Elasticsearch不同集群间备份恢复(S3存储)
    S3存储首先都知道需要在ES集群上安装S3插件以及重启集群在MINIO集群创建相应的桶Kibana上注册快照存储库,两个不同的集群需要对接到同一个S3存储库,对接后会自动识别桶里的快照《见上一篇博客》恢复搭建的恢复集群已对接到备份集群对接的MINIO集群了可以看到已自动识别到......
  • 备份阿里云oss,增量备份,自动处理脚本
    下载安装ossutil 先安装unzip ,然后安装ossutilcurlhttps://gosspublic.alicdn.com/ossutil/install.sh|sudobash 配置endpoint  oss-cn-zhangjiakou.aliyuncs.comstsToken不用配置,临时访问用的AccessKeyID  为ctOss@1463*****.onaliyun.com这个账号......
  • py脚本备份
    POST盲注(暴力)fromrequestsimport*importtimeurl=''payload={"id":""}flag=""foriinrange(1,10000000000):#flag长度time.sleep(0.06)forjinrange(20,126):#可见字符ascii范围payload["id&quo......
  • docker mysql容器定时备份
    1查看docker容器信息[root@xxxt01:/root]dockerps-aCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMESab87e7a22146mysql"docke......
  • 第二十三天:mysql数据备份及还原
    一、备份类型完全备份,部分备份完全备份:整个数据集部分备份:只备份数据子集,如部分库或表完全备份、增量备份、差异备份增量备份:仅备份最近一次完全备份或增量备份(如果存在增量)以来变化的数据,备份较快,还原复杂差异备份:仅备份最近一次完全备份以来变化的数据,备......
  • MSSQL Server 备份数据库脚本
    备份数据库脚本,实现如下脚本1.定时备份2. 平日以N开头,周一以W开头,每月1号以M开头,每年1月1日以Y开头, (保留最近7天,4周,12月和10年的备份)3.每周一还原备份到test库,并将密码改为123 declare@bakfilevarchar(100),@dbvarchar(100),@prevarchar(......
  • instruction备份
    instructions={1:"请根据输入的10条数据的语言执行相反的翻译,输入数据为'{0}'(如果输入是英语,则翻译成中文;如果输入是中文,则翻译成英语)(换行符分隔),只返回翻译后的结果,不要包含原文,每条也用换行分隔。请确保翻译结果使用完整的自然语言句子,除逗号、句号外不要有特殊符号。"......
  • 有道云笔记数据备份相关
    PC客户端导出最新版有导出全部文件的功能,但限制90天一次,除非开通会员(无限次)开放平台API开放平台地址申请理由我是一个个人开发者,API不是在APP或网站中使用,主要是作为个人的学习,测试及自己笔记的整理归档等。主页为https协议,但提交接口为http协议,请求被浏览器阻止......
  • 接口传送集合数据备份
    //请求路径Stringurl=address+"/priceFreightpriceController.do?outGetMaplist&chargeableWeight="+weight;//url=url+"&data="+jsonString;Gsongson=newGson();//List转String......