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

长春好的做网站公司潍坊 网站

长春好的做网站公司,潍坊 网站,网站开发自学网,数字营销策划方案一、mysql的备份及恢复方法#xff1a; 1.完全备份与恢复 1.1物理备份与恢复 物理备份又叫冷备份#xff0c;需停止数据库服务#xff0c;适合线下服务器 备份数据流程#xff1a; 第一步:制作备份文件 systemctl stop mysqld #创建存放备份文件的目录 mkdir /bakdir … 一、mysql的备份及恢复方法 1.完全备份与恢复 1.1物理备份与恢复 物理备份又叫冷备份需停止数据库服务适合线下服务器 备份数据流程 第一步:制作备份文件 systemctl stop mysqld #创建存放备份文件的目录 mkdir /bakdir #拷贝数据源文件 cp -r /var/lib/mysql /bakdir/mysql.bak cd /var/lib/mysql #打包压缩数据源文件 tar -zcvf /bakdir/mysql.tar.gz ./* 查看备份文件 ls /bakdir mysql.bak mysql.tar.gz 看使用场景习惯使用压缩包就使用mysql.tar.gz第二步:删除原来的数据库数据 rm -rf /var/lib/mysql/*第三步:恢复数据 1.使用压缩包恢复数据 #解压缩备份包 tar -xf /bakdir/mysql.tar.gz -C /var/lib/mysql/ #启动mysqld systemctl start mysqldmysql -uroot -p密码 回车 mysql show databases;或者2.使用cp拷贝的备份文件恢复数据 systemctl stop mysqld rm -rf /var/lib/mysql/* cp -r /bakdir/mysql.bak/* /var/lib/mysql/ chown -R mysql:mysql /var/lib/mysql #启动mysqld systemctl start mysqldmysql -uroot -p密码 回车 mysql show databases; 1.2mysqldump备份与恢复 热备份,备份和恢复数据库服务必须是运行的 // 备份1张表 mysqldump -uroot -p密码 库 表 /bakdir/db1_tb1.sql // 备份多张表 mysqldump -uroot -p密码 库 表1 表2 表n /bakdir/db1_tb1_tb2_tbn.sql // 备份多张表.sql // 备份一个库 mysqldump -uroot -p密码 -B 表1 /bakdir/tb1.sql // 备份多个库 mysqldump -uroot -p密码 -B db1 db2 /bakdir/db1_db2.sql // 备份所有库 mysqldump -uroot -p密码 -A /bakdir/allbak.sql 恢复数据(覆盖恢复数据) 第一种:恢复库数据步骤: 1. 删除库 mysql -uroot -p密码 #登录 mysql drop database db1; //删除库 mysql exit 2. 命令行导入库数据 mysql -uroot -p密码 /bakdir/db1.sql //恢复数据 3. mysql登录验证 mysql -uroot -p密码 #登录 mysql use db1; //进库 mysql show tables; //看表第二种:恢复表数据步骤: 1. 删除表记录 mysql delete from tb1; //删除表记录 mysql exit 2. 命令行导入表文件 mysql -uroot -p密码 db1 /bakdir/db1_tb1.sql 3. mysql登录验证 mysql -uroot -p密码 #登录 mysql select count(*) from db1.tb1; //查看行数 注意:mysqldump备份和恢复数据会锁表,锁表期间无法对表访问,mysqldump适合备份数据量比较小的数据或在数据库服务器访问量少的时候备份 2.增量备份与恢复 增量备份:备份上次备份后,新产生的数据 xtrabackup是一款强大的在线热备份工具,备份过程中不锁库和表,适合生产环境. 支持完全备份与恢复,增量备份与恢复,差异备份与恢复. 准备2台虚拟机node1、node2 2.0 安装软件 //把软件拷贝到虚拟机里 scp /percona-xtrabackup-8.0.26-18-Linux-x86_64.glibc2.12-minimal.tar.gz rootnode1:/root/ //安装依赖 yum -y install perl-DBD-MySQL //解压源码 tar -xf percona-xtrabackup-8.0.26-18-Linux-x86_64.glibc2.12-minimal.tar.gz //移动并改名 mv percona-xtrabackup-8.0.26-18-Linux-x86_64.glibc2.12-minimal /usr/local/percona //把命令添加到系统环境变量 vim /etc/bashrc export PATH/usr/local/percona/bin:$PATH 添加在文件末尾 :wq source /etc/bashrc //查看帮助信息 man xtrabackup (按q 退出)2.1 着手增量备份工作 对数据做增量备份前,必须先有一次备份,也就是首次备份,通常是备份所有数据; 比如每周一完全备份,周二到周日增量备份. 周一完全备份(备份所有数据) xtrabackup \ --host127.0.0.1 \ --userroot \ --passwordxxx \ --backup \ --target-dir/fullbak \ --datadir/var/lib/mysql//插入新数据 可以插入多行 mysql insert into db1.tb1(date,employee_id,basic,bonus)values(20230610,18,25000,8000); 周二增量备份(备份周一备份后新产生的数据) xtrabackup \ --host127.0.0.1 \ --userroot \ --passwordxxx \ --backup \ --target-dir/new2 \ --incremental-basedir/fullbak \ --datadir/var/lib/mysql//插入新数据 可以插入多行 mysql insert into db1.tb1(date,employee_id,basic,bonus)values(20230610,18,25000,8000); 周三增量备份(备份周二备份后新产生的数据) xtrabackup \ --host127.0.0.1 \ --userroot \ --passwordxxx \ --backup \ --target-dir/new3 \ --incremental-basedir/new2 \ --datadir/var/lib/mysql//插入新数据 可以插入多行 mysql insert into db1.tb1(date,employee_id,basic,bonus)values(20230610,18,25000,8000); 以此类推到周日 2.2 数据增量备份恢复 前置准备工作按照顺序将备份文件到目标主机的根目录下 scp –r rootnode1:/fullbak / scp –r rootnode1:/new2 / scp –r rootnode1:/new3 / scp –r rootnode1:/new4 / scp –r rootnode1:/new5 / scp –r rootnode1:/new6 / scp –r rootnode1:/new7 / 增量恢复数据步骤: 1.准备恢复数据 2.合并数据 3.清空数据库目录 4.拷贝数据 5.修改数据库目录所有者/组用户为mysql 6.重启数据库服务 7.连接数据库验证 1)准备恢复数据 xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak 2)合并数据 xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new2xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new3xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new4xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new5xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new6xtrabackup \ --prepare \ --apply-log-only \ --target-dir/fullbak \ --incremental-dir/new7 3) 删除数据库数据 rm -rf /var/lib/mysql/* 4) xtrackup恢复数据 xtrabackup --copy-back --target-dir/fullbak 5修改数据库所有者/组用户为mysql chown -R mysql:mysql /var/lib/mysql 6)重启数据库服务 systemctl restart mysqld 7)登录mysql查看数据 mysql -uroot -p密码 mysql select count(*) from tarena.salary 3.差异备份与恢复 3.1 着手差异备份工作 对数据做差异备份前必须先有一次备份也就是首次备份通常啥备份所有数据 比如每周一完全备份周二到周日差异备份 3.1周一完全备份 xtrabackup --host127.0.0.1 \ --userroot \ --password123456 \ --backup \ --target-dir/allbak \ --datadir/var/lib/mysql 增加表格数据的操作就不赘述了 周二差异备份(备份周一备份后新产生的数据 xtrabackup --host127.0.0.1 \ --userroot \ --password123456 \ --backup \ --target-dir/dir2 \ --incremental-basedir/allbak \ --datadir/var/lib/mysql 周三差异备份(备份周一备份后新产生的数据 xtrabackup --host127.0.0.1 \ --userroot \ --password123456 \ --backup \ --target-dir/dir3 \ --incremental-basedir/allbak \ --datadir/var/lib/mysql 因为都是备份的周一备份后新产生的数据所以实际上只需要在上述命令基础上修改--target-dir当日备份目录路径 直接推断到周日差异备份(备份周一备份后新产生的数据 xtrabackup --host127.0.0.1 \ --userroot \ --password123456 \ --backup \ --target-dir/dir7 \ --incremental-basedir/allbak \ --datadir/var/lib/mysql 3.2 差异备份恢复 差异恢复数据步骤 前置准备工作远程拷贝备份数据到目标主机的根目录 scp –r rootnode1:/allbak / scp –r rootnode1:/dir7 / 1)准备恢复数据 xtrabackup --prepare \ --apply-log-only \ --target-dir/allbak 2)合并数据 xtrackup --prepare \ --apply-log-only \ --target-dir/allbak \ --incremental-dir/dir7 3)清空数据库目录 rm -rf /var/lib/mysql/* 4)拷贝数据 xtrabackup --copy-back --target-dir/allbak 5)修改数据库所有者/组用户为mysql chown -R mysql:mysql /var/lib/mysql 6)重启数据库服务 systemctl restart mysqld 7)连接数据库服务查看数据略...... 4.使用binlog日志恢复数据 binlog日志介绍 1.也称为二进制日志 2.mysql服务日志文件的一种 3.保存除查询之外的所有sql命令 4.可用于数据的备份和恢复 5.配置mysql主从同步的必要条件 4.1 在node1主机的mysql命令行下查看日志 注日志文件默认保存在/var/lib/mysql目录下默认日志名binlog,如果在/etc/my.cnf.d/mysql-server.cnf修改过bin-log的配置应按照配置文件查找 假设bin-log的配置改为/mylog/node1 mysql show master status;----------------------------------------------------------------------------- | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | ----------------------------------------------------------------------------- | node1.000001 | 156 | | | | ----------------------------------------------------------------------------- exit退出mysql mysql exit 在linux系统命令行将日志文件远程拷贝到目标主机 scp /mylog/node1.000001 rootnode2:/root/ 4.2 在node2主机使用日志恢复数据 1)查看日志是否在目标主机 ls /root/node1.000001 2)执行日志恢复数据 恢复数据命令 mysqlbinlog /目录/文件名 | mysql -uroot -p密码 结合实际应为 mysqlbinlog /root/node1.000001 | mysql -uroot -p密码 3)使用mysql查询命令对比数据是否备份成功 二、mysql增量备份,差异备份,完全备份,binlog备份比较优缺点 在Linux环境下MySQL数据库的备份可以通过以下方式进行 完整备份Full Backup备份整个数据库。 差异备份Differential Backup仅备份上次完整备份后发生变化的数据。 增量备份Incremental Backup仅备份自上次增量备份以来发生变化的数据。 binlog备份备份MySQL的二进制日志文件binlog记录了所有数据库更改的历史。 优缺点对比 备份名称优点缺点完整备份简单 1.数据冗余 2.备份时间长 差异备份备份数据量小 恢复时需要先恢复完整备份 增量备份 1.备份数据量小 2.恢复数据快 需要上次的完整备份或差异备份binlog备份 1.能够精确到行级别 2.恢复速度快 需要mysql的二进制更能开启 实际选择哪种备份策略取决于数据的重要性、恢复需求和备份策略的实施复杂度。 三、扩展内容redis的备份与恢复 第一种方案RDB 1. 新建RDB文件 1)关闭redis systemctl stop redis 2)删除数据库数据 rm -rf /var/lib/redis/* 3)修改redis.conf配置 设置存盘间隔为120秒且10个key改变数据自动存盘设置存盘间隔120秒且10个key改变则数据自动存盘 vim /etc/redis.conf save 900 1 #save 300 10 save 120 10 # 2分钟内且有10个变量改变,就把内存里的数据复制到dump.rdb文件里 save 60 10000 4)启动redis systemctl start redis5)查看dump.rdb的详细信息 #查看dump.rdb ls /var/lib/redis/dump.rdb 提示没有该文件或目录就行 6)redis插入数据 要在2分钟内存储大于等于10个变量 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 mset a 1 b 2 c 3 d 4 OK 192.168.88.70:6379 mset ... (像上面那个例子一样添加数据,凑足至少10个变量的改动...) 192.168.88.70:6379 exit 7)再次查看dump.rdb的详细信息 #redis赋值后查看是否有dump.rdb文件 ls /var/lib/redis/ -l 2.使用RDB文件恢复数据 1)拷贝dump.rdb文件数据的备份文件到其他目录 cp /var/lib/redis/dump.rdb /opt/#查看是否拷贝成功 ls /opt/*.rdb 2)清空数据库数据 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 FLUSHALL 192.168.88.70:6379 keys * 192.168.88.70:6379 exit 3)停止redis服务 systemctl stop redis 4)把/var/lib/redis/目录的dump.rdb文件删除 rm -rf /var/lib/redis/* 5)把备份dump.rdb文件拷贝到数据库目录/var/lib/redis/下 cp /opt/dump.rdb /var/lib/redis/ 6)启动redis服务 systemctl start redis 7)连接redis服务查看数据 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 keys * 第二种方案使用AOF恢复数据 1.启用AOF config set  appendonly yes #启用aof文件 config rewrite #保存配置 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 config set appendonly yes #启用aof文件 192.168.88.70:6379 config get appendonly #查看是否启用 192.168.88.70:6379 config rewrite #保存配置 192.168.88.70:6379 exit#查看数据库目录是否有.aof文件 ls /var/lib/redis #查看文件行数 wc -l /var/lib/redis/appendonly.aof 测试增加数据行数是否变化 #进入redis命令行添加存储数据 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 使用set或者mset增加存储变量 192.168.88.70:6379 keys * #查看变量 192.168.88.70:6379 exit#查看文件函数 wc -l /var/lib/redis/appendonly.aof 2.使用AOF文件恢复数据 1)备份aof文件到其他目录比如/opt 第一步.备份aof文件 cp /var/lib/redis/appendonly.aof /opt/ #查看是否备份成功 ls /opt/*.aof 2)清空数据库 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 flushall 192.168.88.70:6379 exit 3)停止redis服务 systemctl stop redis 4) 删除/var/lib/redis/目录下的文件 为了不影响备份效果删除/var/lib/redis/下的aof文件或者rdb文件 rm -rf /var/lib/redis/* 5)把备份的aof文件拷贝到数据库目录/var/lib/redis/下 cp /opt/appendonly.aof /var/lib/redis/ll /var/lib/redis/ #查看文件的主和组是不是都是redis #如果不是需要修改为redis的主和组 chown -R redis:redis /var/lib/redis/ 6)启动redis服务 systemctl start redis 7)连接redis服务查看效果 redis-cli -h 192.168.88.70 -p 6379 192.168.88.70:6379 keys *如果redis-cli命令连接命令行失败先查看appendonly文件的owner和group是不是redis不是redis的使用chown改成redis的主和组然后再尝试连接redis命令行如下图所示
http://www.pierceye.com/news/831390/

相关文章:

  • 做网站自己装服务器谷歌排名规则
  • 58.搜房等网站怎么做效果才好商贸公司企业简介模板
  • 中国最早做网站是谁卖网站怎样做
  • 张店专业网站优化哪家好书画工作室网站模板网站建设
  • 兰州网站制作怎么样青海哪家做网站的公司最大
  • 云龙湖旅游景区网站建设招标网站升级改版需要几天
  • 高端大气网络设计建设公司网站织梦模板沈阳模板建站哪家好
  • 郑州哪有做网站的高端网站建设与制作
  • 江阴网站网站建设蓝色 宽屏 网站 模板下载
  • 网站建设设计大作业重庆公共信息交易资源网
  • 做公司网站的多少钱公司建网站价格
  • 河间米各庄网站建设制作网站页面模板 建设中
  • wordpress首页添加站点统计小工具住房城乡建设部门门户网站
  • 网站建设在哪块做创业园网站建设
  • 郑州搭建网站公司互联网公司网站建设的目的
  • 响应式视频网站什么是权重高的网站
  • 做教育网站挣钱我的网站域名是什么
  • django 网站开发实例哪里可以检测胎儿性别
  • 刷排名凡搜网站宝微信5000人接推广费用
  • 网站优化外包服务专业网站建设服务商
  • 江西企业网站建设费用wordpress正在执行例行维护_请一分钟后回来.
  • 苏宁推客如何做网站创建一个网站的步骤
  • 优化网站广告优化东莞美食网站建设报价
  • 单页网站的营销定制应用软件有哪些
  • 如何建立一个网站详细步骤品牌建设可以从哪方面入手
  • 杨浦做网站福州网站公司
  • 厦门网站建设工程汽车网站正在建设中模板
  • 关于网站规划建设方案书怎么制作官网
  • 网站域名注销流程昌邑微信网站建设公司
  • 如何做众筹网站wordpress手机投放广告