首页 数据库 mysql教程 企业之Mysql备份恢复

企业之Mysql备份恢复

Jun 07, 2016 pm 05:39 PM
mysql备份 数据库备份恢复

为什么要备份:备份的几个重要理由:灾难恢复、需求改变、审计、测试等;如测试定期用最新的生产环境中的数据更新到测试环境服务器需要考虑的问题:1、在不导致严

7、对于安全性要考虑周全,如果有人能接触到生产服务器,他是否能访问备份服务器

使用Mysqldump备份工具实现完全备份,并结合二进制日志实现增量备份

   特点:逻辑备份工具、支持InnoDB热备份、MyISAM温备份;备份与恢复较慢

使用LVM逻辑卷快照功能实现几乎热血备份的完全备份,并结合二进制日志实现增量备份;简单介绍"mylvmbackup"一键备份工具的使用

   特点:几乎接近于热备份、物理备份、备份与恢复较快

使用Xtrabackup备份工具实现完全备份与增量备份

   特点:物理备份工具、支持InnoDB热备份、MyISAM温备份、速度较快

一、环境准备

1、安装Mysql数据库服务器

######安装编译环境 [root@localhost ~]# yum -y groupinstall "Server Platform Development" "Development tools" ######安装编译工具 [root@localhost ~]# yum install -y cmake ######创建Mysql用户 [root@localhost ~]# useradd -r mysql ######解压并安装Mysql [root@localhost ~]# tar xf mysql-5.5.33.tar.gz [root@localhost ~]# cd mysql-5.5.33 [root@localhost mysql-5.5.33]# cmake . \ > -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径 > -DMYSQL_DATADIR=/mydata/data \ #数据存放路径 > -DSYSCONFDIR=/etc \ #主配置文件目录 > -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #下面三项启用支持的存储引擎 > -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ > -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ > -DWITH_READLINE=1 \ #支持readline库 > -DWITH_SSL=system \ #支持SSL加密 > -DWITH_ZLIB=system \ #支持ZLIB压缩 > -DWITH_LIBWRAP=0 \ #支持Libwrap库 > -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ #Sock文件路径 > -DDEFAULT_CHARSET=utf8 \ #默认字符集 > -DDEFAULT_COLLATION=utf8_general_ci #默认字符集排序规则 ######编译并安装 [root@localhost mysql-5.5.33]# make && make install 注释: 如果想清理此前的编译所生成的文件,则需要使用如下命令 make clean rm CMakeCache.txt

2、为Mysql提供主配置文件与Sysv服务脚本

######为Mysql提供主配置文件 [root@localhost mysql-5.5.33]# cp support-files/my-large.cnf /etc/my.cnf ######为Mysql提供Sysv服务脚本 [root@localhost mysql-5.5.33]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld ######赋于Sysv脚本执行权限 [root@localhost mysql-5.5.33]# chmod +x /etc/rc.d/init.d/mysqld ######将Mysqld加入系统服务 [root@localhost mysql-5.5.33]# chkconfig --add mysqld [root@localhost mysql-5.5.33]# chkconfig mysqld on

3、让系统识别源码包安装的软件

[root@localhost mysql]# echo "PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile [root@localhost mysql]# . /etc/profile [root@localhost mysql]# ln -s /usr/local/mysql/include /usr/include/mysql [root@localhost ~]# echo "/usr/local/mysql/lib" >> /etc/ld.so.conf [root@localhost ~]# ldconfig

4、修改Mysql主配置文件

[root@localhost mysql]# vim /etc/my.cnf datadir = /mydata/data #添加此行,数据存放目录 innodb_file_per_table = 1 #启用InnoDB表每表一个文件,,默认所有数据库使用一个表空间 log-bin=/binlog/mysql-bin #修改二制作存放目录5、为Mysql创建数据与二投井

5、为Mysql创建数据库与二进制存放目录

######创建数据、二进制存放目录与备份目录 [root@localhost ~]# mkdir -p /backup /mydata/data /binlog ######修改Mysql二进制与数据及备份目录的属主、属组为Mysql用户 [root@localhost mysql]# chown -R mysql.mysql /mydata/data [root@localhost mysql]# chown -R mysql.mysql /binlog /backup ######修改Mysql安装目录的属组为Mysql组 [root@localhost mysql]# chown -R :mysql *

6、初始化Mysql并启动服务

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/mydata/data [root@localhost ~]# service mysqld start Starting MySQL......... SUCCESS! ######修改Mysql的root用户密码 [root@localhost ~]# mysqladmin -uroot password 'root@pass'

7、创建测试数据库与表并插入数据

[root@localhost ~]# mysql -uroot -proot@pass mysql> create database allen; mysql> use allen; mysql> create table tab1 (ID tinyint unsigned not null primary key auto_increment,Name char(20) not null unique key,Age tinyint unsigned,Gender char(1) default 'M'); mysql> insert into tab1 (Name,Age,Gender) values ('Zhang WuJi',26,'M'),('Zhao Min',24,'F');

二、使用Mysqldump备份工具备份

1、使用Mysqldump对"allen"数据库做备份并且滚动二进制日志,记录日志位置

[root@localhost ~]# mysqldump -uroot -proot@pass --lock-all-tables --routines --events --triggers --master-data=2 --flush-logs --databases allen > /backup/allen_`date +%F`.sql 注释: -u #指定用户名 -p #指定用户密码 -h #指定主机地址 -A|--all-databases #备份所有数据库 --databases #备份指定数据库 --single-transcation #基于此项可以实现对InnoDB表做热备份,但不需要使用 --lock-all-tables #执行备份时为所有表请求加锁 -E|--events #备份事件调度器代码 --opt #同时启动各种高级选项 -R|--routines #备份存储过程和存储函数 --flush-logs #备份之前刷新日志 --triggers #备份触发器 --master-data=2 #该选项将会记录binlog的日志位置与文件名并追加到文件中,如果为1将会输出CHANGE MASTER命令,主从下有用 ######更多选项请参考man手册
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热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

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

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用MySQL的数据备份和恢复工具实现灾备 如何使用MySQL的数据备份和恢复工具实现灾备 Aug 02, 2023 am 09:06 AM

如何使用MySQL的数据备份和恢复工具实现灾备在数据库管理过程中,数据备份和恢复是非常重要的一环。通过备份数据可以保护数据库免受意外损坏、硬件故障或者其他灾难性事件的影响。MySQL作为一个流行的关系型数据库管理系统,提供了一些强大的工具来实现数据备份和恢复。本文将介绍如何使用MySQL的数据备份和恢复工具来实现灾备。MySQL的数据备份工具-mysql

如何有效管理和维护MySQL数据库中的ibd文件 如何有效管理和维护MySQL数据库中的ibd文件 Mar 16, 2024 am 11:21 AM

在MySQL数据库中,每个InnoDB表都对应着一个.ibd文件,这个文件存储了表的数据和索引。因此,对于MySQL数据库的管理和维护,ibd文件的管理也显得尤为重要。本文将介绍如何有效管理和维护MySQL数据库中的ibd文件,并提供具体的代码示例。1.检查和优化表空间首先,我们可以使用以下SQL语句检查表的磁盘空间使用情况:SELECTTAB

MySql的多种备份方案:如何高效创建和恢复MySQL备份 MySql的多种备份方案:如何高效创建和恢复MySQL备份 Jun 15, 2023 pm 03:28 PM

MySql是一种常用的关系型数据库管理系统,被广泛应用于各种业务和应用场景中。对于MySQL的备份问题,备份方案的选择和执行方法至关重要。在本文中,我们将介绍多种备份方案,以及如何高效地创建和恢复MySQL备份。一、备份方案的选择在选择MySQL备份方案的过程中,应该根据业务场景和实际情况,选择适合自己的备份方案。冷备份所谓的冷备份,就是在MySQL数据库完

mysql安装后如何进行数据库备份与恢复 mysql安装后如何进行数据库备份与恢复 Apr 08, 2025 am 11:45 AM

MySQL数据库备份恢复方案没有绝对最佳,需根据数据量、业务重要性、RTO和RPO选择。1.逻辑备份(mysqldump)简单易用,适合小型数据库,但速度慢,文件巨大;2.物理备份(xtrabackup)速度快,适合大型数据库,但使用较复杂。备份策略需考虑备份频率(RPO决定)、备份方法(数据量、时间要求决定)和存储位置(异地存储更安全),并定期测试备份和恢复流程,避免备份文件损坏、权限问题、存储空间不足、网络中断和未测试等问题,确保数据安全。

MySql的数据库备份:如何实现高效的MySQL数据库备份和恢复 MySql的数据库备份:如何实现高效的MySQL数据库备份和恢复 Jun 15, 2023 pm 11:37 PM

MySQL是目前使用最广泛的关系型数据库管理系统之一,它的高效性和可靠性使得它成为了众多企业和开发者的首选。但是由于各种原因,我们需要对MySQL数据库进行备份。备份MySQL数据库并不是一项容易的任务,因为一旦备份失败,可能会导致重要数据的丢失。因此,为了确保数据的完整性和可恢复性,必须采取一些措施来实现高效的MySQL数据库备份和恢复。本文将介绍如何实现

MySQL实现数据的滚动备份技巧 MySQL实现数据的滚动备份技巧 Jun 15, 2023 pm 07:47 PM

MySQL是一种流行的关系型数据库,广泛应用于各个领域。然而,与其它应用程序一样,MySQL存在风险,如数据损坏、崩溃和不良攻击等。因此,备份数据至关重要。备份可以为数据提供安全性和某种形式的“撤销”功能,减少甚至消除不稳定性和风险。最常见的备份类型是完全备份和增量备份。但是,如果您需要频繁的、实时的备份,那么滚动备份就是一种更好的方法。滚动备份是指在可接受

MySQL备份与恢复全面指南 MySQL备份与恢复全面指南 Jun 15, 2023 am 09:48 AM

MySQL是目前最流行的关系型数据库管理系统之一,在企业级应用中被广泛使用。无论是开发者还是数据管理员,都需要了解MySQL备份与恢复的基本知识。备份和恢复不仅能够帮助企业保护数据,还能够使系统在不良情况下快速应对,尽可能使其恢复到正常运行状态。本文将详细介绍MySQL备份与恢复的操作步骤,并提供一些最佳实践,以帮助读者在保护其MySQL数据库方面走得更远。

MySQL数据库备份与恢复性能调优的项目经验解析 MySQL数据库备份与恢复性能调优的项目经验解析 Nov 04, 2023 am 09:46 AM

MySQL数据库备份与恢复性能调优的项目经验解析在日常运维中,MySQL数据库备份与恢复的工作是不可或缺的。然而,面对数TB甚至PB级别的数据规模,备份恢复所需的时间和资源消耗往往成为制约数据库性能的关键因素。本文将通过一个大型互联网企业备份恢复性能调优的实践案例,分享一些实用的经验和技巧。一、备份方案选择针对不同的业务需求和数据规模,备份方案的选择也应考虑

See all articles