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

从Windows到Linux:跨平台数据库备份与还原

数据库的备份与还原

目录
  1. 引言
  2. 备份
    • 2.1 备份所有数据库
    • 2.2 备份单个数据库
    • 2.3 备份多个指定数据库
  3. 传输备份文件
  4. 还原
    • 4.1 还原所有数据库
    • 4.2 还原单个数据库
    • 4.3 还原多个指定数据库
  5. 注意事项
  6. 拓展

1. 引言

在不同的操作系统间进行数据库迁移时,命令行工具是我们的可靠伙伴。它们高效且直观,特别是在Windows系统下备份MySQL数据库并将其导入Linux系统时。

2. 备份

2.1 备份所有数据库

要将所有数据库打包保存,请在Windows的命令提示符窗口(注意,不是PowerShell)中执行以下命令:

mysql -u root -p --all-databases > D:\mysqlbak\all_databases.sql

贴士: 确保目录存在,例如D:\mysqlbak。如果没有,请先创建:

mkdir D:\mysqlbak
2.2 备份单个数据库

想要某个特定数据库?轻松搞定:

mysqldump -u root -p database_name > D:\mysqlbak\database_name.sql

例如,保存my_database

mysqldump -u root -p my_database > D:\mysqlbak\my_database.sql
2.3 备份多个指定数据库

多数据库选择?没问题,用--databases把它们列出来:

mysqldump -u root -p --databases db1 db2 db3 > D:\mysqlbak\multiple_databases.sql

3. 传输备份文件

使用XFTP或类似工具,让备份文件游走于Windows和Linux之间,确保它们完好无损地到达Linux(如/home/user/mysqlbak/)。

4. 还原

4.1 还原所有数据库

在Linux终端中,前往备份文件目录,敲下命令,静待所有数据库重获新生:

mysql -u root -p < /home/user/mysqlbak/all_databases.sql

没有报错?对,成功了。

4.2 还原单个数据库

如果只是单恋某个数据库:

mysql -u root -p database_name < /home/user/mysqlbak/database_name.sql

比如,还原你的my_database

mysql -u root -p my_database < /home/user/mysqlbak/my_database.sql
4.3 还原多个指定数据库

批量还原不是梦,只需编写简单脚本,如restore.sh

#!/bin/bash# 数据库名单
databases=("db1" "db2" "db3")# 遍历并逐个恢复
for db in "${databases[@]}"; doecho "Restoring $db..."mysql -u root -p "$db" < /home/user/mysqlbak/$db.sql
done

保存并使其可执行:

chmod +x restore.sh
./restore.sh

5. 注意事项

  • 字符编码:备份时选择统一的字符编码,避免乱码横行。
  • 权限管理:确保有权限操作Linux上的备份文件。
  • 防火墙配置:若通过网络传输,确保防火墙为所需端口打开绿灯。
  • 版本兼容性:确保MySQL版本兼容,在不同系统间保持和谐。

6. 拓展

6.1 使用压缩工具优化备份文件

压缩插件如gzip,不仅节约空间,还缩短传输时间:

mysqldump -u root -p --all-databases | gzip > D:\mysqlbak\all_databases.sql.gz

在Linux上解压还原:

gunzip < /home/user/mysqlbak/all_databases.sql.gz | mysql -u root -p
6.2 自动化备份和还原

用批处理和Shell脚本,将这些任务交给机器:

Windows批处理文件backup.bat

@echo off
set backup_dir=D:\mysqlbak
set date=%date:~0,4%-%date:~5,2%-%date:~8,2%
set filename=all_databases_%date%.sql.gzmysqldump -u root -p --all-databases | gzip > %backup_dir%\%filename%
echo Backup completed: %filename%

Linux Shell脚本restore.sh

#!/bin/bashbackup_dir=/home/user/mysqlbak
filename=all_databases_$(date +%Y-%m-%d).sql.gzgunzip < $backup_dir/$filename | mysql -u root -p
echo Restore completed: $filename
6.3 使用云存储服务

将备份文件托管到云端如AWS S3,不仅节省本地空间,还增加存储的可靠性和安全性。

相关文章:

从Windows到Linux:跨平台数据库备份与还原

数据库的备份与还原 目录 引言备份 2.1 备份所有数据库2.2 备份单个数据库2.3 备份多个指定数据库 传输备份文件还原 4.1 还原所有数据库4.2 还原单个数据库4.3 还原多个指定数据库 注意事项拓展 1. 引言 在不同的操作系统间进行数据库迁移时&#xff0c;命令行工具是我们的…...

upload-labs

Win平台靶场 靶场2 教程 教程 教程 pass-01 bash 本pass在客户端使用js对不合法图片进行检查&#xff01;前端绕过, 禁用前端js代码, 或者上传图片, 抓包改后缀为 php , 后端没有校验 bash POST /Pass-01/index.php HTTP/1.1 Host: 47.122.3.214:8889 Content-Length: 49…...

【西门子PLC.博途】——面向对象编程及输入输出映射FC块

当我们做面向对象编程的时候&#xff0c;需要用到输入输出的映射。这样建立的变量就能够被复用&#xff0c;从而最大化利用了我们建立的udt对象。 下面就来讲讲映射是什么。 从本质上来说&#xff0c;映射就是拿实际物理对象对应程序虚拟对象&#xff0c;假设程序对象是I0.0&…...

牛客周赛 Round 72 题解

本次牛客最后一个线段树之前我也没碰到过&#xff0c;等后续复习到线段树再把那个题当例题发出来 小红的01串&#xff08;一&#xff09; 思路&#xff1a;正常模拟&#xff0c;从前往后遍历一遍去统计即可 #include<bits/stdc.h> using namespace std; #define int lo…...

Flux Tools 结构简析

Flux Tools 结构简析 BFL 这次一共发布了 Canny、Depth、Redux、Fill 四个 Tools 模型系列&#xff0c;分别对应我们熟悉的 ControlNets、Image Variation&#xff08;IP Adapter&#xff09;和 Inpainting 三种图片条件控制方法。虽然实现功能是相同的&#xff0c;但是其具体…...

0 前言

ArCS作为一个基于Rust的CAD&#xff08;计算机辅助设计&#xff09;开源系统&#xff0c;尽管已经有四年未更新&#xff0c;但其设计理念和技术实现仍然具有很高的学习和参考价值。以下是对ArCS项目的进一步分析和解读&#xff1a; 一、项目亮点与技术优势 高效与安全的Rust语…...

ARM嵌入式学习--第八天(PWM)

PWM -PWM介绍 PWM&#xff08;pulse Width Modulation&#xff09;简称脉宽调制&#xff0c;是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术&#xff0c;广泛应用在测量&#xff0c;通信&#xff0c;工控等方面 PWM的频率 是指在1秒钟内&#xff0c;信号从…...

遇到“REMOTE HOST IDENTIFICATION HAS CHANGED!”(远程主机识别已更改)的警告

连接虚拟机时提示报错&#xff1a; [insocoperhq-soc-cap-raw3 ~]$ ssh root10.99.141.104WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-midd…...

vue3前端组件库的搭建与发布(一)

前言&#xff1a; 最近在做公司项目中&#xff0c;有这么一件事情&#xff0c;很是头疼&#xff0c;就是同一套代码&#xff0c;不同项目&#xff0c;要改相同bug&#xff0c;改好多遍&#xff0c;改的都想吐&#xff0c;于是就想做一个组件库&#xff0c;这样更新一下就全都可…...

COMSOL快捷键及内置函数

文章目录 COMSOL快捷键使用COMSOL算子求最大值和最小值COMSOL内置函数3.1 解析函数3.2 插值函数3.3 分段函数3.4 高斯脉冲函数3.5 斜坡函数3.6 矩形函数3.7 波形函数3.8 随机函数3.9 Matlab函数3.10 SWITCH函数 COMSOL快捷键 Ctrl&#xff0b;/ 可快速打开预定义的物理量列表。…...

HUAWEI-eNSP交换机链路聚合(手动负载分担模式)

配置思路:HUAWEI交换机链路聚合有LACP模式跟手动负载分担模式,本文主打手动负载分担模式:首先交换机-PC之间划分基本vlan,交换机-交换机之间创建链路聚合组,划分端口至链路聚合分组(缺省模式为手动负载分担模式)。结果验证要求同vlan可以ping通,关闭某个聚合端口后仍可…...

番外篇 | Hyper-YOLO:超图计算与YOLO架构相结合成为目标检测新的SOTA !

前言:Hello大家好,我是小哥谈。Hyper-YOLO,该方法融合了超图计算以捕捉视觉特征之间复杂的高阶关联。传统的YOLO模型虽然功能强大,但其颈部设计存在局限性,限制了跨层特征的融合以及高阶特征关系的利用。Hyper-YOLO在骨干和颈部的联合增强下,成为一个突破性的架构。在COC…...

【MATLAB第109期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数

【MATLAB第108期】基于MATLAB的带置信区间的RSA区域敏感性分析方法&#xff0c;无目标函数 参考第64期文章【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用&#xff08;含无目标函数&#xff0c;考虑代理模型&#xff09; 创新点&#xff1a; 1、采…...

Bootstrap 表格

Bootstrap 表格 引言 Bootstrap 是一个流行的前端框架&#xff0c;它提供了一套丰富的工具和组件&#xff0c;用于快速开发响应式和移动设备优先的网页。在本文中&#xff0c;我们将重点讨论 Bootstrap 中的表格组件&#xff0c;包括其基本结构、样式以及如何使用 Bootstrap …...

【论文阅读】Computing the Testing Error without a Testing Set

https://blog.csdn.net/qq_40021158/article/details/109485216 可以使用测试集来估计训练集和测试集之间的性能差距&#xff0c;但是要避免过度拟合测试数据几乎是不可能的。 使用隔离的测试集可能会解决此问题&#xff0c;但这需要不断更新数据集&#xff0c;这是一项非常昂贵…...

Visio——同一个工程导出的PDF文件大小不一样的原因分析

现象 在不同电脑&#xff0c;导出来的PDF文件大小不一样。 原因分析 文件小的未将字体嵌入&#xff0c;文件大的已经将字体嵌入了。...

【ETCD】ETCD 架构揭秘:内部各组件概览

ETCD 的主要组件及它们之间的关联关系如下&#xff1a; 目录 1. Client&#xff08;客户端&#xff09;2. gRPC 接口3. Etcd Server Main Loop&#xff08;ETCD 主循环&#xff09;4. Raft&#xff08;共识模块&#xff09;5. Peer Etcd Nodes&#xff08;ETCD 集群节点&#x…...

Qt WORD/PDF(四)使用 QAxObject 对 Word 替换(QWidget)

关于QT Widget 其它文章请点击这里: QT Widget 国际站点 GitHub: https://github.com/chenchuhan 国内站点 Gitee : https://gitee.com/chuck_chee 姊妹篇: Qt WORD/PDF&#xff08;一&#xff09;使用 QtPdfium库实现 PDF 操作 Qt WORD/PDF&#xff08;二…...

音视频学习(二十四):hls协议

基本原理 HLS协议通过将视频文件切分成多个小的媒体段&#xff08;通常是10秒左右的.ts文件&#xff09;&#xff0c;并通过HTTP传输给客户端。视频播放过程中&#xff0c;客户端按顺序请求这些小段文件来逐步播放整个视频流。HLS还支持多种码率&#xff0c;以便适应不同网络条…...

UniDepth 学习笔记

摘要 准确的单目度量深度估计&#xff08;MMDE&#xff09;是解决三维感知和建模中下游任务的关键。然而&#xff0c;最近的MMDE方法的显著准确性仅限于其训练领域。这些方法存在适度的域间隙&#xff0c;也不能推广到看不见的域&#xff0c;这阻碍了它们的实际适用性。本文提出…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法&#xff1a;原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件&#xff0c;如包含恶意代码、敏感数据或欺诈内容的文档&#xff0c;在企业协同办公环境中&#xff08;如Teams、Google Workspace&#xff09;尤为重要。结合大模型技术&…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...