MYSQL数据库备份还原,并还原到最新状态(mysqldump)
启用二进制日志文件
vim /etc/my.cnf 配置文件位置及文件名根据实际情况确定<br>sql_log_bin=on|off:是否记录二进制日志,默认为on 在需要的时候设置为off="" <br>log_bin="/PATH/BIN_LOG_FILE:指定二进制日志文件位置;" 通常单独存放到与数据库不同的机器中="" <="" p=""></br>sql_log_bin=on|off:是否记录二进制日志,默认为on>
清理二进制日志文件
show master logs; 查看二进制日志文件列表<br>flush logs;="" 切换二进制日志文件(mysql命令),创建新的二进制日志="" <br>mysqladmin="" flush-logs="" 切换二进制日志文件(bash命令)="" <br>purge="" binary="" logs="" to="" 'mysqlbin.000005';="" 删除除mysqlbin.000005日志之前的所有日志,保留mysqlbin.000005及以后的日志="" <br>reset="" master="" 重新001开始记数二进制日志(老版本)。从mariadb10.1.6开始支持to="" #,指定从#开始记数="" <="" p=""></br>flush>
完全备份,并还原到最新状态(mysqldump)
前提条件:启用二进制日志,并单独存放。在mysql数据丢失时,可以还原最新备份到丢失时刻的数据<br>1 完全备份="" <="" p=""></br>1>
mysqldump -A --single-transaction --master-data=1 > /data/backup/all_mysql.sql
完全备份数据库文件,并存放多份到安全的地方<br>2 修改数据库(在数据表中添加多条记录。模拟数据增加,但还没有备份时数据丢失的情况。可以通过二进制日志还到最新的数据)="" <="" p=""></br>2>
mysql> insert TABLENAME(col_name,...)value(value,...)
3 数据库文件丢失<br>rm -rf="" data="" mysql="" *="" 测试效果,清空mysql数据目录,数据全部丢失,但开启了二进制日志,并单独存放在其他的硬盘中="" <br>4="" 停止mysql服务="" <="" p=""></br>rm>
service mysqld stop
5 查看完全备份时二进制日志备份的最后位置,实验时备份的最后位置为:CHANGE MASTER TO MASTER_LOG_FILE='mariadb.000001', MASTER_LOG_POS=8944;<br>通过less 命令查看最新的备份文件all_mysql.sql获取此信息="" <="" p=""></br>通过less>
-- MySQL dump 10.16 Distrib 10.2.23-MariaDB, for Linux (x86_64)
--
-- Host: localhost Database:
-- ------------------------------------------------------
-- Server version 10.2.23-MariaDB-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */ ;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */ ;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */ ;
/*!40101 SET NAMES utf8 */ ;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */ ;
/*!40103 SET TIME_ZONE='+00:00' */ ;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */ ;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */ ;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */ ;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */ ; --
-- Position to start replication or point-in-time recovery from
-- -- CHANGE MASTER TO MASTER_LOG_FILE='mariadb.000001', MASTER_LOG_POS=8944; --
-- GTID to start replication from
--
/data/backup/all_2019-05-06.sql
.
.
重启mysql服务:
service mysqld restart
登录mysql :
mysql -uroot -p
临时关闭二进制日志,还原完全备份:
mysql> set sql_log_bin= off ;
mysql> soruce /data/backup/all_mysql.sql
6 还原没有备份的新数据<br>新开一个终端:用mysqlbinlog工具导出存放在二进制日志中没有备份的新记录,开始位置为第4步中查询到的位置(实验时为8944) <="" p=""></br>新开一个终端:用mysqlbinlog工具导出存放在二进制日志中没有备份的新记录,开始位置为第4步中查询到的位置(实验时为8944)>
mysqlbinlog --start-postion=8944 /data/bin/mariadb.000001 > /data/backup/inc.sql
在原终端中继续还原
mysql> soruce /data/backup/inc.sql
到此已经还原全部数据
MYSQL数据库备份还原,并还原到最新状态(mysqldump)的更多相关文章
- MySQL数据库备份还原(基于binlog的增量备份)
MySQL数据库备份还原(基于binlog的增量备份) 一.简介 1.增量备份 增量备份 是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件.这就意味 ...
- 在给mysql数据库备份时,报错: mysqldump: Got error: 145: Table '.\shengdaxcom\pre_forum_thread' is marked as c rashed and should be repaired when using LOCK TABLES
在给mysql数据库备份时,报错: mysqldump: Got error: 145: Table '.\shengdaxcom\pre_forum_thread' is marked as cra ...
- MySQL数据库备份还原
本文以CentOS 7 yum安装的MariaDB-server5.5为例,说明MySQL的几种 备份还原方式 将服务器A(192.168.1.100)上的数据库备份,还原到B(192.168.1.2 ...
- Linux下的Mysql数据库备份+还原
数据库备份: root@debian-mm:/home/debian-mm# mysqldump -u root -p Account > Account.sql Enter password: ...
- 使用mysqldump进行mysql数据库备份还原
mysqldump是mysql自带的备份还原工具,默认在安装目录的bin下 可通过cmd命令行启动,然后运行: 还原一个数据库: mysql -h 主机 -u 用户名 -p密码 数据库名 < 指 ...
- 阿里云mysql数据库备份还原
1.下载备份包 在rds的备份恢复中点击下载,在弹出的窗口中复制内网下载地址(前提是目标服务器与rds内网互通,否则请复制外网地址) 在目标服务器中执行如下命令进行下载: wget -c '复制的地址 ...
- [MySql] - 数据库备份还原
导出数据库到SQL方法: mysqldump.exe -u[USERNAME] -p[PASSWORD] -h [IP] jira --lock-all-tables > c:\db.sql m ...
- c#mysql数据库备份还原
1:引用dll MySql.Data.dll, MySqlbackup.dll 2:建一个数据连接静态类 public static class mysql { public static str ...
- mysql 数据库 备份 还原
参考资料: http://blog.51yip.com/mysql/139.html
- mysql数据库-备份与还原-Percona XtraBackup 2.4备份工具使用
目录 xtrabackup 特点 备份生成的相关文件 xtrabackup 安装 xtrabackup 用法 1 备份 2 预备份 3 还原 4 其他 还原注意事项 xtrabackup实现完全备份及 ...
随机推荐
- .NET 按格式导出txt
效果图 后台代码 private void DownTxt() { try { StringBuilder sb = new StringBuilder(); for (int i = 0; i &l ...
- LSTM实现文本情感分类demo
import torch import torch.optim as optim import torch.nn as nn import numpy as np import torch.nn.fu ...
- Solo 开发者周刊 (第6期):仅需一个动作,秒变时间管理大师?
这里会整合 Solo 社区每周推广内容.产品模块或活动投稿,每周五发布.在这期周刊中,我们将深入探讨开源软件产品的开发旅程,分享来自一线独立开发者的经验和见解.本杂志开源,欢迎投稿. 产品推荐 1. ...
- CPU的实模式
实模式是指CPU的寻址方式,寄存器大小,指令用法等,是用来反应CPU在该环境下如何工作的概念. CPU的工作原理:CPU大体分为三个部分,控制.运算.存储单元. 控制单元是CPU的控制中心,大致由指令 ...
- 在宝塔上配置打包好的vue3项目
配置文件如下 server{ listen 80; server_name gongchang.365cb.cn; index index.html index.htm default.php def ...
- mysql 删除数据表报错 表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理
mysql 删除数据表报错 表删除时 Cannot delete or update a parent row: a foreign key constraint fails 异常处理 MySQL报错 ...
- 基于Java+SpringBoot+Vue宠物咖啡馆平台设计和实现
\n文末获取源码联系 感兴趣的可以先收藏起来,大家在毕设选题,项目以及论文编写等相关问题都可以给我加好友咨询 系统介绍: 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成 ...
- stream流的概述以及idea与stream
前面自己学过一些流的概念,比如IO流,用于读写本地的数据. stream流主要是用于对集合/数组进行操作 idea现在已经很好的支持Stream流操作,在debug的时候可以很好的看到详细内容 下面以 ...
- 2023/4/17 SCRUM个人博客
1.我昨天的任务 学习了easydict库的基本操作 2.遇到了什么困难 没有找到合适的人脸识别库 3.我今天的任务 初步学习dlib的安装,了解dlib的基础组件
- conda报错、anconda报错:requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
anconda报错,报错信息: requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 不能使用c ...