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

mysql笔记:12. 数据备份与还原

文章目录

  • 一、数据备份
    • 1. 备份单个数据库
    • 2. 备份多个数据库
    • 3. 备份所有数据库
  • 二、数据还原
    • 1. mysql命令
    • 2. source命令

在操作数据库时,难免会发生一些意外情况造成数据丢失。为了确保数据的安全,需要对数据库中的数据进行备份,这样当遇到数据库中数据丢失或出错的情况时,就可以将数据还原,从而最大限度地降低损失。
MySQL的备份方法可以根据不同的方式进行划分:

  • 根据备份的方法可以划分为物理备份和逻辑备份
    数据库从存储上看主要是由数据库的物理数据文件 、日志文件及配置文件等组成。数据库的物理备份是指直接复制这些数据库的文件。数据库逻辑备份是指备份软件按照最初设计的逻辑关系,以数据库的逻辑结构对象为单位,将数据库中的数据按照预定义的逻辑关联格式生成相关的文本文件,以达到备份的目的。简单来说就是使用备份工具从数据库导出数据,生成一个或多个备份文件。
  • 根据备份的数据集范围可以划分为全量备份、增量备份和差异备份
    全量备份是指将整个数据库内容做完整的备份,即对整个数据库进行备份。全量备份包含备份数据库结构和文件结构等,它保存的是备份完成时刻的数据库快照。全量备份操作简单,但数据存在大量的重复;占用大量的空间、备份与恢复时间长。增量备份是指仅备份自上一次全量备份或增量备份之后所增加的数据内容,而差异备份是指仅备份自上一个全量备份之后所增加的内容。
  • 根据备份时数据服务是否在线可以划分为热备份和冷备份
    热备份是在数据库运行的情况下执行的数据库备份。热备份最大的优点是备份时数据库仍可以使用,并且恢复是快速的,大多数情况下在数据库工作时恢复。冷备份是指在数据库已经正常关闭的情况下进行的备份。由于此时数据库已经关闭,冷备份可以将数据库的关键性文件复制到另外的存储位置。因为只是复制文件,所以冷备份速度非常快。在执行恢复时,只需要将文件再复制回去就可以很容易恢复到某个时间点上。冷备份最大的缺点是在冷备份过程中,数据库必须是关闭状态,不能提供外部的访问。

一、数据备份

MySQL提供了一个mysqldump命令,它可以将数据库导出成SQL脚本,以实现数据库的备份。
mysqldump命令可以备份单个数据库、多个数据库和所有数据库。

1. 备份单个数据库

mysqldump -uUSERNAME -pPASSWORD db_name [table_name1 [table_name2 ... ]] > filename.sql
  • USERNAME:MySQL用户名
  • PASSWORD:用户对应的密码。注意,参数p与密码之间不能有空格。出于安全考虑,也可以不在命令中输入密码,而是在执行不带密码的上述命令时输入密码。
  • db_name:需要备份的数据库名称
  • table_name:数据库中的表名,可以指定一个表或多个表,多个表用空格分隔;如果不指定表名,则备份整个数据库。
  • filename.sql:备份文件的名称,文件名前可以加上绝对路径

mysqldump是mysql的bin目录中的工具,使用它备份数据库时,不需要登录MySQL数据库,直接在命令行或终端窗口执行命令即可。

2. 备份多个数据库

mysqldump -uUSERNAME -pPASSWORD --database dbname1 [dbname2 ...] > filename.sql
  • --database:该参数指定需要备份的数据库名称,至少指定一个,如果有多个数据库,用空格隔开。

3. 备份所有数据库

mysqldump -uUSERNAME -pPASSWORD --all-databases > filename.sql

如果使用–all-databases参数备份了所有数据库,那么在还原数据库时,不需要创建数据库并指定要操作的数据库。

二、数据还原

1. mysql命令

mysql命令还原数据的语法格式:

mysql -uUSERNAME -pPASSWORD [dbname] < filename.sql
  • dbname:要还原的数据库名称。如果备份的filename.sql文件中包含创建数据库的语句,则不需要指定数据库;否则应该指定数据库名称。

2. source命令

source命令还原数据的语法格式:

mysql> source filename.sql

使用mysql命令还原数据时不需要登录数据库,使用source命令还原数据时,需要先登录数据库。

相关文章:

mysql笔记:12. 数据备份与还原

文章目录 一、数据备份1. 备份单个数据库2. 备份多个数据库3. 备份所有数据库 二、数据还原1. mysql命令2. source命令 在操作数据库时&#xff0c;难免会发生一些意外情况造成数据丢失。为了确保数据的安全&#xff0c;需要对数据库中的数据进行备份&#xff0c;这样当遇到数据…...

react native使用TS实现路由

一、入口文件app.jsx的配置 入口文件最好还是要保留jsx import { NavigationContainer } from react-navigation/native; import { navigationRef } from "./src/views/RootNavigation";const App () > {return&#xff08;<NavigationContainer ref{navigat…...

手机充值的功能测试框架 - 测试要点

手机充值有微信营销活动的、有 APP 页面应用等&#xff0c;以下是我以前公司的手机充值话费或流量应用的测试要点&#xff0c;分享给大家参考下。 一、手机号码输入框检查 1、手机号码框要控制成只能输入11位数字的文本框。 2、输入以非1开头的手机号&#xff0c;给出提示&a…...

U盘启动盘 制作Linux Ubuntu CentOS系统启动盘 系统安装

U盘启动盘 制作Linux Ubuntu CentOS系统启动盘 系统安装 准备条件 准备一个U盘&#xff0c;建议容量至少为8GB&#xff0c;以便存放系统镜像文件 一台已经安装好操作系统的计算机&#xff0c;用于制作U盘启动盘 Ubuntu和CentOS的Linux ISO镜像文件。可以从官方网站或相关资源…...

Nodejs 第五十四章(net)

net模块是Node.js的核心模块之一&#xff0c;它提供了用于创建基于网络的应用程序的API。net模块主要用于创建TCP服务器和TCP客户端&#xff0c;以及处理网络通信。 TCP&#xff08;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的传输协议&#xff0c;用于…...

渗透测试修复笔记 - 04 nacos 可能会导致未经授权的用户获取到系统中的敏感信息的漏洞

问题&#xff1a;该漏洞可能会导致未经授权的用户获取到系统中的敏感信息。 http://ip地址:8848/nacos/v1/auth/users?pageNo1&pageSize9 最直接的解决办法就是升级nacos版本 如果不升级的话还是沿用旧版本就修改相关配置 当前版本为2.0.4 1.nacos的docker-compose文件…...

初级代码游戏的专栏介绍与文章目录

我的github&#xff1a; codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 一、大型专题 1.1 C嵌入式HTTP服务器 C嵌入式HTTP服务器_初级代码游戏的博…...

【Redis系列】深入了解 Redis:一种高性能的内存数据库

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

C语言例:表达式(a=2,3),a+1的值

题目&#xff1a;设int a; 则表达式(a2,3),a1的值 #include<stdio.h> int main(void) {int a0;int b;int c;b (a2,4);c (a2,3),a1;printf("a1%d\n",a1); //a1 3;printf("a2,4的值为&#xff1a;%d\n",b); //a2,4的值为&…...

基于java的公寓报修管理系统设计与实现(程序+文档+数据库)

** &#x1f345;点赞收藏关注 → 私信领取本源代码、数据库&#x1f345; 本人在Java毕业设计领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#xff0c;希望你能有所收获&#xff0c;少走一些弯路。&#x1f345;关注我不迷路&#x1f345;** 一、研究背景…...

Lua 函数前的冒号和点号,你知道他们的区别吗?

1. 函数前的冒号和点号 点号&#xff08;.&#xff09;和冒号&#xff08;:&#xff09;的区别主要在于是否自动处理self参数。 在Lua中&#xff0c;函数定义时前面有点号&#xff08;.&#xff09;和冒号&#xff08;:&#xff09;的区别主要体现在函数如何处理其第一个参数…...

4、设计模式之建造者模式(Builder)

一、什么是建造者模式 建造者模式是一种创建型设计模式&#xff0c;也叫生成器模式。 定义&#xff1a;封装一个复杂对象构造过程&#xff0c;并允许按步骤构造。 解释&#xff1a;就是将复杂对象的创建过程拆分成多个简单对象的创建过程&#xff0c;并将这些简单对象组合起来…...

网工内推 | 上市公司网工,IE认证优先,最高18K*13薪,包吃住

01 深圳市宝腾互联科技有限公司 招聘岗位&#xff1a;网络工程师 职责描述&#xff1a; 1、是整个数据中心的网络技术及安全问题的负责人&#xff0c;确保数据中心业务的正常进行&#xff1b; 2、负责规划、设计、搭建、维护数据中心的网络环境&#xff0c;确保IDC /云平台&a…...

SQL Server 技术100问?

这些问题旨在帮助SQL Server的管理员和开发人员深入理解数据库管理系统的核心概念和技术&#xff0c;从而更好地进行数据库设计、性能优化、安全管理等工作。 SQL Server的最新版本有哪些新特性&#xff1f;如何在SQL Server中创建一个新的数据库&#xff1f;如何在SQL Server…...

鸿蒙不再适合JS语言开发

ArkTS是鸿蒙生态的应用开发语言。它在保持TypeScript&#xff08;简称TS&#xff09;基本语法风格的基础上&#xff0c;对TS的动态类型特性施加更严格的约束&#xff0c;引入静态类型。同时&#xff0c;提供了声明式UI、状态管理等相应的能力&#xff0c;让开发者可以以更简洁、…...

Python环境搭建 -- Python与PyCharm安装

一、Python安装 我们先找到Python的官方网站&#xff0c;在浏览器中搜索Python即可&#xff0c;然后进入Python官网 点击Downloads&#xff0c;选择对应匹配的操作系统 点进去之后&#xff0c;Python的版本分为稳定的版本和前置版本&#xff0c;前置的版本就是还没有发行的版本…...

OSCP靶场--Astronaut

OSCP靶场–Astronaut 考点(1.CVE-2021-21425getshell 2.suid php提权) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap -sV -sC -p- 192.168.163.12 --min-rate 2500 Starting Nmap 7.92 ( https://nmap.org ) at 2024-03-14 01:24 EDT Nmap scan report for 192.16…...

Springboot 使用【过滤器】实现在请求到达 Controller 之前修改请求体参数和在结果返回之前修改响应体

文章目录 前情提要解决方案自定义 HttpServletRequest 包装类 RequestWrapper自定义 HttpServletResponse 包装类 ResponseWrapper自定义过滤器 MiddlewareFilter配置过滤器注解配置类 编写 Controller 测试 前情提要 在项目中需要使用过滤器 在请求调用 Controller 方法前修改…...

Unity 3D常用的数据结构

目录 数组使用场景 ArrayList数组ArrayList的缺点 List\<T\>数组List\<T\>有以下3点好处 链表链表与数组的不同之处链表的优势数组和链表的应用场景 LinkedList\<T\>C#中内置的双向链表LinkedList使用场景 队列&#xff08;Queue\<T\>&#xff09;和栈…...

h5唤起微信小程序

wx-open-launch-weapp 就用这个 开放标签属于自定义标签&#xff0c;Vue会给予未知标签的警告&#xff0c;可通过配置Vue.config.ignoredElements [wx-open-launch-weapp] 来忽略Vue对开放标签的检查。 sdk授权。 调试打开时iOS会弹窗 noPermissionJsApi: []&#xff0c;confi…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日&#xff0c;国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解&#xff0c;“超级…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...