目录

数据库备份的几种方式的详细步骤

目录

数据库备份的几种方式的详细步骤

*数据库备份的几种方式的详细步骤

如何冷备??

1.保证2台机器上软件版本一致,最好安装版本也一致

A:原机 B:恢复机

对于原机:

2.将mysql数据库关闭

service mysqld stop

3.scp 拷贝到要进行恢复的机器上

scp -r /usr/local/mysql/data/* :/usr/local/mysql/data/ **数据库备份的几种方式的详细步骤

如何冷备??

1.保证2台机器上软件版本一致,最好安装版本也一致

A:原机 B:恢复机

对于原机:

2.将mysql数据库关闭

service mysqld stop

3.scp 拷贝到要进行恢复的机器上

scp -r /usr/local/mysql/data/* :/usr/local/mysql/data/数据库备份的几种方式的详细步骤

如何冷备??

1.保证2台机器上软件版本一致,最好安装版本也一致

A:原机 B:恢复机

对于原机:

2.将mysql数据库关闭

service mysqld stop

3.scp 拷贝到要进行恢复的机器上

scp -r /usr/local/mysql/data/* :/usr/local/mysql/data/

https://i-blog.csdnimg.cn/blog_migrate/3458a3532f5461a4beb6fecd03d0e03b.png 4.可以正常启动mysql数据库

对于恢复机

5.将mysql数据库关闭

6.注意data目录的mysql权限 https://i-blog.csdnimg.cn/blog_migrate/7b1e90b0312ab4ae0c525d0422a1e253.png 7.启动mysql数据库 备份完成

使用mysqldump进行逻辑备份

1.查看mysqldump的使用格式 https://i-blog.csdnimg.cn/blog_migrate/f7c619cd214d9ce340d6111e407b7a2e.png 2.在使用mysqldump之前需要在my.cnf配置文件里指定socket文件,否则会报错 https://i-blog.csdnimg.cn/blog_migrate/baba4bfb4c48690c1237115a86b0afb9.png 3.可以使用mysqldump进行逻辑备份 https://i-blog.csdnimg.cn/blog_migrate/69fe4a40ec6cc9fd17d94184b18e2732.png 4.查看生成的两个文件

(1)cat ceshi.sql //查看建表语句的文件 https://i-blog.csdnimg.cn/blog_migrate/97bfd1655103568e5a066e52de86bb94.png (2) cat ceshi.txt //查看表中数据的文件 用于导入数据

https://i-blog.csdnimg.cn/blog_migrate/a62cb02fc85551d062f99abb28c742df.png 5.当前完成了对ceshi库的ceshi表进行了备份

6.模拟恢复,将ceshi库的ceshi表删除(drop),然后恢复

https://i-blog.csdnimg.cn/blog_migrate/13a7c69e82a488c7f0ce8ec9e1bb6c2a.png 7.导入建表语句,也就是ceshi.sql https://i-blog.csdnimg.cn/blog_migrate/4c368d46b7f7bdb9d42597ec923316ad.png

(1)使用mysqlimport 同样的需要在my.cnf配置文件中进行配置 https://i-blog.csdnimg.cn/blog_migrate/0c4605216f7b7b5429c80508af01ea01.png mysqlimport -uroot -p123 ceshi /tmp/ceshi.txt(注意使用绝对路径 https://i-blog.csdnimg.cn/blog_migrate/09d21cf2509ba4311423e3c265229c13.png 进入ceshi表查看数据是否存在 https://i-blog.csdnimg.cn/blog_migrate/4c5582070fc37cff2b7d0272246e1d5c.png (2)使用 load data导入数据 https://i-blog.csdnimg.cn/blog_migrate/04545895ac2e8f3c4e68f48f54c48db8.png 如何进行逻辑备份

举例:经典用法

mysqldump -uroot -p123 -l -F –single-transaction ceshi>ceshi.sql

-l:锁住myisam,不锁innodb

-F:刷新binlog,恢复的时候就可以直接使用新binlog开始恢复

–single-transaction:innodb不锁表和行

这个语句的含义是将ceshi库中的所有的建表语句,以及插入数据的语句等存放到ceshi.sql中

当恢复时,发现表结构恢复,表数据恢复

使用xtrabackup进行热备

1.首先上传xtraback软件包进行xtrabackup的安装 https://i-blog.csdnimg.cn/blog_migrate/c9c808c32704a31cc89a0f12eea7e9b7.png 2.安装完成之后可以使用innobackupex 敲两下tab验证

3.安装好之后进行物理全备

(1)创建备份目录 https://i-blog.csdnimg.cn/blog_migrate/1963ad329bb5b2680c8ac9554be38480.png (2)备份数据库(全备) 备份到刚创建的备份目录

[root@fuxi1 ~]# innobackupex –user=root –password=123 /backup/ https://i-blog.csdnimg.cn/blog_migrate/d8aac1dc56b39b23e54125312d4139e0.png 当出现190619 00:09:12 completed OK!说明备份成功 https://i-blog.csdnimg.cn/blog_migrate/f21d568e0ca4bc0e0c69a87f8e117932.png (3)当你开始从九点备份,备份持续了一个小时,xtrabackup工具会记录了你这一段时间的redo日志,这也是xtrabackup备份不是备份到开始时刻,而是备份到结束时刻。应用redo日志,将这一个小时又发生改变的数据完成备份

(4)应用redo(自带回滚)

应用redo时有添加redo-only(只前滚不回滚)的选项和不添加redo-only的选项,两者的区别在于有一个优化的区别,但不影响数据的一致性

[root@fuxi1 ~]# innobackupex –apply-log /backup/2019-06-19_00-09-07/ https://i-blog.csdnimg.cn/blog_migrate/293b7103a359cc021cb3f52ef92cb679.png 完成后也会有时间戳等的提示 https://i-blog.csdnimg.cn/blog_migrate/b09c360dd582130a945bfa81ab9e3ff9.png (5)关闭数据库

service mysqld stop

4.恢复演示

(1)为了保险起见,先对mysql配置文件进行下复制备份 https://i-blog.csdnimg.cn/blog_migrate/fcdc03ebdc4d2c4017b6ea76a790a7d5.png (2)将数据目录(datadir)清空 https://i-blog.csdnimg.cn/blog_migrate/f0a31a27833ee70d664380334bea48be.png (3)恢复数据库

[root@fuxi1 data]# innobackupex –copy-back /backup/2019-06-19_00-09-07/ https://i-blog.csdnimg.cn/blog_migrate/9c89c4292f4827f7c79188bb0e8cd0a4.png https://i-blog.csdnimg.cn/blog_migrate/db98ef58cea537e1c8f4367b91840911.png (4)修改数据目录的权限 https://i-blog.csdnimg.cn/blog_migrate/35e93d1d89eb3dd9372bc25147a2c72c.png (5)覆盖my.cnf配置文件 默认使用的my.cnf不用覆盖

(6)启动数据库

(7)查看端口有没有启动成功

(8)进入数据库查看数据是否恢复