我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql如何备份与恢复数据

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql如何备份与恢复数据

下文我给大家简单讲讲关于mysql如何备份与恢复数据,大家之前了解过相关类似主题内容吗?感兴趣的话就一起来看看这篇文章吧,相信看完mysql如何备份与恢复数据对大家多少有点帮助吧。

mysql物理备份与逻辑备份

mysql物理备份:
mysql物理备份指拷贝整个数据库数据存放的目录文件(默认在/data/db_data目录中)
特点:
    简单,速度快,但不适合memory存储引擎(数据不保存到硬盘上),主要针对MyISAM存储引擎,可通过scp,cp,tar等文件备份工具实现,或者mysql自带的 mysqlhotcopy
缺点:
    对应innodb的存储引擎需要mysql企业版的备份工具mysqlbackup
    
mysql逻辑备份:
通过获取数据库结构与内容来保存数据
优点:
    可以针对任何存储引擎,在线备份,mysql自带工具mysqldump
缺点:
    速度慢(获取数据,并转换成指定的格式),体积大,

mysql线上备份与线下备份

mysql线上备份
    不需要关闭mysql云服务器,适当的锁表可以有效的保证备份的完整性
    
线下备份:
    需要关闭mysql云服务器,一般发生在从库中,以防止,主库的正常工作
    
远程备份与本地备份
    远程备份工具:mysqldump
    本地备份工具:mysqldump,mysqlhotcopy
    
完成备份与增量备份:
    完全备份:备份所有的数据库
    增量备份: 一个时间点内数据库发生变量的备份(依靠mysql binary log) 需要开启--log-bin( 每次重启时都会产生一个新的二进制文件,
    mysql客服端:flush logs(linux命令行 mysqladmin flush-logs)命令可以手动产生一个新的 )
    
    
备份策越:
    
    shell> mysqldump -uroot -p --all-databases > backup_date.sql  (会锁表)
如果数据库全是innodb引擎,可以加上--single-transaction,来保证事务也能备份,如果需要新产生一个binary log如下:
mysqldump -uroot -p --single-transaction --flush-logs --master-data=2 --all-databases > backup_date.sql
为了减小空间浪费可以删除无用的binary log文件 通过如下:
mysqldump -uroot -p --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > backup_date.sql
当有主从的时候操作需要小心,可能从云服务器还没更新过来

恢复通过执行以下语句:
mysql -uroot -p < backup_date.sql
或者binary log恢复
mysqlbinlog mysql-bin.000007 mysql-bin.000008 | mysql -uroot -p
mysqlbinlog 还可以设置起止时间以及位置,具体请参考Mysql手册 或者 man mysqlbinlog

mysqldump使用说明
mysqldump [arguments] > file_name
备份所有的数据库使用 --all-databases如
mysqldump --all-databases > dump.sql
指定数据库
mysqldump --databases db1 db2 ...>dump.sql (如果不加--databases 文件中将不会产生 create databases 与use database 语句)

mysql> CREATE DATABASE IF NOT EXISTS db1;
mysql> USE db1;
mysql> source dump.sql

mysqldump 还有一种--tab的使用法,具体可参考手册

如果你的存储引擎是innodb可考虑一下参数
--events  (事件)
--routines (存储过程与函数)
--triggers (触发器,默认包括)
也可以指定跳过通过如下参数
 --skipevents, --skip-routines, or --skip-triggers
 
 mysqldump还可以将表结构与数据分开备份如下:
 --no-data 不备份数据(只备份表结构)
 --no-create-info 不备份表结构(只备份数据)
 shell> mysqldump --no-data test > dump-defs.sql
shell> mysqldump --no-create-info test > dump-data.sql

大家觉得mysql如何备份与恢复数据这篇文章怎么样,是否有所收获。如果想要了解更多相关,可以继续关注我们的行业资讯板块。 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql如何备份与恢复数据

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL数据备份与恢复(二) -

上一篇介绍了逻辑备份工具mysqldump,本文将通过应用更为普遍的物理备份工具xtrabackup来演示数据备份及恢复的第二篇内容。1.  xtrabackup 工具的安装 1.1  安装依赖包/* xtrabackup 的使用需要安装相关的依赖包 否则使
MySQL数据备份与恢复(二) -
2018-12-27

如何备份和恢复MySQL数据库

备份和恢复MySQL数据库可以通过多种方式实现,以下是其中一种常用的方法:备份MySQL数据库:使用命令行工具备份数据库:mysqldump -u [用户名] -p [数据库名] > [备份文件路径]使用MySQL Workbench备份
如何备份和恢复MySQL数据库
2024-04-09

MySQL INSERT锁与数据库备份恢复

INSERT锁是指在MySQL数据库中,当执行INSERT操作时,会对表进行锁定,其他操作无法对该表进行修改或查询,直到INSERT操作完成。这种锁可以确保数据的一致性,防止在插入数据时发生冲突。数据库备份恢复是指在数据库发生意外情况导致
MySQL INSERT锁与数据库备份恢复
2024-08-18

Redis—数据备份与恢复

https://www.cnblogs.com/shizhengwen/p/9283973.htmlhttps://blog.csdn.net/w2393040183/article/details/76167856https://www.redis.net.
2017-12-01

mysql备份与恢复

1、备份命令(用户名:root;密码:123;端口:3306)格式:mysqldump -h主机名 -p端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql例如: mysqldump -h 192.168.1.100 -p 3306
mysql备份与恢复
2015-05-28

数据库备份与恢复

数据库备份与恢复 一、物理备份和逻辑备份二、mysqldump实现逻辑备份2.1 备份一个数据库2.2 备份全部数据库2.3 备份部分数据库2.4 备份部分表2.5 备份单表的部分数据2.6 排除某些表的备份2.7 只备份结构或只备
2023-08-18

《MySQL数据库》MySQL备份恢复

前言MySQL数据库最重要的部分就是数据,所以保证数据不被损坏尤为重要,大家都知道911事件,当时非常多的数据丢失,导致经济混乱。接下来我们就来讲讲MySQL是如何保障数据完整,应对特殊情况,如何恢复等。备份备份检查:保证备份没有问题,并且定期演练恢复数据。备
《MySQL数据库》MySQL备份恢复
2016-12-27

编程热搜

目录