数据备份

MySQL数据备份

左心房为你撑大大i 提交于 2019-11-28 05:42:19
MySQL数据备份: #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境。但不能恢复到异构系统中如Windows。 #2. 逻辑备份: 备份的是建表、建库、插入等操作所执行SQL语句,适用于中小型数据库,效率相对较低。 #3. 导出表: 将表导入到文本文件中。 一、使用mysqldump实现逻辑备份 #语法: # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql #示例: #单库备份 mysqldump -uroot -p123 db1 > db1.sql mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql #多库备份 mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql #备份所有库 mysqldump -uroot -p123 --all-databases > all.sql 二、恢复逻辑备份 #方法一: [root@egon backup]# mysql -uroot -p123 < /backup/all.sql #方法二: mysql> use db1; mysql> SET SQL_LOG_BIN=0; mysql> source /root

redis数据备份还原

∥☆過路亽.° 提交于 2019-11-26 16:16:08
安装ruby yum install ruby rubygems ruby-devel -y 安装rvm gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable source /usr/local/rvm/scripts/rvm rvm list known #列出版本 rvm install 2.5.3 #选择一个高版本的安装 rvm use 2.5.3 #使用安装的版本 ruby --version #查看下版 安装redis-dump gem install redis-dump 导出 redis-dump > /root/redis.json //地址密码 redis-dump -u :password@172.20.0.1:6379 > 172.20.0.1.json 导入 cat redis.json | redis-load //有密码使用-a cat redis.json | redis-load -u :password@172.20.0.2:6379

NVM区数据备份机制

青春壹個敷衍的年華 提交于 2019-11-26 15:56:15
上一篇主要说明NVM区操作注意事项,本文针对上篇提到的NVM区数据备份方法进行补充讲解。 NVM区主要特性是写入数据掉电不丢失,可以永久的保存数据,一般用作存放不经常修改的数据,此功能类似FLASH。向NVM区写入数据可分为3步:第一步,将目标扇区内原有数据读出到RAM中;第二步,擦除NVM目标扇区内数据;第三步,将新数据和RAM中的旧数据写入到该扇区中。基于以上写操作的特点可以看出,若执行写NVM区操作的第二步或第三步时芯片断电了,就会造成NVM区内原有数据丢失,而新数据写入失败,表现出NVM区内数据错乱的现象。虽然这只是小概率事件,但出于稳定性和产品健壮性考虑也要加入数据备份机制。 数据备份有两套基本方案,分别适用于小数据量和大数据量的应用场景。本期介绍小数据量备份方案,即要求每次更新数据量小于一个扇区大小减1,本例扇区大小256字节,因此更新数据量最大255字节。(注意:不同型号芯片NVM扇区大小会有差异,可以联系凌科技术确认)。实现思路是:从NVM区选取两块区域,每个区域的最后一字节记录该区域的操作次数。以该标志决定更新数据应选用哪个区域。依次循环操作两个区域,操作区域1的时候,区域2就充当了备份作用,反之同理。 第一次写入数据 第一步:将NVM区地址0x0000~0x00FF定义为Block1,将0x0200~0x02FF定义为Block2。 #define Block1

Mysql的冷备热备(数据备份)

左心房为你撑大大i 提交于 2019-11-26 12:27:28
冷备可以是mysql工具 msqldump。 mysqldump -u username -p dbname table1 table2 ... -> BackupName.sql dbname 数据库名称 table1 table2 是表名称 BackupName.sql 备份保存的相对路径的sql文件 执行下面命令。 mysqldump -u homestead -psecret homestead > /home/vagrant/backup.sql 然后输入密码然后备份成功。 mysqldump -u homestead -psecret 在终端执行会出现(Warning: Using a password on the command line interface can be insecure.)的情况,我们在mysq配置文件 /etc/mysql/conf.d/mysqldump.cnf。 加上配置,这样执行mysqldump 就不用 -u homestead -psecret user=homestead password=secret 当然我们可以写个简单的shell脚本执行备份命令,然后使用corntab或者supervisor定时跑这个shell脚本。 #!/bin/sh mkdir -p -m 777 /home/vagrant/backup

NVM区数据备份机制

你。 提交于 2019-11-26 02:34:08
上一篇主要说明NVM区操作注意事项,本文针对上篇提到的NVM区数据备份方法进行补充讲解。 NVM区主要特性是写入数据掉电不丢失,可以永久的保存数据,一般用作存放不经常修改的数据,此功能类似FLASH。向NVM区写入数据可分为3步:第一步,将目标扇区内原有数据读出到RAM中;第二步,擦除NVM目标扇区内数据;第三步,将新数据和RAM中的旧数据写入到该扇区中。基于以上写操作的特点可以看出,若执行写NVM区操作的第二步或第三步时芯片断电了,就会造成NVM区内原有数据丢失,而新数据写入失败,表现出NVM区内数据错乱的现象。虽然这只是小概率事件,但出于稳定性和产品健壮性考虑也要加入数据备份机制。 数据备份有两套基本方案,分别适用于小数据量和大数据量的应用场景。本期介绍小数据量备份方案,即要求每次更新数据量小于一个扇区大小减1,本例扇区大小256字节,因此更新数据量最大255字节。(注意:不同型号芯片NVM扇区大小会有差异,可以联系凌科技术确认)。实现思路是:从NVM区选取两块区域,每个区域的最后一字节记录该区域的操作次数。以该标志决定更新数据应选用哪个区域。依次循环操作两个区域,操作区域1的时候,区域2就充当了备份作用,反之同理。 第一次写入数据 第一步:将NVM区地址0x0000~0x00FF定义为Block1,将0x0200~0x02FF定义为Block2。 #define Block1

NVM区数据备份机制(二)

隐身守侯 提交于 2019-11-26 01:22:16
上一篇文章介绍了第一种NVM区备份机制,但写入数据长度受限于扇区大小,本文介绍第二种NVM区数据备份机制。此方法会先将NVM区划分为A、B两个等大小区域,将A区作为正式数据区,B区作为备份区,每个区域的最后一字节为数据有效标志位FLAG,1表示该区数据有效,0表示该区数据无效。更新数据过程中若出现掉电,重新上电后先根据A、B两区FLAG判断哪个区域内数据有效,进而继续完成更新操作。本例中NVM区大小是32KB,A区大小划分为16KB,B区大小划分为16KB。举例说明:本例假设A区已经成功写入了数据,需要向NVM区写入新数据。其他情况处理流程与下述4步同理。 (1)判断A区FLAG = 1后,将A区数据读出写入到B区,写入成功后,将B区 FLAG赋值为1。 (2)B区FLAG修改成功后,将A区FLAG标志改为0。 (3)A区FLAG标志修改成功后,对A区进行数据更新操作,即写入新数据。更新成功后,将A区FLAG标志写为1。 (4)A区FLAG修改成功后,将B区FLAG标志修改为 0,至此完成数据更新操作。 至此,两种NVM区数据备份方案全部介绍完毕。 来源: 51CTO 作者: 李阿淇 链接: https://blog.51cto.com/13520299/2432604