在Windows主机上定时备份远程VPS(CentOS)数据的批处理

下面是在Windows主机上定时备份远程VPS(CentOS)数据的完整攻略。

简介

本攻略介绍的方案适用于Windows主机需要定时备份远程VPS数据的情况,其中VPS操作系统为CentOS。

准备工作

在开始实施方案之前,需要完成以下准备工作:

  1. 确保远程VPS能够连接到互联网。
  2. 在远程VPS中安装rsync工具,在终端中输入以下命令安装:

    yum install -y rsync

  3. 在Windows主机中安装scoop包管理器,安装过程请参考scoop的官方文档

步骤

配置SSH连接

  1. 在Windows主机上生成SSH密钥,可以使用Git Bash运行以下命令:

    ssh-keygen

  2. 将生成的公钥文件id_rsa.pub添加到远程VPS的~/.ssh/authorized_keys文件中。

  3. 使用Git Bash测试SSH连接是否正常:

    ssh [username]@[ip-address]

    其中[username]为远程VPS的用户名,[ip-address]为远程VPS的公网IP地址。

配置定时备份脚本

在Windows主机上创建一个批处理脚本(例如backup.bat),脚本内容如下:

@echo off

scoop install openssh
set RSYNC_RSH=ssh
set SSH_AUTH_SOCK=C:\Windows\Temp\ssh-agent.sock

rsync -avz -e "ssh -i C:\Users\[username]\.ssh\id_rsa" [username]@[ip-address]:/path/to/backup/folder/ C:\backup\

scoop uninstall openssh  # 可选:卸载openssh软件包

其中[username]为远程VPS的用户名,[ip-address]为远程VPS的公网IP地址,/path/to/backup/folder/为远程VPS中需要备份的文件夹路径,C:\backup\为本地 Windows 主机需要备份到的文件夹路径。

配置任务计划程序

通过任务计划程序实现定时备份功能,具体步骤如下:

  1. 在Windows主机上打开任务计划程序,可以使用快捷键Win+R打开“运行”对话框,输入taskschd.msc并回车。
  2. 在任务计划程序中创建一个新的任务,给任务命名并选择“适用于任何标志”。
  3. 配置任务触发器,选择“新建”并设置触发器,例如每天晚上11点执行备份脚本。
  4. 配置任务操作,选择“新建”并设置操作,选择运行批处理文件并设置路径为上一步创建的备份脚本的路径。
  5. 确定所有设置并保存任务。

示例说明

下面给出两个示例来帮助理解本攻略的具体实现过程。

示例1

假设远程VPS的用户名为user,公网IP地址为123.45.67.89,需要备份的文件夹路径为/home/user/data/,本地Windows主机需要备份到的文件夹路径为D:\backup\

  1. 按照上面的步骤生成SSH密钥并测试连接是否正常。
  2. 在Windows主机中创建如下内容的backup.bat文件并保存到C:\scripts\backup.bat

    ```
    @echo off

    scoop install openssh
    set RSYNC_RSH=ssh
    set SSH_AUTH_SOCK=C:\Windows\Temp\ssh-agent.sock

    rsync -avz -e "ssh -i C:\Users[username].ssh\id_rsa" user@123.45.67.89:/home/user/data/ D:\backup\

    scoop uninstall openssh
    ```

  3. 在任务计划程序中创建一个新的任务,命名为“定时备份数据”。

  4. 在任务计划程序中选择“新建触发器”,设置为“每天晚上11点”。
  5. 在任务计划程序中选择“新建操作”,选择运行批处理文件,并设置路径为C:\scripts\backup.bat
  6. 确定所有设置并保存任务。

示例2

假设远程VPS的用户名为user,公网IP地址为123.45.67.89,需要备份的文件夹路径为/home/user/data/,本地Windows主机需要备份到的文件夹路径为D:\backup\

  1. 按照上面的步骤生成SSH密钥并测试连接是否正常。
  2. 在Windows主机中创建如下内容的backup.bat文件并保存到C:\scripts\backup.bat

    ```
    @echo off

    scoop install openssh
    set RSYNC_RSH=ssh
    set SSH_AUTH_SOCK=C:\Windows\Temp\ssh-agent.sock

    rsync -avz -e "ssh -i C:\Users[username].ssh\id_rsa" user@123.45.67.89:/home/user/data/ D:\backup\

    scoop uninstall openssh
    ```

  3. 在任务计划程序中创建一个新的任务,命名为“每周五晚上定时备份数据”。

  4. 在任务计划程序中选择“新建触发器”,设置为“每周五晚上11点”。
  5. 在任务计划程序中选择“新建操作”,选择运行批处理文件,并设置路径为C:\scripts\backup.bat
  6. 确定所有设置并保存任务。

以上就是在Windows主机上定时备份远程VPS(CentOS)数据的完整攻略,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在Windows主机上定时备份远程VPS(CentOS)数据的批处理 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL延时复制库方法详解

    MySQL延时复制库方法详解 延时复制是MySQL主从复制的一种特殊的实现方式,它可以实现将从库的复制延迟一定的时间,从而达到数据备份的目的。本文将详细讲解MySQL延时复制库的实现方法及注意事项,帮助读者更好地掌握这项技术。 一、什么是MySQL延时复制库 MySQL延时复制库指的是在主从复制中,将从库的复制延迟一定时间,使得从库的数据更新与主库有一定的时…

    database 2023年5月22日
    00
  • MySQL函数与存储过程字符串长度限制的解决

    MySQL函数与存储过程在使用过程中受到了字符串长度限制的影响,这可能会影响我们对其的正常使用。因此,在使用MySQL函数与存储过程时,如何解决字符串长度限制的问题是一件十分重要的事情。下面我们将会给大家介绍一些解决方法。 方法一:设置SQL_MODE 首先需要了解一下什么是SQL_MODE。SQL_MODE是MySQL的一个系统变量,它决定了MySQL数据…

    database 2023年5月22日
    00
  • PHP扩展模块Pecl、Pear以及Perl的区别

    PHP扩展模块Pecl、Pear以及Perl的区别: Pecl和Pear Pear(PHP Extension and Application Repository)和 Pecl(PHP Extension Community Library)都是PHP扩展的仓库,但是它们的目的和方向不同。 Pear包含了PHP的类库和一些应用程序,使得开发者可以快速地构建…

    database 2023年5月22日
    00
  • 如何设置docker开机自启动,并设置容器自动重启

    设置Docker开机自启动并设置容器自动重启可以使用systemd作为服务管理器来达成。下面是实现的具体步骤: 编写Docker Compose文件 首先需要编写好你的Docker Compose文件,然后把它放在一个指定的目录下,可以参考以下示例: version: "3" services: nginx: image: nginx:l…

    database 2023年5月22日
    00
  • Redis面试总结

    (1)什么是redis? Redis 是一个基于内存的高性能key-value数据库。 (有空再补充,有理解错误或不足欢迎指正) (2)Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的…

    Redis 2023年4月12日
    00
  • 深入讲解MongoDB的慢日志查询(profile)

    下面我将详细讲解关于MongoDB的慢日志查询(即profile)的完整攻略: MongoDB的慢日志查询(profile) 什么是慢日志查询(profile) MongoDB的慢日志查询是指将MongoDB数据库中执行时间较长的操作记录下来,并保存到慢查询日志中。MongoDB通过慢日志查询,可以掌握响应时间较慢的查询,以及可能需要优化的操作。慢日志查询功…

    database 2023年5月21日
    00
  • Asp.Net 网站优化系列之数据库优化 分字诀 分表(纵向拆分,横向分区)

    Asp.Net 是一个非常流行的 Web 开发框架,同时也是一个功能强大的后台开发工具,本文将深入讲解对于 Asp.Net 网站进行数据库优化的相关技巧。 什么是数据库优化? 数据库优化指的是通过修改数据库结构或查询语句等方法来提高数据库性能的过程。在 Asp.Net 网站的开发过程中,优化数据库对于提高网站的效率和性能非常重要。 分字诀 在进行数据库优化时…

    database 2023年5月19日
    00
  • Linux下的 mariadb 使用 root 用户启动方式(推荐)

    下面我将详细讲解“Linux下的 mariadb 使用 root 用户启动方式(推荐)”的完整攻略,包括步骤和示例说明。 1. 确认 mariadb 已经安装 在使用 mariadb 之前,需要确保已经在 Linux 上安装了 mariadb 数据库。使用以下命令来确认 mariadb 是否已经安装: $ rpm -qa | grep mariadb 如果系…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部