数据库定时备份winserver2012篇
数据库定时备份winserver2012篇
- 1 序言
- 2 任务计划相关知识点介绍
- 2.1 任务计划 是什么?
- 2.2 批处理文件
- 2.2.1 批处理文件简介
- 2.2.2 批处理常用命令介绍
- 3 各个数据库备份脚本
- 3.1 Oracle数据库
- 3.2 Mysql数据库
- 3.3 postgresql数据库
- 3.4 mongoDB数据库
- 4 添加任务计划定时备份数据库
1 序言
数据是无价的,所以生产环境中定时备份数据库显得尤为重要。备份能防止服务器故障、天灾人祸和人为误操作带来的数据丢失。
上一篇文章我们说了Linux环境下的数据备份。这一篇就把之前留下的坑给填上了。
这一篇我们说一说winserver2012环境下如何做好数据库备份?
工作中虽然大部分生产环境首选服务器是Linux,Linux的性能毋庸置疑。但是也不排除会用的windows server作为服务器的情况
这里呢还是以这几年工作中接触到的几种常见数据库为例吧。
- Oracle
- mysql
- postgresql
- mongoDB
2 任务计划相关知识点介绍
2.1 任务计划 是什么?
- 任务计划是Windows操作系统非常强大的一个功能,利用任务计划,我们可以将任何脚本、程序或文档安排在每天、每周、每个月甚至某个特定的时间运行。
- windows 本身也有一些定时任务
- 比如通过任务计划可以让QQ在每周五晚上7点准时运行。注意,只有在开机状态任务计划才能起作用。
2.2 批处理文件
2.2.1 批处理文件简介
- 应用于DOS和Windows系统中的一种简化的脚本语言。
- 批处理文件的扩展名为.bat或.cmd
- 类似于Unix中的Shell脚本。简单的可以使是逐行书写在命令行中的各种命令。更复杂的情况,需要使用if,for,goto等命令控制程序的运行过程
- 分为DOS批处理和PS批处理两类。
- 可以用记事本直接编辑或用DOS命令创建或各种编辑器打开
我们可以用一下命令实现helloworld
@echo off
echo hello world
pause & exit
2.2.2 批处理常用命令介绍
本来在这里加了一堆批处理常用命令,发现篇幅太长了。那就后面单独弄一篇总结Windows批处理常用命令吧(又给自己挖了一个坑)。
3 各个数据库备份脚本
将需要备份的脚本添加到backup.bat中
3.1 Oracle数据库
@echo off
echo 当前的盘符及路径:%~dp0
echo 当前的盘符及路径的短文件名格式:%~sdp0set filename=%date:~0,4%%date:~5,2%%date:~8,2%
set expcmd=scott/tiger file=%~dp0\%filename%.dmp owner=scott log=%~dp0\%filename%.log buffer=9999999
echo 导出 >>exe%filename%.log 2>&1
call exp %expcmd%
echo 压缩 >>exe%filename%.log 2>&1
7zr a %filename%.dmp.7z %filename%.dmp %filename%.log
echo 删除 >>exe%filename%.log 2>&1
del %filename%.dmp
3.2 Mysql数据库
@echo off
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
D:\MySQL\bin\mysqldump -u root -p123456 --databases db1 > D:\db_backup\db1_%Ymd%.sql
@echo on
3.3 postgresql数据库
@ECHO OFF
@setlocal enableextensions
@cd /d "%~dp0"
SET PGPATH=D:\PostgreSQL\9.3\bin\pg_dump
SET SVPATH=E:\
SET PRJDB=db1
SET DBUSR=postgres
SET DBROLE=postgres
FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%i-%%j-%%k
FOR /F "TOKENS=1,2,3 DELIMS=: " %%i IN ('TIME /T') DO SET t=%%i%%j%%k
SET DBDUMP=%PRJDB%_%d%_%t%.backup
@ECHO OFF
%PGPATH% -h localhost -p 5432 -U %DBUSR% --role %DBROLE% -w -F c -b -v -f %SVPATH%%DBDUMP% %PRJDB%
echo Backup Taken Complete %SVPATH%%DBDUMP%
pause--SET SVPATH=E:\ 表示文件存放路径
--SET PRJDB=BaoShan 表示要备份的数据库名称
--%PGPATH% -h localhost -p 5432 -U %DBUSR% --role %DBROLE% -w -F c -b -v -f %SVPATH%%DBDUMP% %PRJDB% 表示本机执行
3.4 mongoDB数据库
@echo off
set SrcDir=E:\mongodb4.1.7\backup
forfiles /p %SrcDir% /s /m *.* /d -7 /c "cmd del /c /f /q /a @path"set path=%path%;E:\mongodb4.1.7\bin
set Ymd=%date:~,4%%date:~5,2%%date:~8,2%
mongoexport -d dbcloudresource -c sys_resource -u cloud_resource -p cloud_resource --type=JSON -o E:\mongodb4.1.7\backup\backup_%Ymd%.jsset RAR_CMD="C:\Program Files\WinRAR\Rar.exe"
%RAR_CMD% a -df "E:\mongodb4.1.7\backup\backup_%Ymd%.rar" "E:\mongodb4.1.7\backup\backup_%Ymd%.js"
4 添加任务计划定时备份数据库
① 首先打开系统的管理工具,选择《任务计划程序》
② 点击创建基本任务,输入这个定时任务的名称,比如我这边就是做一个db1数据库的备份
③ 点击下一步选择定时任务执行频率
④ 点击下一步选择任务开始时间 今晚0点10分开始
⑤ 选择执行的操作,此处选择上面已经添加好的backup.bat批处理脚本,因此选择《启动程序》
⑥ 完成
数据库定时备份winserver2012篇相关推荐
- 第十节 利用Quartz实现数据库定时备份
svbadmin学习日志 本学习日志是使用Springboot和Vue来搭建的后台管理系统: 演示地址:http://118.31.68.110:8081/index.html 账号:root 密码: ...
- Oracle数据库定时备份脚本
Oracle数据库定时备份脚本 一.编写脚本 vim /home/backup/oraclebk.sh #! /usr/bin #路径名,指定备份的路径 FILEPATH=/home/backup/o ...
- Oracle数据库定时备份到远程服务器
一.需求 定时将服务器A的oracle数据库中某个database定时生成dmp,备份到服务器B中(保存10天) 二.配置数据库定时备份 在服务器A上创建备份目录,并赋予权限 [root@localh ...
- Oracle数据泵自动删除,Oracle数据库定时备份并删除旧文件
1.创建一个expdp导出bat批处理任务,自动删除30天之前备份文件: @echo off rem set backupfile=f_database_%date:~0,4%-%date:~5,2% ...
- mysql定时导入_MySQL导入、导出、数据库定时备份
本篇使用的MySQL版本是5.7.30,注意不同版本之间可能会有差异. 一.导出操作 1.查找mysqldump命令位置 which mysqldump 2.mysqldump导出示例 用户名和密码分 ...
- MySQL 数据库定时备份的几种方式(非常全面)
点击关注公众号,回复"1024"获取2TB学习资源! 在操作数据过程中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库.本篇文章主要讲述了几种方法进行 My ...
- 如何优雅的实现MySQL 数据库定时备份(荣耀典藏版)
目录 前言 一.mysqldump命令备份数据 1.mysqldump常用操作示例 2.还原 MySQL 备份内容 3.编写BASH维护固定数量备份文件 3.2.cron服务 3.3.crontab语 ...
- linux设置数据库定时备份,linux中使用计划任务进行数据库定期备份
Linux上经常要使用cornd执行定时任务.如果对crontab掌握不是很熟悉,也可以直接使用宝塔面板进行一些简单的定时计划任务. 在我的云主 机上 安装了CentOS系统,并默认安装了宝塔管理面板 ...
- mysql 数据传输 定时,MySQL数据库定时备份的实现方法
1. 创建shell脚本 2. 给shell脚本添加执行权限 3. 给脚本添加定时任务 crontab文件的说明: 用户创建的crontab文件中,每一行都代表一项定时任务,每行的每个字段代表一项设置 ...
最新文章
- Spring Cloud分布式微服务云架构—源码结构图
- 后端必备的200本书,一次性给你!
- vc java动态库_Java调用已经写好的VC++动态链接库
- cisco failover 概念
- A+B Problem(再升级)
- [论文总结] 深度学习在农业领域应用论文笔记9
- Java上传文件格式判断
- Linux 2.6内核配置说明
- C语言极速学习开发——51单片机入门编程之使用KeilC51进行代码编译(点亮你心中学习的精神之灯-上)
- 怎么用Linux查看服务器日志,Linux查看服务器日志
- Win11键盘锁住怎么恢复?
- Gym 100962J Jimi Hendrix (DFS + 树形dp)
- 深入NXP蓝牙SDK开发(x)---深挖BLE蓝牙协议栈配对过程(3)_密钥分发
- Sentinel采用SphO方式定义资源,报错:The order of entry exit can‘t be paired with the order of entry
- 10分钟白嫖我的常用的在线工具网站清单
- mui框架scroll,鼠标滑轮可以滚动,移动端触摸无法滚动
- (一)职业规划和制定计划
- axios系列之拦截器
- IDEAD搭建SpringBoot项目
- Nginx反向代理服务器基本应用
热门文章
- c++并发编程04-同步与异步
- 视频回顾 | 当我们在聊“弹性算力如何赋能XR行业”时,我们在聊什么?
- c语言最大值和最小值1157,基于NBU OJ的C语言在线实验及习题汇编(计算机科学与技术21世纪高等学校规划教材)...
- 天天婚庆网项目bug
- Smartbi电子表格软件架构与差异化特色
- iphone计算机错误修改,解决iPhone还原错误的几种方法
- Making The Grade G
- 计算机音乐谱 青花瓷,天谕手游青花瓷乐谱代码分享
- 数据分析和收集-website
- 如何打印CAD图纸中的一部分?CAD图纸打印教程分享