当前位置: 首页 > news >正文

0基础学网站建设山东百度推广代理

0基础学网站建设,山东百度推广代理,做曖网站,wordpress设置免审核1. 常用的mysql备份工具 物理备份缺点: 跨平台差。备份时间长、冗余备份、浪费存储空间。 解释如下:如Linux操作系统和Windows操作系统之间,由于文件系统不一样,如Linux操作系统的文件系统是ext4、xfs,Windows操作系统…

1. 常用的mysql备份工具

  • 物理备份缺点:
  • 跨平台差。
  • 备份时间长、冗余备份、浪费存储空间。
    解释如下:
  • 如Linux操作系统和Windows操作系统之间,由于文件系统不一样,如Linux操作系统的文件系统是ext4、xfs,Windows操作系统的文件系统是FAT16/32、NTFS,这样可能会导致数据读写的问题。
  • 由于物理备份用的是cp命令,所以可能会导致拷贝的时间很长,而且可能会存在重复的内容占用空间,导致空间变大浪费存储空间。
  • mysqldump备份缺点:
  • 效率较低、备份和还原速度慢、锁表。
  • 备份过程中,数据插入和更新操作被阻塞。
    解释如下:
  • 正常公司的数据量非常大几十个G,一般几十个G备份需要一两个小时,在备份期间不能数据插入和更新导致阻塞。
  • binlog增量备份缺点:
  • 在进行范围内备份恢复的时候,我们需要在日志文件中寻找起始偏移量和结束偏移量或者起始时间和结束时间,当日志文件非常庞大的时候,这样的操作就很变得很繁琐。
  • XtraBackup 工具介绍:
  • 一款强大的在线热备份工具,备份过程中不锁库表,适合生产环境。
  • 由专业组织Percona提供(改进MySQL分支)。
  • 主要包含两个组件:
  1. xtrabackup:C程序,支持InnoDB/XtraDB。
  2. Innobackupex:以Perl脚本封装xtrabackup,还支持MyISAM。
    注:Innobackupex这个组件只有数据库使用InnoDB存储引擎时可以实现增量备份。

2. 安装percona软件

2.1. 官网下载软件包:

官网地址:https://www.percona.com/downloads
##下载软件包[root@localhost ~]# wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.8/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.8-1.el7.x86_64.rpm

2.2. 安装软件包

  • 环境需要两台服务器都安装mysql,备份在A服务器,恢复在B服务器
  • 软件两台服务器都需要安装
yum -y install percona-xtrabackup-24-2.4.8-1.el7.x86_64.rpm

3. innobackupex 命令介绍:

在这里插入图片描述

在这里插入图片描述

3.1. 命令格式

  • 完全备份:
innobackupex  --user  用户名   --password  密码  备份目录名   --no-timestamp
  • 完全恢复:
innobackupex  --apply-log 目录名  ---准备恢复数据
innobackupex  --copy-back 目录名   ---恢复数据	
  • 增量备份:
innobackupex  --user  --password 密码 --incremental  增量目录  --incremental-basedir=完全备份目录  --no-timestamp
  • 增量恢复:
innobackupex  --apply-log  --redo-only 完全备份目录    ---合并日志   
innobackupex  --apply-log  --redo-only 完全备份目录  --incremental-dir  目录名   ---准备恢复数据
innobackupex  --copy-back  目录名   --恢复数据

4. 完整备份与恢复

##创建数据库
create database db1 default charset=utf8mb4;
##创建表格
use db1;
create table t1(id int primary key auto_increment,name char(20)not null)engine=innodb;
##插入数据
insert into t1(name) values('bob'),('tom'),('andy'),('abel'),('adam'),('ada'),('alice'),('afra');
select * from t1;
+----+-------+
| id | name  |
+----+-------+
| 1  | bob   |
| 2  | tom   |
| 3  | andy  |
| 4  | abel  |
| 5  | adam  |
| 6  | ada   |
| 7  | alice |
| 8  | afra  |
+----+-------+
##备份db1数据库
[root@localhost ~]# innobackupex --user root --password 1234 --databases db1  /data/backup	  --不加--no-timestamp会自动创建一个当前时间子目录。
[root@localhost ~]# ls /data/backup/  
2023-02-15_16-08-40    ---这个目录就是不加--no-timestamp创建的子目录##备份所有数据库:
这里不加--databases 这个选项就代表备份所有库
[root@localhost ~]# innobackupex --user root --password 1234   /data/backup   --no-timestamp[root@localhost ~]# ls /data/backup/  --查看备份的数据
2023-02-15_16-08-40  db1             ibdata1  performance_schema  xtrabackup_binlog_info  xtrabackup_info
backup-my.cnf        ib_buffer_pool  mysql    sys                 xtrabackup_checkpoints  xtrabackup_logfile
###删除备份db1库
[root@localhost backup]# rm -rf /data/backup/2023-02-15_16-08-40/
##把所有库备份数据传给B服务器
[root@localhost backup]# scp -r /data/backup/ 192.168.2.20:/root
##在B服务器恢复所有数据
[root@localhost ~]# systemctl stop mysqld
[root@localhost ~]# rm -rf /var/lib/mysql/*    ---必须清空mysql数据目录的内容,不然下面恢复失败
[root@localhost ~]# innobackupex --apply-log /root/backup/    ---准备恢复数据
[root@localhost ~]# innobackupex --copy-back /root/backup/   ---恢复数据
##修改mysql目录下的数据所属主和所属组
[root@localhost ~]# chown -R mysql. /var/lib/mysql
##登录mysql查看db1库的t1表
mysql> select * from db1.t1;
+----+-------+
| id | name  |
+----+-------+
|  1 | bob   |
|  2 | tom   |
|  3 | andy  |
|  4 | abel  |
|  5 | adam  |
|  6 | ada   |
|  7 | alice |
|  8 | afra  |
+----+-------+
---数据已经

4.1. 使用完全备份数据恢复1张表的所有数据

[root@localhost ~]# ls /var/lib/mysql/db1/
db.opt  t1.frm  t1.ibd
t1.frm   ---是t1表结构
t1.ibd   ---是t1表空间
表空间:存储数据的表文件。
###删除t1的表空间
mysql> alter table db1.t1 discard tablespace;
Query OK, 0 rows affected (0.00 sec)
##查看是否删除成功
mysql> system ls /var/lib/mysql/db1;
db.opt  t1.frm
##导出表信息
[root@localhost ~]# ls backup/db1/
db.opt  t1.frm  t1.ibd
[root@localhost ~]# innobackupex --apply-log --export /root/backup/
##验证
[root@localhost ~]# ls backup/db1/
db.opt  t1.cfg  t1.exp  t1.frm  t1.ibd	
t1.cfg  t1.exp   ---这两个是表信息日志文件
##拷贝表信息文件到数据库目录下:
[root@localhost ~]# cp -r backup/db1/t1.{ibd,cfg,exp}    /var/lib/mysql/db1/
##查看是否拷贝成功
[root@localhost ~]# ls /var/lib/mysql/db1/
db.opt  t1.cfg  t1.exp  t1.frm  t1.ibd
##修改表信息文件的所属者及组为mysql
[root@localhost ~]# chown -R mysql. /var/lib/mysql
##导入表空间:
mysql> alter table db1.t1 import tablespace;
##删除表信息文件
[root@localhost ~]# rm -rf /var/lib/mysql/db1/t1.{cfg,exp}
##查看是否恢复成功
mysql> select * from db1.t1;
+----+-------+
| id | name  |
+----+-------+
|  1 | bob   |
|  2 | tom   |
|  3 | andy  |
|  4 | abel  |
|  5 | adam  |
|  6 | ada   |
|  7 | alice |
|  8 | afra  |
+----+-------+
8 rows in set (0.00 sec)

5. 增量备份与恢复

  • 增量备份:备份上次备份后所有新产生的数据。
  • 增量备份时,必须先有一次备份,通常是完全备份。
  • 一般周一完全备份,周二~周日增量备份。
  • 增量备份原理:

在执行增量备份时,会从事务日志文件对比上次备份的last_lsn序列值是否有变化,如果有变化说明产生了新数据,然则无,增量备份是从上次备份的to_lsn序列值作为from_lsn(起点序列值)开始备份。

  • 增量备份的恢复原理:

在执行增量恢复命令时,首先把增量备份的数据拷贝到完全备份目录下,并修改xtrabackup_checkpoints的结束序列号(把增量备份的结束序列号改为完全备份目录的xtrabackup_checkpoints序列号为结束序列号)然后把完全备份目录的数据拷贝至/var/lib/mysql/目录(拷贝之前保证此目录为空)

###继续往db1.t1表插入内容。
insert into t1(name) values('eden'),('john'),('noah'),('amos');
##查看表格
select * from t1;
+----+-------+
| id | name  |
+----+-------+
| 1  | bob   |
| 2  | tom   |
| 3  | andy  |
| 4  | abel  |
| 5  | adam  |
| 6  | ada   |
| 7  | alice |
| 8  | afra  |
| 9  | eden  |
| 10 | john  |
| 11 | noah  |
| 12 | amos  |
+----+-------+
##增量备份:
[root@localhost ~]#  innobackupex --user root --password 1234 --incremental /data/zlbf/  --incremental-basedir=/data/backup
##查看备份内容:
[root@localhost ~]# ls /data/zlbf/2023-02-16_10-32-46/
backup-my.cnf  ib_buffer_pool  ibdata1.meta  performance_schema  xtrabackup_binlog_info  xtrabackup_info
db1            ibdata1.delta   mysql         sys                 xtrabackup_checkpoints  xtrabackup_logfile
##查看xtrabackup_checkpoints文件内容
[root@localhost ~]# cat /data/backup/xtrabackup_checkpoints
backup_type = full-backuped    ---备份类型为完全备份
from_lsn = 0                   ---备份起点为0
to_lsn = 3189344               ---备份结束为3189344
last_lsn = 3189353             ---事务日志文件目录最后的系列号
compact = 0
recover_binlog_info = 0
[root@localhost ~]# cat /data/zlbf/2023-02-16_10-32-46/xtrabackup_checkpoints
backup_type = incremental    ---备份类型为增量备份
from_lsn = 3189344           ---这个备份起点是前面完全备份的终点
to_lsn = 3191428             ----备份终点
last_lsn = 3191437
compact = 0
recover_binlog_info = 0
##lsn:日志序列号,记录执行的SQL命令的编号,表的存储引擎必须是innodb。
##查看事务日志文件
[root@localhost ~]# ls /var/lib/mysql/ib_logfile*
/var/lib/mysql/ib_logfile0  /var/lib/mysql/ib_logfile1
##增量恢复:此操作在B服务器上执行
[root@localhost ~]# scp -r /data/zlbf/2023-02-16_10-32-46/ 192.168.2.20:/root/  ---把增量备份文件拷贝至B服务器。
[root@localhost ~]# innobackupex --apply-log  --redo-only  /root/backup/
[root@localhost ~]# innobackupex --apply-log  --redo-only  /root/backup/  --incremental-dir  /root/2023-02-16_10-32-46/
[root@localhost ~]# systemctl stop mysqld.service
[root@localhost ~]# rm -rf /var/lib/mysql/*
[root@localhost ~]#  innobackupex  --copy-back  /root/backup/
[root@localhost ~]# chown -R mysql. /var/lib/mysql
[root@localhost ~]# systemctl restart mysqld
###验证:
[root@localhost ~]# mysql -uroot -p1234 -e " select * from db1.t1;"
mysql: [Warning] Using a password on the command line interface can be insecure.
+----+-------+
| id | name  |
+----+-------+
|  1 | bob   |
|  2 | tom   |
|  3 | andy  |
|  4 | abel  |
|  5 | adam  |
|  6 | ada   |
|  7 | alice |
|  8 | afra  |
|  9 | eden  |
| 10 | john  |
| 11 | noah  |
| 12 | amos  |
+----+-------+
http://www.dinnco.com/news/11155.html

相关文章:

  • flash网站开源新站快速收录
  • 淮南市网站开发的方式请你设计一个网络营销方案
  • 如何制作小程序操作流程台州seo公司
  • 网站做蜘蛛池有用吗河源新闻最新消息
  • 给城市建设提议献策的网站在线网页生成器
  • 妙趣网 通辽网站建设站长
  • 网站建设培训心得淘宝宝贝关键词排名查询工具
  • 长春长春网站建设网seo网络营销技术
  • 洛阳数码大厦做网站的在几楼单页网站制作教程
  • 武汉哪家做营销型网站好如何做网站优化seo
  • 做wish如何利用数据网站百度客服24小时人工服务
  • 重庆网站布局信息公司开发app需要多少资金
  • 网站建设网络推广代理公司一个网站如何推广
  • 做经营性的网站需要注册什么条件今日新闻国际最新消息
  • 贸易公司做网站有优势吗腾讯广告
  • 网站开发和界面的区别网站改进建议有哪些
  • 中国企业信息公示网登录官网北京seo公司wyhseo
  • 1t网站空间主机多少钱百度付费推广有几种方式
  • 建设网站号码是多少网站统计平台
  • 网站改了关键词口碑营销的例子
  • wordpress字段管理东莞seo建站优化工具
  • wordpress快站厦门seo哪家强
  • 威海做网站公司seo网站推广优化
  • 做网站的windowlcd关键词搜索引擎
  • 韩语网站建设济南seo优化公司助力网站腾飞
  • 房地产 东莞网站建设百度官方app下载
  • 购物网站开发会遇到的的问题网络营销的传播手段
  • 我国政府网站建设与管理的现状买卖链接网站
  • 中山建网站全网推广哪家正宗可靠
  • 商丘网站建设的公司哪家好怎么开发自己的小程序