Qt QProcess备份数据库,目前文件与空格

来源:互联网 发布:广发大数据 编辑:程序博客网 时间:2024/06/06 00:55

1.先说明下system调用mysql备份函数时的情况

成功===

"E:/Program Files/mysql-5.7.11-winx64/bin/mysqldump" -uroot hddpos > D://mnt/usb/sql-2017081617323.sql

失败===

"E:/Program Files/mysql-5.7.11-winx64/bin/mysqldump" -uroot hddpos > "D://mnt/usb/sql-2017081617323.sql"

失败===

"E:/Program Files/mysql-5.7.11-winx64/bin/mysqldump" -uroot hddpos > D:/Program Files/SoftPos/fastfd_localdata/sql_backup_dir/xxx.sql

失败===

"E:/Program Files/mysql-5.7.11-winx64/bin/mysqldump" -uroot hddpos > D:/Program Files/SoftPos/fastfd_localdata/sql_backup_dir/xxx.sql


后来

QString Cmd = QString("E:/Program Files/mysql-5.7.11-winx64/bin/mysqldump.exe -uroot hddpos");
    QString Path = QString("%1").arg("D:/Program Files/SoftPos/fastfd_localdata/sql_backup_dir/xxx.sql");
    QProcess *poc=new QProcess;
    poc->setStandardOutputFile(Path);
    poc->start(Cmd);
    qDebug() << __LINE__;
    qDebug() << __LINE__ <<poc->waitForFinished();
    qDebug() << __LINE__ << poc->errorString();