成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器

用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器

熱門標簽:滴滴地圖標注公司 杭州房產地圖標注 江門智能電話機器人 天津塘沽區(qū)地圖標注 400電話在線如何申請 地圖標注可以遠程操作嗎 甘肅高頻外呼系統(tǒng) 智能電話機器人調研 如何申請400電話代理

實現(xiàn)的功能:在win7下,每天晚上1點,自動將 F:/data中所有文件進行壓縮,以[mongodb+日期]命名,將壓縮好的文件存儲在本地目錄 F:\MongoDbData\,然后將這個壓縮好的文件上傳到ftp://192.168.0.101/MongoDBup/目錄下

分三步:

第一步:搭建FTP服務器,配置好FTP環(huán)境。 第二步:用python編寫壓縮文件并實現(xiàn)FTP上傳的腳本第三步:使用win7自帶的任務計劃程序定時執(zhí)行python腳本

1. 環(huán)境

Python:3.6.1Python IDE:pycharm系統(tǒng):win7

2. 搭建FTP服務器,配置好FTP環(huán)境

2.1. 啟用FTP和IIS服務器

 

注意:要全部展開,勾選上。

2.2. 添加FTP服務器

2.3. 設置參數(shù)

2.4. 設置成功,訪問

3. 用python編寫壓縮文件并實現(xiàn)FTP上傳的腳本

3.1. Import包:

# python3.6.1
import zipfile
import os
import datetime
from ftplib import FTP

3.2. 定義配置信息:

# 定義配置信息
srcFolder = r"F:\Data"       # 被壓縮的源數(shù)據(jù),文件夾形式
desFolder = r'F:\MongoDbData\\'   # 壓縮好的數(shù)據(jù)臨時存放的位置
ftp_url = "192.168.0.101"      # FTP服務器地址
ftp_port = 21            # FTP服務端口號
ftpUploadFolder = "MongoDBup"    # 壓縮數(shù)據(jù)在FTP服務器上存放的位置

3.3. 壓縮數(shù)據(jù)源(文件夾):

# 壓縮文件夾
def zipFolder(srcFolder, desFolder, date):
  '''
  :param srcFolder: 被壓縮的源數(shù)據(jù)位置
  :param desFolder: 壓縮之后文件的存放路徑
  :param date: 執(zhí)行壓縮的當前時間,datetime產生(ext:2017-08-16 14:56:40.872613)
  :return: 壓縮文件的路徑
  '''
  startTime = datetime.datetime.now()
  print(f"Enter func zipFolder, time:{startTime}")
  desName = f"{desFolder}mongodb{date.year}{date.month}{date.day}.zip"

  # 檢查是否已經(jīng)壓縮過了
  if os.path.exists(desName):
    endTime = datetime.datetime.now()
    print(f"Already exsist, leave func zipFolder, time:{endTime}, usedTime:{endTime-startTime}")
    return desName

  z = zipfile.ZipFile(desName, 'w', zipfile.ZIP_DEFLATED)
  for dirpath, dirnames, filenames in os.walk(srcFolder):
    print(f"dirpath:{dirpath}, dirnames:{dirnames}, filenames:{filenames}")
    for filename in filenames:
      try:
        # Mongodb在運行時,有幾個關于lock的文件無法壓縮,為了避免程序終止,忽略這幾個文件
        z.write(os.path.join(dirpath, filename))
      except Exception as e:
        print(f"except: {e}, cannot zip file: {dirpath}{filename}")
  z.close()
  endTime = datetime.datetime.now()
  print(f"zip done, leave func zipFolder, time:{endTime}, usedTime:{endTime-startTime}")
  return desName

3.4. 文件上傳到FTP服務器上:

# 上傳文件至FTP服務器
def ftpUpload(filename, folder, ftp_url, ftp_port):
  '''
  :param filename: 待上傳文件路徑
  :param folder: 文件上傳至FTP服務器上的存儲目錄
  :param ftp_url: FTP服務器IP
  :param ftp_port: 端口號,默認為21
  :return: status code
  '''
  startTime = datetime.datetime.now()
  print(f"Enter func ftpUpload, time:{startTime}")
  ftp = FTP()
  ftp.set_debuglevel(2)          # set debug level, detail info:2, close:0
  ftp.connect(ftp_url, ftp_port)
  ftp.login('', '')            # 登錄,如果匿名登錄則用空串代替
  print(ftp.getwelcome())         # ext: *welcome* '220 Microsoft FTP Service'
  ftp.cwd(folder)             # Change to a directory on FTP server
  bufsize = 1024             # 設置緩沖塊大小
  file_handler = open(filename, 'rb')   # 讀模式在本地打開文件
  res = -1
  try:
    # 為了避免程序終止,忽略可能出現(xiàn)的錯誤
    res = ftp.storbinary(f"STOR {os.path.basename(filename)}", file_handler, bufsize) # upload file
  except Exception as e:
    print(f"except: {e}, cannot upload file: {ftp_url}:{ftp_port} {filename}")
  finally:
    ftp.set_debuglevel(0)          # 關閉debug信息
    file_handler.close()
    ftp.quit()
  endTime = datetime.datetime.now()
  print(f"Upload done, leave func ftpUpload, time:{endTime}, usedTime:{endTime-startTime}")
  return res

3.5. 主程序:

# main
backupTime = datetime.datetime.now()
zip_des_name = zipFolder(srcFolder, desFolder, backupTime)
print(zip_des_name)
ftp_res = ftpUpload(zip_des_name, ftpUploadFolder, ftp_url, ftp_port)
print(f"ftp_res: {ftp_res}")

4. 使用win7自帶的任務計劃程序定時執(zhí)行python腳本

位置:開始 ——> 附件 ——> 系統(tǒng)工具 ——> 任務計劃程序

不需要時,右鍵——>刪除任務 即可

5. 效果

5.1. 本地生成的壓縮文件

5.2. 上傳至FTP服務器的壓縮文件

5.3. 詳細信息-性能-時間

日志信息:

源文件data總共8.7G,壓縮后5.3G,壓縮時間20m,局域網(wǎng)內上傳時間18m。

E:\Miniconda\python.exe E:/PyCharmCode/Justtest/bak.py
Enter func zipFolder, time:2017-08-16 19:48:39.331200
dirpath:F:\Data, dirnames:['diagnostic.data', 'journal'], filenames:['collection-0--394122179086539486.wt', 'collection-102--394122179086539486.wt', 'collection-104--394122179086539486.wt', 'collection-106--394122179086539486.wt', 'collection-108--394122179086539486.wt'], '_mdb_catalog.wt']
except: [Errno 13] Permission denied: 'F:\\Data\\mongod.lock', cannot zip file: F:\Datamongod.lock
except: [Errno 13] Permission denied, cannot zip file: F:\DataWiredTiger.lock
dirpath:F:\Data\diagnostic.data, dirnames:[], filenames:['metrics.2017-08-04T07-04-29Z-00000', 'metrics.2017-08-05T10-47-22Z-00000', 'metrics.2017-08-06T14-52-22Z-00000', 'metrics.2017-08-07T18-17-22Z-00000', 'metrics.2017-08-15T06-09-26Z-00000', 'metrics.2017-08-16T09-51-29Z-00000']
dirpath:F:\Data\journal, dirnames:[], filenames:['WiredTigerLog.0000000247', 'WiredTigerPreplog.0000000006', 'WiredTigerPreplog.0000000007', 'WiredTigerPreplog.0000000008']
zip done, leave func zipFolder, time:2017-08-16 20:08:22.728200, usedTime:0:19:43.397000
F:\MongoDbData\\mongodb2017816.zip
Enter func ftpUpload, time:2017-08-16 20:08:22.728200
*get* '220 Microsoft FTP Service\n'
*resp* '220 Microsoft FTP Service'
*cmd* 'USER anonymous'
*put* 'USER anonymous\r\n'
*get* '331 Anonymous access allowed, send identity (e-mail name) as password.\n'
*resp* '331 Anonymous access allowed, send identity (e-mail name) as password.'
*cmd* 'PASS **********'
*put* 'PASS **********\r\n'
*get* '230 User logged in.\n'
*resp* '230 User logged in.'
*welcome* '220 Microsoft FTP Service'
220 Microsoft FTP Service
*cmd* 'CWD MongoDBup'
*put* 'CWD MongoDBup\r\n'
*get* '250 CWD command successful.\n'
*resp* '250 CWD command successful.'
*cmd* 'TYPE I'
*put* 'TYPE I\r\n'
*get* '200 Type set to I.\n'
*resp* '200 Type set to I.'
*cmd* 'PASV'
*put* 'PASV\r\n'
*get* '227 Entering Passive Mode (192,168,0,101,11,221).\n'
*resp* '227 Entering Passive Mode (192,168,0,101,11,221).'
*cmd* 'STOR mongodb2017816.zip'
*put* 'STOR mongodb2017816.zip\r\n'
*get* '125 Data connection already open; Transfer starting.\n'
*resp* '125 Data connection already open; Transfer starting.'
*get* '226 Transfer complete.\n'
*resp* '226 Transfer complete.'
Upload done, leave func ftpUpload, time:2017-08-16 20:26:20.125200, usedTime:0:17:57.397000
ftp_res: 226 Transfer complete.

6. 注意事項

 6.1. FTP服務器IP地址變更處理

6.1.1. 第一步,修改FTP服務器站點配置。

6.1.2. 第二步,修改代碼中FTP登錄IP

ftp.connect("172.16.7.107", 21)

6.1.3. 出錯信息 如果只是單純按照6.1.2 修改登錄IP,沒有修改FTP服務器站點設置的話,將會出現(xiàn)如下莫名其妙的錯誤:

enter ftpUpload
*get* ''
Traceback (most recent call last):
 File "AutoBackupMongoTest.py", line 64, in module>
  ftp_res = ftpUpload(zip_des_name, ftpUploadFolder)
 File "AutoBackupMongoTest.py", line 42, in ftpUpload
  ftp.connect('172.16.7.107', 21)
 File "E:\Miniconda\lib\ftplib.py", line 155, in connect
  self.welcome = self.getresp()
 File "E:\Miniconda\lib\ftplib.py", line 234, in getresp
  resp = self.getmultiline()
 File "E:\Miniconda\lib\ftplib.py", line 220, in getmultiline
  line = self.getline()
 File "E:\Miniconda\lib\ftplib.py", line 208, in getline
  raise EOFError
EOFError

或者是如下錯誤:

enter ftpUpload
Traceback (most recent call last):
 File "AutoBackupMongoTest.py", line 63, in module>
  ftp_res = ftpUpload(zip_des_name, ftpUploadFolder)
 File "AutoBackupMongoTest.py", line 41, in ftpUpload
  ftp.connect("192.168.0.101", 21)
 File "E:\Miniconda\lib\ftplib.py", line 152, in connect
  source_address=self.source_address)
 File "E:\Miniconda\lib\socket.py", line 722, in create_connection
  raise err
 File "E:\Miniconda\lib\socket.py", line 713, in create_connection
  sock.connect(sa)
TimeoutError: [WinError 10060] 由于連接方在一段時間后沒有正確答復或連接的主機沒
有反應,連接嘗試失敗。

到此這篇關于用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器的文章就介紹到這了,更多相關Python 定時備份Mongodb內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MongoDB安裝使用并實現(xiàn)Python操作數(shù)據(jù)庫
  • 使用python向MongoDB插入時間字段的操作
  • 如何用python 操作MongoDB數(shù)據(jù)庫
  • python連接mongodb數(shù)據(jù)庫操作數(shù)據(jù)示例
  • python爬蟲用mongodb的理由
  • python爬蟲數(shù)據(jù)保存到mongoDB的實例方法
  • Python MongoDB 插入數(shù)據(jù)時已存在則不執(zhí)行,不存在則插入的解決方法
  • Python操作Mongodb數(shù)據(jù)庫的方法小結
  • Python 操作 MongoDB 講解詳細

標簽:東莞 長春 臨汾 漢中 河池 廊坊 德宏 重慶

巨人網(wǎng)絡通訊聲明:本文標題《用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器》,本文關鍵詞  用,Python,實現(xiàn),定時,備份,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器》相關的同類信息!
  • 本頁收集關于用Python實現(xiàn)定時備份Mongodb數(shù)據(jù)并上傳到FTP服務器的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    天天操中文字幕视频| caoporn国产精品免费视频| 日批视频在线免费看| 亚洲mv大片欧洲mv大片| 国产拍揄自揄精品视频麻豆| 亚洲 中文字幕 日韩 无码| 成人在线观看免费完整| 波多野结衣办公室双飞| 中文字幕乱在线伦视频中文字幕乱码在线| 裸体网站视频| 自拍偷拍一区| 综合激情网站| 欧美性猛交xxxx免费看漫画| 成人av资源网址| 欧美激情精品久久久久久黑人| 18一19gay欧美视频网站| 午夜啪啪小视频| 午夜av在线免费观看| 免费美女久久99| 亚洲免费在线观看| 国产精品视频内| 91日韩中文字幕| 日韩中文字幕在线视频| 久久九九热免费视频| 久久免费精彩视频| 亚洲高清在线精品| 综合图区亚洲白拍在线| 岛国一区二区三区| 中文字幕在线永久在线视频| 欧美一区二区三区小说| 国产成人精品一区二区三区在线观看| 一区二区在线免费播放| 深夜宅男网站免费进入| 22288色视频在线观看| 欧美精品18videos性欧美| 国产高清自拍一区| 嫩呦国产一区二区三区av| 国产素人视频在线观看| 一区二区三区在线观看免费视频| 三上悠亚作品在线观看| 久久精品黄色片| 成人午夜短视频| 成人性色生活片免费看爆迷你毛片| 欧美性生给视频| 鲁大师成人一区二区三区| 国产情侣久久久久aⅴ免费| 污黄网站在线观看| aaaaaa亚洲| 国产精品18毛片一区二区| 日韩va亚洲va欧洲va国产| 无套内谢丰满少妇中文字幕| 99视频国产精品| 激情丁香综合五月| 久久久精品福利| 99久久久无码国产精品性波多| 91久久国产精品| 国产自产一区二区| 亚洲欧美精品在线| 久久视频在线视频| 欧美亚洲动漫制服丝袜| 99riav视频| av在线免费观看网站| 婷婷色中文字幕| 亚洲欧美偷拍视频| 亚洲一区二区电影| 日韩成人中文字幕| 51xtv成人影院| 99免费在线视频| 国产1区2区3区中文字幕| 韩日av一区二区| 精品视频久久久久久| 国产蜜臀av在线播放| 一二三区精品视频| 在线观看福利一区| 国产一区二区丝袜高跟鞋图片| 成人做爰视频网站| 亚洲视频999| 亚洲一区二区三区在线视频| 亚洲精品乱码久久久久久自慰| 69p69国产精品| av福利在线播放| 日本一区二区在线免费播放| 99成人免费视频| 福利电影一区| 欧美激情中文网| 视频一区国产精品| 波多野结衣视频在线看| 欧美三级午夜理伦三级老人| 亚洲丝袜精品丝袜在线| 国产精品无码专区在线观看| 国产精品高清无码在线观看| 四虎成人在线视频| 日韩国产美国| 麻豆91小视频| 成+人+亚洲+综合天堂| 欧美日韩视频在线一区二区观看视频| 国产精品538一区二区在线| 欧美毛片又粗又长又大| 欧美日韩久久精品| 国产羞羞视频| 精品国产aⅴ一区二区三区东京热| yw3121.龙物视频永不失联| 91日韩视频在线观看| 欧美日韩高清一区| eeuss影院在线观看第一页| 乱插在线www| 久久免费黄色网址| 日日摸夜夜添夜夜添亚洲女人| 成年人黄色在线观看| 熟妇人妻av无码一区二区三区| 91亚洲永久精品| 国产乱淫av片| 成人三级视频在线观看| 日韩一区二区三区av| 天堂午夜影视日韩欧美一区二区| 久久久www| xxx免费视频| 国产精品久久久| av中文在线资源库| 在线看av的网址| 亚洲最大成人| 免费不卡在线观看| 伦理一区二区| 日本美女xxx| 欧美午夜精品一区二区三区| 国产亚洲一本大道中文在线| 一级 黄 色 片一| 国语对白做受xxxxx在线中国| 国产精品夜夜嗨| 久久久久久久国产精品视频| 欧美性猛交一区二区三区| 2025韩国理伦片在线观看| 福利片在线看| 中文字幕亚洲天堂| 天天久久综合| 免费看a级黄色片| 五月天婷婷丁香| 国产一区二区精品| 国产导航在线| 国产成人久久精品77777综合| 亚洲ⅴ国产v天堂a无码二区| 国产xxx在线观看| 中文字幕亚洲综合久久菠萝蜜| 91九色丨porny丨极品女神| 精品无人区乱码1区2区3区免费| 久久久成人的性感天堂| 成人av一级片| 色综合天天狠天天透天天伊人| 五月婷婷另类国产| 高清乱码毛片入口| 久久精品国产亚洲AV成人婷婷| 中国一级特黄毛片大片| 在线日韩一区二区| 久久99国产精品视频| 久久久久久亚洲精品美女| 啪啪小视频网站| 高清毛片aaaaaaaa**| 精品裸体舞一区二区三区| 国产精品免费观看视频| 国产丝袜精品第一页| 日日夜夜精品视频免费观看| av黄色在线网站| 四川一级毛毛片| 国产精品福利视频| 精品视频免费| 欧美中文字幕视频| 欧美h在线观看| 欧美不卡123| 99自拍视频在线| 91麻豆国产香蕉久久精品| 91av在线免费播放| 国产精品偷伦视频免费观看国产| 免费av网站观看| 免费成人在线观看视频| 日韩精品中文字幕第1页| 超碰人人干人人| 亚洲激情电影在线| 久久一区亚洲| 一本一道综合狠狠老| 91亚洲国产成人精品一区二三| 天堂av网在线| 好吊日免费视频| 亚洲乱码国产乱码精品精的特点| 大胆人体一区| 丁香婷婷久久久综合精品国产| yy111111少妇影院日韩夜片| 欧美一级视频一区二区| 欧美日韩日日摸| 色妞欧美日韩在线| 欧洲成人在线观看| 黄页网站大全一区二区| 亚洲第一香蕉网| 久久午夜激情| 黄色免费网站在线| 韩国一级黄色录像| 麻豆国产一区二区| 欧美虐宫另类残忍视频| 韩国三级hd两男一女| 在线观看国产网站| 欧美黑人xxxxx性受| 黄网站免费久久| 久久大胆人体视频| 欧洲一区二区视频| 日本黄色大片在线观看| 国产精品高精视频免费| 久久国产加勒比精品无码| 中文字幕视频在线免费观看| 国产精品久久久久久久牛牛| 国产精品亚洲午夜一区二区三区| 国产女人在线视频| 国产精品午夜av| 好想男人揉我下面好多水| 麻豆传传媒久久久爱| 国产99久久精品一区二区| 久久精品国产77777蜜臀| 久久精品亚洲无码| 国产一级在线| 中文字幕亚洲情99在线| www.91在线| eeuss影院www在线播放| 色悠悠在线视频| 可以直接在线观看的av| 久草热久草热线频97精品| www免费网站在线观看| 2023av视频| 老牛影视av一区二区在线观看| 午夜爽爽爽男女免费观看| 亚洲午夜久久久| 亚洲最大福利网| 亚洲a级在线观看| 国产卡一卡2卡三卡免费视频| 大地资源第二页在线观看高清版| 国产精品免费av| 国产精品久久91| 久久天堂av综合合色| 欧美亚洲日本精品| 日本欧美大码aⅴ在线播放| 精品高清久久| 岛国成人av| 国产欧美在线观看| 国产毛片久久久久久| 91美女视频在线| 姬川优奈aav一区二区| 欧美高清3dfreexxxx性| 99久久99久久精品| 欧美噜噜久久久xxx| 国产精品国产a级| 男男做性免费视频网| 国产成人精品久久一区二区小说| 激情婷婷亚洲| 国产欧美一区二区三区在线| 国产综合av在线| 人人爱人人爽| 国产精品灌醉下药二区| 丁香花在线高清完整版视频| 免费看一级黄色| 97视频一区| 国产日韩电影| 国产又粗又长又大视频| 国产亚洲欧美日韩在线一区| 亚洲视频导航| 成人综合婷婷国产精品久久| 99久久婷婷国产一区二区三区| 91精品久久久久久久蜜月| 欧美午夜片在线免费观看| 久久久久亚洲AV成人无码国产| 日韩精品视频一区二区三区| 国产盗摄女厕一区二区三区| 4444kk亚洲人成电影在线| 国产日韩一级片| 久久综合毛片| 97在线视频免费观看完整版| 成人精品影视| 午夜久久福利视频| 三级全黄的视频在线观看| 国产伦精品一区二区三区视频女| 精品人伦一区二区三区| 99国产精品99| 国产又大又粗又硬| 精品国产伦理网| 日韩少妇与小伙激情| 最近免费观看高清韩国日本大全| 天海翼一区二区| 久草在线中文888| 视频一区二区免费| 激情综合激情五月| heyzo在线播放| 黄色在线观看国产| 91久久精品无码一区二区| 国产精品一国产精品| av免费在线网址| 成人午夜一级二级三级| 亚洲成人xxx| 黄页网站大全在线免费观看| 免费99热在线观看| 亚洲午夜av久久乱码| 久久精品国产清自在天天线| 久久久久久91| 看欧美ab黄色大片视频免费| 久艹在线免费观看| 亚洲精品国产高清久久伦理二区| 免费成人你懂的| 成人黄色短视频在线观看| 国产美女精品写真福利视频| 蜜桃精品噜噜噜成人av| 免费无码av片在线观看| 欧美精品电影在线播放| 18成人免费观看视频| 国产日韩在线观看视频| 91av视频在线观看| 日韩欧美在线第一页| 亚洲一级黄色av| 午夜激情成人网| 粉嫩精品一区二区三区在线观看| 男人插女人欧美| 精品国产91亚洲一区二区三区www| 亚洲女人天堂av| 国产中文字幕在线播放| 可以免费看的黄色网址| 台湾色综合娱乐中文网| 亚洲一区免费网站| 在线影视一区二区三区| 91精品国产91久久久久久青草| 日本一级二级视频| 西西裸体人体做爰大胆久久久| 黄色裸体一级片| 亚洲线精品久久一区二区三区| 精品一区二区免费在线观看|