Python Mariabackup忽略--目标目录

Python Mariabackup忽略--目标目录,python,mariadb,mysql-python,Python,Mariadb,Mysql Python,我正在将我们的mariadb备份作业自动化到python程序中。但是,由于某些原因,--target directory参数似乎在从os.system运行实际命令时被忽略,尽管该参数已正确传递并通过打印验证。代码如下: import os import datetime, time import mysql.connector as mariadb unix_socket = "/var/lib/mysql/mysql.sock" currentdate = datetime.datetim

我正在将我们的mariadb备份作业自动化到python程序中。但是,由于某些原因,--target directory参数似乎在从os.system运行实际命令时被忽略,尽管该参数已正确传递并通过打印验证。代码如下:

import os
import datetime, time
import mysql.connector as mariadb


unix_socket = "/var/lib/mysql/mysql.sock"
currentdate = datetime.datetime.now()
bkp_path = time.strftime("/%Y/%m-%d/%H%M")
ro_status = ("show global variables like 'read_only%'")
dblist = ("show databases")
db = mariadb.connect(user='pytest', password='pytest', unix_socket=unix_socket)
cur = db.cursor()
cur.execute(ro_status)
result = cur.fetchall()
for r in result:
        if "OFF" in r:
            cur.execute(dblist)
            dbs = cur.fetchall()
            for d in dbs:
                dbstr = ''.join(d)
                bkp_path = "/backups/" + dbstr + time.strftime("/%Y/%m-%d/%H%M/")
                bkp_cmd = "sudo mariabackup --backup --databases='" + dbstr + "' --target-directory=" + bkp_path +"  --user pytest --password=pytest --no-lock"
                try:
                    os.stat(bkp_path)
                except:
                    os.makedirs(bkp_path)
                try:
                   # print(bkp_cmd)
                    os.system(bkp_cmd)
                except:
                        print("Problem running backup on this host")
        else:
            print(h + " is read only and will not be backed up")
打印命令的示例: sudo mariabackup--backup--databases=“testdbBA”--目标目录=/backups/testdbBA/2019/03-06/1659/--用户pytest--password=pytest--无锁

即使通过打印块单独运行,它也会尝试写入本地主目录而不是指定的目标目录。

its--target dir not--target directory


多亏了MFisherKDX

看起来像是--目标目录而不是--目标目录有时是调试自己的代码时遗漏的简单内容!。这就是问题所在-谢谢!