上线部署那些事3-备份脚本

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介:


先亮出一个备份批处理脚本。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
@echo  off
::备份计划
::   停止IIS服务,备份IIS文件夹。
::   停止数据库服务,备份数据库。
::   备份apache的配置文件。
::   备份tomcat的配置文件。
::   备份tomcat的webapps目录。
::
:: 部署计划
::   覆盖或者新加IIS文件夹。
::   变更数据库结构,导入基础数据。
::   修改apache配置文件。
::   修改tomcat配置文件。
::   覆盖或者新加tomcat文件夹。
:: ----------------------------------
::最终备份的目录是
::d:\dsnbackup\ year . month . day . hour . minute \env
::例如:
::D:.
::└─2013.06.17.08.53
::    └─www
::        ├─sqlserver
::        ├─tomcat
::        │  ├─ap
::        │  └─ttsn
::        ├─wcf
::        └─web
:: -----------------------------------
::备份文件存放的驱动盘
@ set  driver=D:
set  mpath=dsnbackup
::env环境变量,例如210,230,www,demo,代表一种系统运行环境
set  env=www
set  mypath= ""
set  webpath= "c:\inetpub\web"
set  wcfpath= "c:\inetpub\wcf"
set  appath= "d:\apache-tomcat-6.0.36-windows-x64\apache-tomcat-6.0.36\webapps\ap"
set  ttsnpath= "d:\apache-tomcat-6.0.36-windows-x64\apache-tomcat-6.0.36\webapps\ttsn"
set  isBackupSQLServer= "1"
set  isBackupIISWcf= "1"
set  isBackupIISWeb= "1"
set  isBackupApacheConf= "1"
set  isBackupTomcatConf= "1"
set  isBackupTomcatAp= "1"
set  isBackupTomcatTTSN= ""
::如果D盘不存在,则设置备份在C盘
if  not  exist %driver% (
   set  driver=c:
)
:: echo %driver%
@ set  mytime=% time %
@ set  mydate=% date %
@ set  myyear=%mydate:~0,4%
:: echo %myyear%
@ set  mymonth=%mydate:~5,2%
@ set  myday=%mydate:~8,2%
@ set  myhour=%mytime:~0,1%
if  "%myhour%" == " "  (
   @ set  myhour=0% time :~1,1%
else  (
   @ set  myhour=% time :~0,2%
)
@ set  myminute=%mytime:~3,2%
::@ set  mysecond=%mytime:~6,2%
::@ set  mypath=%myyear%.%mymonth%.%myday%.%myhour%.%myminute%.%mysecond%
@ set  mypath=%myyear%.%mymonth%.%myday%.%myhour%.%myminute%
::echo %myyear%.%mymonth%.%myday%.%myhour%.%myminute%.%mysecond%
::echo %mypath%
set  fpath=%driver%\%mpath%\%mypath%\%env%
::echo %fpath%
md %fpath%
echo  ----------------------------------
::备份web
echo 开始备份 IIS WEB
echo  -----
md %fpath%\web
xcopy /E /Y /C /Q %webpath% %fpath%\web
echo  -----
echo 备份 IIS WEB 完成
echo  ----------------------------------
::备份wcf
echo 开始备份 IIS WCF
echo  -----
md %fpath%\wcf
xcopy /E /Y /C /Q %wcfpath% %fpath%\wcf
echo  -----
echo 备份 IIS WCF 完成
echo  ----------------------------------
::备份ap
echo 开始备份 tomcat ap
echo  -----
md %fpath%\tomcat\ap
xcopy /E /Y /C /Q %appath% %fpath%\tomcat\ap
echo  -----
echo 备份 tomcat ap 完成
echo  ----------------------------------
::备份ttsn
echo 开始备份 tomcat ttsn
echo  -----
md %fpath%\tomcat\ttsn
xcopy /E /Y /C /Q %webpath% %fpath%\tomcat\ttsn
echo  -----
echo 备份 tomcat ttsn 完成
echo  ----------------------------------
:: ------------------------------------------------------------
::备份SQL Server
::创建备份目录
set  dbpath=sqlserver
md %fpath%\%dbpath%
:: --------------------------设置变量
::服务器名
@ set  dbserver=192.168.0.210
md \\%dbserver%\%driver:~,1%$\%mpath%\%mypath%\%env%\%dbpath%
::登陆用户名
@ set  dbuid=sa
::登陆密码
@ set  dbpwd=demo
:: -------------------------备份数据
::开始执行导出
@echo 开始备份SQL Server
echo  -----
set  dbbaksql=backup  database  KBDSN  TO  DISK= '%fpath%\%dbpath%\KBDSN.bak'
sqlcmd -S %dbserver% -U %dbuid% -P %dbpwd% -Q  "%dbbaksql%"
set  dbbaksql=backup  database  KBDSN_Market  TO  DISK= '%fpath%\%dbpath%\KBDSN_Market.bak'
sqlcmd -S %dbserver% -U %dbuid% -P %dbpwd% -Q  "%dbbaksql%"
set  dbbaksql=backup  database  KBDSN_ProductHis  TO  DISK= '%fpath%\%dbpath%\KBDSN_ProductHis.bak'
sqlcmd -S %dbserver% -U %dbuid% -P %dbpwd% -Q  "%dbbaksql%"
set  dbbaksql=backup  database  KBDSN_Special  TO  DISK= '%fpath%\%dbpath%\KBDSN_Special.bak'
sqlcmd -S %dbserver% -U %dbuid% -P %dbpwd% -Q  "%dbbaksql%"
set  dbbaksql=backup  database  KBDSN_XFD  TO  DISK= '%fpath%\%dbpath%\KBDSN_XFD.bak'
sqlcmd -S %dbserver% -U %dbuid% -P %dbpwd% -Q  "%dbbaksql%"
:: -------------------------完成备份
echo  -----
@echo SQL Server备份成功
echo  ----------------------------------
xcopy /E /Y /C /Q \\%dbserver%\%driver:~,1%$\%mpath%\%mypath%\%env%\%dbpath% %fpath%\%dbpath%
::如果需要让客户确认,请去掉下面代码前面的::注释符。
echo  ----------------------------------
@pause


上面的备份脚本有几个需要注意的地方。

1、sqlcmd

   sqlcmd是在安装了SQL Server 2005甚至更高版本的时候才具有的console命令。所以sqlcmd必须在安装了SQL Server 2005甚至更高版本的数据库的机器才可以运行。

2、数据库备份的目录

   SQL Server的backup database命令产生的备份文件是在数据库服务器的文件系统,如果需要拷贝到统一的目录,需要使用xcopy命令。


网站目前的alexa排名。




本文转自 virusswb 51CTO博客,原文链接:http://blog.51cto.com/virusswb/1221952,如需转载请自行联系原作者
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
4月前
|
关系型数据库 MySQL 测试技术
数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
【7月更文挑战第21天】数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
113 1
|
监控 数据管理 Shell
Shell脚本编写:自动化监控上网行为软件的数据备份与恢复
在今天的数字时代,监控上网行为软件变得越来越重要。无论您是个人用户还是企业,了解和管理上网行为数据对于网络安全和资源优化至关重要。本文将介绍如何使用Shell脚本编写一个自动化数据备份与恢复系统,用于监控上网行为软件的数据,以及如何自动将这些数据提交到网站。
188 1
|
缓存 jenkins Java
3分钟教你linux服务器无损迁移备份Jenkins
3分钟教你linux服务器无损迁移备份Jenkins一台服务器到期,jenkins正好部署在这台服务器,这时候如果在新服务器重新安装然后配置jenkins的每个服务时间两天起步,于是考虑将原服务器jenkins无损迁移到新服务器上,时间只需3分钟,nice
418 0
|
SQL 关系型数据库 MySQL
kkitDeploy功能之--备份系统介绍
kkitDeploy功能之--备份系统介绍
|
存储 运维 安全
【运维安全】文件误删除恢复实战
趁着你对象吃泡面的功夫,我修复了误删除的文件
217 0
【运维安全】文件误删除恢复实战
|
测试技术 数据库 数据库连接
Confluence 6 从生产环境中恢复一个测试实例
请参考 Restoring a Test Instance from Production 页面中的内容获得更多完整的说明。
1139 0
|
SQL 监控 Go
MSSQL-最佳实践-如何监控备份还原进度
--- title: MSSQL · 最佳实践 · 如何监控备份还原进度 author: 风移 --- # 摘要 本期月报是SQL Server备份还原专题分享系列的第六期,打算分享给大家如何监控SQL Server备份还原进度。 # 场景引入 由于SQL Server备份还原操作是重I/O读写操作,尤其是当数据库或数据库备份文件比较大的到时候。那么,我们就有强烈的需求去监
3825 0
下一篇
无影云桌面