加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

关于MySQL数据库的备份方案

发布时间:2018-08-28 10:47:43 所属栏目:编程 来源:佚名
导读:分享点本身连年来打仗MySQL数据备份这一块的小履历。数据是一个互联网公司的命根子,数据库的安详以及存案的完备性是至关重要的,以是我们必要在事变中要很纯熟的把握数据的备份与规复,这也是一个及格的运维DBA必需具有的职业手艺。 我这里简朴总结MySQL的备
副问题[/!--empirenews.page--]

关于MySQL数据库的备份方案

分享点本身连年来打仗MySQL数据备份这一块的小履历。数据是一个互联网公司的命根子,数据库的安详以及存案的完备性是至关重要的,以是我们必要在事变中要很纯熟的把握数据的备份与规复,这也是一个及格的运维DBA必需具有的职业手艺。

我这里简朴总结MySQL的备份分为3种:分为冷备份,逻辑备份,热备份。

1、冷备份:

一样平常首要用于非焦点营业,这类营业一样平常都是应承营业间断的,冷备份的特点就是数度快,规复时也最为简朴。凡是直接复物理文件来实现冷备份。

1.1备份进程:

第一封锁mysql处事

第二步就是把datas数据目次(包括ibdata1)和日记目次(包括ib_logfile0,ib_logfile1,ib_logfile2)复制到磁盘,可能当地的另一块磁盘里

1.2规复进程:

第一行使复制的数据目次和日记目次替代原有的目次

第二就是启动mysql

2、逻辑备份MySQLdump

出产场景备份的呼吁:

出产场景差异引擎mysqldump备份呼吁

myisam引擎企业出产备份呼吁(得当全部引擎或殽杂引擎):

  1. mysqldump -uroot -p123456 -A -B -F -R --master-data=2 -x --events|gzip >/opt/all.sql.gz 

提醒:-F也可以不消,与--master-data有些一再。

innodb引擎企业出产备份呼吁:保举行使的

  1. mysqldump -uroot -p123456 -A -B -F -R --master-data=2  --default-character-set=utf8  --events --single-transaction |gzip >/opt/all.sql.gz 

提醒:-F也可以不消。与--master-data有些一再。

--default-character-set=utf8 指定备份出的sql数据的字符集为utf8,虽然,这个要提前知道线上的mysql库所有回收的字符集都是utf8,不然在规复到线上的库会呈现字符集纷歧致的题目呈现乱码

提醒:逻辑备份一样平常是数据迁徙可能数据量很小时回收,逻辑备份回收的是数据导出的方法

2.1mysqldump库表等备份声名:

全备:

  1. Mysqldump –uroot –p  -q –single-transaction –A >>all.sql 

导出多个数据库:

  1. Mysqldump –uroot –p  -q –single-transaction –B  test01 wjw01 test02 >test01_wjw01_test02.sql 

导出一个test库的某张wjw01表:

  1. Mysqldump –uroot –p  -q –single-transaction –b  test  wjw01>>test_wjw01.sql 

只导出表布局:

  1. Mysqldump –uroot –q –d  --skip-triggers 

只必要导出储存进程时:

  1. Mysqldump –uroot –q -Rtdn  --skip-triggers 

只必要导出触发器:

  1. Mysqldump –uroot –p –q –tdn –triggers 

只必要导失变乱:

  1. Mysqldump –uroot –p –q –Etdn –skip-triggers

只必要导出数据:

  1. Mysqldump –uroot –p –q  --skip-transaction --skip-triggers –t 

要想在线上成立一台新的slave,则在master上执行如下呼吁:

  1. Mysqldump –uroot –p –q –single-transaction –master-data=2 -A >>all.sql 

提醒:在mysql5.5里增进了一个新的参数:--dump-slave,行使该参数可在slave端dump数据,成立新的slave,其目标是为了防备对主库造成过大的压力。

在slave上执行以下呼吁:

  1. Mysqldump  -uroot –p  -A –dump-slave=2 –q –single-transaction >/tmp/all.sql 

查察alls.sql 内里会记录slave上的谁人点。

留意:--dump-slave用于在slave上dump数据,成立新的slave

2.2Mysqldump优弱点以及行使场景

利益:

  1. 规复简朴,可以行使管道将他们输入到mysql
  2. 与存储引擎无关,由于是从MySQL处事器中提取数据而天生的,以是消除了底层数据存储的差异
  3. 有助于停止数据破坏。若磁盘驱动器有妨碍而要复制原始文件时,此时将获得一个破坏的备份

弱点:

  1. 必需稀有据库处事器完成逻辑事变,必要更多地cpu周期
  2.  逻辑备份还原速率慢:必要MySQL加载息争释语句、转化存储名目、重建引擎

行使场景:对付MySQL数据库数据量不是很大的场景,提议行使。由于备份利便,简朴机动,易操纵

当数据库出格的时辰,好比30G以上时,备份MySQL数据时,也就提议不要回收mysqldump了,由于备份的时刻以及规复数据库的时刻太长了,会对库表造成锁,对线上的营业影响照旧较量大的

2.3简朴先容下MySQL全量备份+增量备份binlog

留意:出产上凶猛提议MySQL开启Row名目来记录binlog,尽量这样对磁盘的IO以及磁盘的空间的耗损是较量大,可是和数据的安详性、完备性对比,磁盘资源那都是小事

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读