搜索
首页数据库mysql教程 MySQL数据库备份总结

一个企业的正常运行,数据的完整性是最关键的;所以我们需要在工作中要很熟练的掌握数据的备份与恢复方法;下面是对Mysql数据库备份的三种方法总结,希望对大家

一个企业的正常运行,数据的完整性是最关键的;所以我们需要在工作中要很熟练的掌握数据的备份与恢复方法;下面是对Mysql数据库备份的三种方法总结,希望对大家会有所帮助 

备份开始前的工作环境准备:

1、创建用于保存二进制日志文件的目录

  • # mkdir /mybinlog 
  • # chown mysql.mysql /mybinlog 
  • 2、修改配置文件

    3、为备份数据库创建存放点

  • # mkdir /mybackup 
  • # chown -R mysql.mysql /mybackup 
  • 4、启动mysql服务器

  • # service mysqld start 
  • 5、插入需要备份的数据库

  • 一、使用mysqldump工具完成完全备份+增量备份基于mysqldump通常就是完整备份+二进制日志来进行恢复数据

    1.1、mysqldump用来温备份,首先需要为所有库加读锁,并且滚动一下二进制日志,记录当前二进制文件位置

    1.2、备份二进制日志

  • # cp /mybinlog/mysql-bin.000001 /mybackup/alldatabase.000001 
  • 1.3、模拟数据库意外损坏,利用完全备份实现数据库的恢复

  • # rm -rf /mydata/data/* 
  • # rm -rf /mybinlog/* 
  • 1.4、初始化mysql并启动服务器

  • 1.5、删除二进制日志,启动服务

    1.6、恢复到备份状态,导入备份的数据库文件:

  • 2、模拟往students表中添加数据,香港虚拟主机,添加完成后不小心将表删除了,我们要恢复到删除之前的状态,并且新加的数据还要存在

    2.1、往students表中添加数据

  • mysql> insert into students (Name,Age,Gender) values ('hadoop',22,'M'); 
  • 2.2、模拟一下,不小心将表删除了

  • 2.3、查看一下二进制日志文件的位置

    2.4、先恢复完整数据(恢复过程不要记录在日志中)

  • # mysql  /mybackup/alldatabase.sql 
  • 2.5、查看删除表时的记录位置

    2.5、将二进制文件中完整备份到删除表之前的记录导出

    2.6、将改变的数据库日志导入到mysql库中

  • 2.7、见证奇迹的时刻数据库恢复成功,并且插入的数据也还原回来了

     

    二、select命令也能完成逻辑备份比mysqldump更节约空间,速度更快,但比mysqldump用起来要麻烦,并且备份出来的数据都是纯文本信息,没有额外的开销空间,适合备份某张表模拟备份一张表

    1、备份出来,保存在某个目录下,但需要注意的是,这个目录下的文件的具有权限,当登录到mysql时需要具有执行的权限

    2、恢复数据库需要创建一个空表,模仿原来的表创建

  • 把原来的表删除了

  • mysql> load data infile '/tmp/tutor.txt' into table tutor; 
  • 验证:

    当然用select也可以把表中符合条件的语句备份出来,香港虚拟主机,这里不再做演示了,香港虚拟主机,很简单。

    这种方法适合于某长表的备份,但不会记录到二进制日志中

    三、利用LVM快照从物理角度实现几乎热备的完全备份,配合二进制日志备份实现增量备份,进而实现数据库的备份。用lvm的快照来备份速度是非常快的,而且几乎热备,恢复也很快速,操作也简单,完整恢复后再将相应二进制恢复即可。前提:

    1、数据文件要在逻辑卷上

    2、此逻辑卷所在卷组必须有足够空间使用快照卷

    3、数据文件和事务日志要在同一个逻辑卷上

    步骤:

    1、启动事务

    2、打开会话,施加读锁,锁定所有表,此时别人是不能执行命令的(不能往数据库中插入数据)

    注意:执行表锁定时,一定不要退出

    3、通过另一个终端,保存二进制日志文件及相关信息位置

    4、创建快照卷

  • # lvcreate -L 50M -s -p r -n mydata-snap /dev/myvg/mydata  
  • 5、释放锁

    6、挂载快照卷,备份

    7、卸载/mnt,删除快照卷

  • # umount /mnt/ 
  • # lvremove --force /dev/myvg/mydata-snap  
  • 8、增量备份二进制日志

    首先删除二进制日志文件,对我们没有太大用处

  • # rm -rf /backup/full-backup-2013-05-06/mysql-bin.* -f 
  • 现在模拟数据库被格式化

    格式化之前先把二进制日志备份出来

    恢复到了还原前的状态

    这就是逻辑卷实现的一次完全备份

    本文出自 “丽的博客” 博客,请务必保留此出处

    声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    mysql blob:有什么限制吗?mysql blob:有什么限制吗?May 08, 2025 am 12:22 AM

    mysqlblobshavelimits:tinyblob(255bytes),blob(65,535 bytes),中间布洛布(16,777,215个比例),andlongblob(4,294,967,967,295 bytes).tousebl观察性:1)考虑performance impactsandSandStorelargeblobsextern; 2)管理backbackupsandreplication carecration; 3)usepathsinst

    MySQL:自动化用户创建的最佳工具是什么?MySQL:自动化用户创建的最佳工具是什么?May 08, 2025 am 12:22 AM

    自动化在MySQL中创建用户的最佳工具和技术包括:1.MySQLWorkbench,适用于小型到中型环境,易于使用但资源消耗大;2.Ansible,适用于多服务器环境,简单但学习曲线陡峭;3.自定义Python脚本,灵活但需确保脚本安全性;4.Puppet和Chef,适用于大规模环境,复杂但可扩展。选择时需考虑规模、学习曲线和集成需求。

    mysql:我可以在斑点内搜索吗?mysql:我可以在斑点内搜索吗?May 08, 2025 am 12:20 AM

    是的,YouCansearchInIdeAblobInMysqlusingsPecificteChniques.1)转换theblobtoautf-8StringWithConvertFunctionWithConvertFunctionandSearchusiseLike.2)forCompresseBlyblobs,useuncompresseblobs,useuncompressbeforeconversion.3)acpperformance impperformance imperformance imptactsanddataEccoding.4)

    MySQL字符串数据类型:综合指南MySQL字符串数据类型:综合指南May 08, 2025 am 12:14 AM

    mysqloffersvariousStringDatatYpes:1)charforfixed Lengtth Strings,IdealforConsistLengthDatalikeCountryCodes; 2)varcharforvariable长度长,合适的forfieldslikenames; 3)texttypefesforepesforlargertext,forforlargertext,goodforforblogblogpostsbutcan impactcuctcuctcuctpercrance; 4)biland;

    掌握mysql blobs:逐步教程掌握mysql blobs:逐步教程May 08, 2025 am 12:01 AM

    TomasterMySQLBLOBs,followthesesteps:1)ChoosetheappropriateBLOBtype(TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB)basedondatasize.2)InsertdatausingLOAD_FILEforefficiency.3)Storefilereferencesinsteadoffilestoimproveperformance.4)UseDUMPFILEtoretrieveandsaveBLOBsco

    MySQL中的BLOB数据类型:开发人员的详细概述MySQL中的BLOB数据类型:开发人员的详细概述May 07, 2025 pm 05:41 PM

    blobdatatypesinmysqlareusedforvorvoringlargebinarydatalikeimagesoraudio.1)useblobtypes(tinyblobtolonglongblob)基于dondatasizeneeds。 2)库孔素pet petooptimize绩效。3)考虑Xternal Storage Forel Blob romana databasesizerIndimprovebackupe

    如何将用户从命令行添加到MySQL如何将用户从命令行添加到MySQLMay 07, 2025 pm 05:01 PM

    toadDuserStomySqlfromtheCommandline,loginasroot,thenusecreateuser'username'@'host'host'Indessifiedby'password'; tocreateanewuser.grantpermissionswithgrantprantallprivilegesondatabase

    MySQL中有哪些不同的字符串数据类型?详细的概述MySQL中有哪些不同的字符串数据类型?详细的概述May 07, 2025 pm 03:33 PM

    mySqlofferSeightStringDatateTypes:char,varchar,二进制,二进制,varbinary,blob,文本,枚举,枚举和set.1)长度,理想的forconsistentDatatalIkeCountryCodes.2)varcharisvariable长度,长度,效率foriforitifforiticforiticforiticforiticforiticforitic forvaryingdatalikename.3)

    See all articles

    热AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驱动的应用程序,用于创建逼真的裸体照片

    AI Clothes Remover

    AI Clothes Remover

    用于从照片中去除衣服的在线人工智能工具。

    Undress AI Tool

    Undress AI Tool

    免费脱衣服图片

    Clothoff.io

    Clothoff.io

    AI脱衣机

    Video Face Swap

    Video Face Swap

    使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

    热工具

    SecLists

    SecLists

    SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

    适用于 Eclipse 的 SAP NetWeaver 服务器适配器

    适用于 Eclipse 的 SAP NetWeaver 服务器适配器

    将Eclipse与SAP NetWeaver应用服务器集成。

    Atom编辑器mac版下载

    Atom编辑器mac版下载

    最流行的的开源编辑器

    Dreamweaver CS6

    Dreamweaver CS6

    视觉化网页开发工具

    WebStorm Mac版

    WebStorm Mac版

    好用的JavaScript开发工具