diff --git a/backend/utils/mysql/client/local.go b/backend/utils/mysql/client/local.go index 3110e3f06..e838882a9 100644 --- a/backend/utils/mysql/client/local.go +++ b/backend/utils/mysql/client/local.go @@ -234,7 +234,7 @@ func (r *Local) Backup(info BackupInfo) error { dumpCmd = "mariadb-dump" } global.LOG.Infof("start to %s | gzip > %s.gzip", dumpCmd, info.TargetDir+"/"+info.FileName) - cmd := exec.Command("docker", "exec", r.ContainerName, dumpCmd, "-uroot", "-p"+r.Password, "--default-character-set="+info.Format, info.Name) + cmd := exec.Command("docker", "exec", r.ContainerName, dumpCmd, "--routines", "-uroot", "-p"+r.Password, "--default-character-set="+info.Format, info.Name) var stderr bytes.Buffer cmd.Stderr = &stderr diff --git a/backend/utils/mysql/client/remote.go b/backend/utils/mysql/client/remote.go index 9596ba9de..0040254c7 100644 --- a/backend/utils/mysql/client/remote.go +++ b/backend/utils/mysql/client/remote.go @@ -249,7 +249,7 @@ func (r *Remote) Backup(info BackupInfo) error { if err != nil { return err } - backupCmd := fmt.Sprintf("docker run --rm --net=host -i %s /bin/bash -c '%s -h %s -P %d -u%s -p%s %s --default-character-set=%s %s'", + backupCmd := fmt.Sprintf("docker run --rm --net=host -i %s /bin/bash -c '%s --routines -h %s -P %d -u%s -p%s %s --default-character-set=%s %s'", image, dumpCmd, r.Address, r.Port, r.User, r.Password, sslSkip(info.Version, r.Type), info.Format, info.Name) global.LOG.Debug(strings.ReplaceAll(backupCmd, r.Password, "******"))