资源简介
Python3写的脚本,windows上应用的,实现服务器上的数据库通过磁盘映射备份到本地其他机器上的共享文件夹中,服务器上指定文件夹下的文件也备份到指定共享文件夹中,并发邮件通知
代码片段和文件信息
#-*- coding:UTF-8 -*-
import time
import pyodbc
import os
import shutil
import zipfile
import shutil
nowtime=time.strftime(‘%Y%m%d%H%M%S‘time.localtime(time.time()))+““
nowtime=‘20180723175116‘
dicParam={
## 磁盘映射配置
‘DiskMap‘:‘H:‘ # 映射磁盘的名称
‘BackServerPath‘:r‘\\备份机的IP或者机器名\xxxxx_backup‘ # 备份机器的路径
‘BackServerUSER‘:‘Administrator‘ # 备份机器的登入用户名
‘BackServerPWD‘ : ‘xxxxxx‘ # 备份机器的登入密码
## 数据库备份配置
‘DBBackFileName‘: r“D:/MSSQL/Backup/mydatabase_“ + nowtime + “.bak“ # 数据库备份的路径
‘DBServer‘:‘.‘ # 数据库服务器地址.表示本机
‘DBUser‘:‘sa‘ #数据库登入用户名
‘DBPwd‘:‘xxxxxx‘ #数据库登入用户名
‘DBName‘:‘mydatabase‘ # 数据库实例名
##文件压缩配置
‘RarExePath‘:r‘C:\Program Files (x86)\WinRAR\Rar.exe‘ # Rar的应用程序路径,Rar是用来压缩数据库备份文件用的
## 邮件发送配置
‘MailSMTPServer‘:‘smtp.163.com‘ #邮件服务器地址
‘MailFrom‘:“jnxxxxx@163.com“ # 发送邮件的邮箱
‘MailPassword‘:“xxxxx“ # 发送邮件的邮箱登入密码
‘MailTo‘:‘shdzhqxzh@163.com‘ # 主送的邮件地址,多人可用隔开,例如‘aaa@163.combbb@163.com‘
‘MailCC‘:‘499585080@qq.com‘ # 抄送的邮件地址逗人可用隔开
‘MailTopical‘:‘生成服务器备份‘ # 邮件主题
}
## 文件备份的路径[(‘源文件夹路径1‘ ‘目标文件夹路径1‘)(‘源文件夹路径2‘ ‘目标文件夹路径2‘)]
listDir = [
(r‘C:\Program Files\xxxxxx\xxxFiles‘ dicParam[‘DiskMap‘]+r‘\xxxFiles‘)
(r‘C:\Program Files\xxxxxx\xxxImage‘ dicParam[‘DiskMap‘]+r‘\xxxImage‘)
]
def DatabaseBackUp():
try:
print(‘开始备份数据库...‘)
cmd = “““SQLCMD -S %(DBServer)s -U %(DBUser)s -P %(DBPwd)s -d %(DBName)s -Q“BACKUP DATAbase %(DBName)s to disk=‘%(DBBackFileName)s‘“ “““%dicParam
print(cmd)
os.system(cmd)
if os.path.isfile(dicParam[‘DBBackFileName‘]):
print(‘备份数据库成功.‘)
return True;
else:
print(‘备份数据库失败.‘)
return False
except Exception as e:
print(e)
print(‘备份数据库错误.‘)
return False
def CreateDriverH():
“创建磁盘映射“
print(‘开始创建磁盘映射 H...‘)
os.system(“net use %(DiskMap)s %(BackServerPath)s %(BackServerPWD)s /USER:%(BackServerUSER)s“%dicParam)
if os.path.exists(“%s\\“%(dicParam[‘DiskMap‘])):
print(‘创建磁盘映射 %s 成功.‘%(dicParam[‘DiskMap‘]))
return True
else:
print(‘创建磁盘映射 %s 失败.‘%(dicParam[‘DiskMap‘]))
return False
def DeleteDriverH():
“删除磁盘映射“
print(‘开始创建磁盘映射 %s ...‘%(dicParam[‘DiskMap‘]))
os.system(“net use %s /del /y“%(dicParam[‘DiskMap‘]))
if os.path.exists(“%s\\“%(dicParam[‘DiskMap‘])):
print(‘删除创建磁盘映射 %s 失败.‘%(dicParam[‘DiskMap‘]))
return False
else:
print(‘删除创建磁盘映射 %s 成功.‘%(dicParam[‘DiskMap‘]))
return True
def RarFile(file):
“““压缩文件成功返回rar文件名,失败返回None“““
print(‘开始压缩文件 %s...‘%file)
if os.path.isfile(file):
filenameextension = os.path.splitext(file)
newfilename = filename+‘.rar‘
cmd = ““““ “%s“ a “%s“ “%s“ “““%(dicParam[‘RarExePath‘] newfilename file)
print(cmd)
os.syst
相关资源
- python3.5可用的scipy
- PYTHON3 经典50案例.pptx
- python3.5.2.chm官方文档
- python3.5.4_windows下32与64位安装包
- GitHack-python3.zip
- Python3.x+PyQtChart实现数据可视化界面
- python3根据模板图片批量自动制作个性
- 《机器学习实战》源代码Python3
- Python3.5.2的IDLE汉化版计算机等级考试
- python3.5 百度ai人脸识别
- python3实现的国密SM2+SM3
- python100道面试题及解答全部答案 pyc
- #python3.3关于Tk中的Treeview使用方法
- Python3.x+Pyqt5实现界面编程浏览网页
- 《机器学习实战》Python3代码
- Python3学习笔记
- Python3.7.2中文文档-标准库-通用操作系
- Python3.7.2中文文档-标准库-Python数据类
- python3基础教程第三版高清
- 随机森林python3实现代码(带数据集)
- dlib-19.18.0-cp37-cp37m-linux_armv7l.whl
- python3学习路线+思维导图
- Learn python3 the hard way
- 笨办法学python 3 第四版 英文
- python3爬虫
- Beginning Python: From Novice to Professional
- Python3实现KNN的三个包含数据集,水果
- python3中文帮助手册和英文帮助手册
- 基于协同过滤的电影推荐系统 python
- 廖雪峰Python3完整版PDF
评论
共有 条评论