BrokenPipeError в сценарии резервного копирования Python - PullRequest
1 голос
/ 12 июля 2020

Я создал сценарий резервного копирования для автоматического резервного копирования базы данных. код выполняется и работает нормально. но в конце выполнения он показывает ошибку обрыва канала.

import gzip
import subprocess

with gzip.open('backup.gz', 'wb') as f:
    popen = subprocess.Popen(['pg_dump', '--no-owner', '--no-acl', '-U', 'postgres', '-d', 'esell_db', '-h', '127.0.0.1'], stdout=subprocess.PIPE, stdin=subprocess.PIPE, universal_newlines=True)
popen.stdin.write("rootVidhyaDhan123#!\n")
    for stdout_line in iter(popen.stdout.readline, ""):
        f.write(stdout_line.encode('utf-8'))
    popen.stdin.close()
    popen.stdout.close()
    popen.wait()
...