KINGBASE数据库备份通过scp传输到异机python脚本

python3 在数据库本机做备份,然后将备份通过scp的方式同步到异机,kingbase数据库需要配置本机无密码访问

import os
import subprocess
import datetime

now = datetime.datetime.now()
curDate = now.strftime("%Y%m%d")
backUpPath = "/data/databackup/kingbase"
kdbHost = "127.0.0.1"
kdbUser = "system"
kdbPort = "54321"
kdbNames =['database1','database2']
for dbname in kdbNames:
  fileName = backUpPath+"/"+dbname+"_"+curDate+".dmp"
  print(fileName)
  dbbackCmd = "/data/kingbase/Server/bin/sys_dump -h "+kdbHost+" -p "+kdbPort+" -U "+kdbUser+"  -Fc  -f  "+fileName+" "+dbname
  print(dbbackCmd)
  p = subprocess.run(dbbackCmd, shell=True)
  scp_command = " scp  -r " + fileName + " root@173.11.31.17:/data/databackup/"
  if os.path.exists(fileName):
     p = subprocess.run(scp_command, shell=True)
     os.remove(fileName)