2.mysql--备份恢复

完全备份:备份所有数据
增量备份:备份上次备份后,所有新产生的数据
差异备份:备份上次完全备份后,所有新产生的数据

1、物理备份恢复

[root@host1 ~]# cp -r /var/lib/mysql /root/mysql_all.bak
[root@host1 ~]# scp -r /root/mysql_all.bak 192.168.0.100:/root
[root@host1 ~]# systemctl stop mysqld
[root@host1 ~]# rm -rf /var/lib/mysql
[root@host1 ~]# cp -r /root/mysql_all.bak /var/lib/mysql/
[root@host1 ~]# chown -R mysql:mysql /var/lib/mysql/
[root@host1 ~]# systemctl start mysqld

2、逻辑备份恢复

(1). mysqldump 备份
导出数据:
1.导出结构不导出数据
[root@host1 ~]# mysqldump --opt -d 数据库名 -u root -p > xxx.sql 
2.导出数据不导出结构
[root@host1 ~]# mysqldump -t 数据库名 -uroot -p > xxx.sql 
3.导出数据和表结构
[root@host1 ~]# mysqldump 数据库名 -uroot -p > xxx.sql 
4.导出特定表的结构
[root@host1 ~]# mysqldump -uroot -p -B 数据库名 --table 表名 > xxx.sql  

导入数据:
由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:
[root@host1 ~]# mysql 数据库名 < 文件名
或
mysql> source /tmp/xxx.sql  


//备份所有库
[root@host1 ~]# mysqldump -uroot -p --all-databases > all.sql
//还原所有库
[root@host1 ~]# mysql -u root -p < all.sql

//备份wechat库
[root@host1 ~]# mysqldump -u root -p wechat > /root/backup_wechat.dump
//还原wechat库
[root@host1 ~]# mysql -u root -p wechat < /root/backup_wechat.dump
或
mysql> source /root/backup_wechat.dump

mysql用mysqldump导出数据库时提示“-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.”
因为mysqldump默认是不备份事件表的,只有加了–events 才会解决加上–events --ignore-table=mysql.events参数即可:
mysqldump -uroot -pxxxxx --events --ignore-table=mysql.events --all-databases > all.sql

mysql5.6版本以上不支持命令行直接加密码导出,认证不安全后会直接中断命令,解决办法:(此操作无需重启mysql)

vim /etc/my.cnf

[mysqldump]
user=***
password=***

(2). innobackupex 备份

完全备份:

[root@host1 ~]# innobackupex --user root --password 123456 /bakdir --no-timestamp

完全恢复:1、准备恢复数据
2、拷贝备份文件到数据库目录下
3、修改文件所有者和组用户为 mysql
4、启动数据库服务
完全恢复:

[root@host1 ~]# rm -rf /var/lib/mysql
[root@host1 ~]# mkdir /var/lib/mysql
[root@host1 ~]# innobackupex --user root --password 123456 --copy-back /bakdir
[root@host1 ~]# chown -R mysql:mysql /var/lib/mysql
[root@host1 ~]# systemctl start mysqld

增量备份:

//完全备份
 [root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” /fullback --no-timestamp
//第1 次增量备份
 [root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” --incremental /new1 --incremental-basedir="/fullback" --no-timestamp1 次增量备份
 [root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” --incremental /new2 --incremental-basedir="/new1" --no-timestamp

增量恢复:

[root@host1 ~]# rm -rf /var/lib/mysql
[root@host1 ~]# mkdir /var/lib/mysql
//完整恢复
[root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” --apply-log --redo-only /fullback
//第 1 次增量恢复
[root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” --apply-log --redo-only /fullback --incremental-dir="/new1"
//第 2 次增量恢复
[root@host1 ~]# innobackupex --user root --password 123456 --databases=“库名列表” --apply-log --redo-only /fullback --incremental-dir="/new2"
[root@host1 ~]# chown -R mysql:mysql /var/lib/mysql
[root@host1 ~]# systemctl restart mysqld

innobackupex 选项:
–host 主机名
–user 用户名
–port 端口号
–password 密码
–databases 数据库名
–no-timestamp 不用日期命名备份文件存储的子目录
–redo-only 日志合并
–apply-log 准备还原(回滚日志)
–copy-back 恢复数据
–incremental 目录名 增量备份
–incremental-basedir=目录名 增量备份时,指定上一次备份数据存储的目录
–incremental-dir=目录名 准备恢复数据时,指定增量备份数据存储的目录名
–export 导出表信息
–import 导入表信息
–stream= 指定流的格式做备份

相关推荐

  1. 2.mysql--备份恢复

    2024-05-11 10:08:09       10 阅读
  2. Mysql-备份恢复

    2024-05-11 10:08:09       36 阅读
  3. MYSQL-备份恢复

    2024-05-11 10:08:09       21 阅读
  4. mysql数据库备份恢复

    2024-05-11 10:08:09       22 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-11 10:08:09       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-11 10:08:09       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-11 10:08:09       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-11 10:08:09       20 阅读

热门阅读

  1. Spring Cloud LoadBalancer 4.1.2

    2024-05-11 10:08:09       8 阅读
  2. Acwing2024蓝桥杯并查集

    2024-05-11 10:08:09       15 阅读
  3. 什么是中间件

    2024-05-11 10:08:09       9 阅读
  4. 关于SpringBoot MVC接口超时时间的分析

    2024-05-11 10:08:09       12 阅读
  5. C#爬虫爬取某东商品信息

    2024-05-11 10:08:09       9 阅读
  6. TVM简介

    TVM简介

    2024-05-11 10:08:09      11 阅读
  7. Lua(0)环境搭建与基础代码

    2024-05-11 10:08:09       14 阅读
  8. GraphQL在现代Web应用中的应用与优势

    2024-05-11 10:08:09       13 阅读