database backup

This commit is contained in:
Spitap
2022-07-21 13:48:44 +02:00
parent 56ed214fb5
commit 27b9de6755
4 changed files with 78 additions and 5 deletions

View File

@@ -141,6 +141,13 @@ class PostgreSQL(Database):
self.dbhost, dbname, dbuser, path)
utils.exec_cmd(cmd, sudo_user=self.dbuser)
def dumpDatabase(self, dbname, dbuser, dbpassword, path):
"""Dump DB to SQL file"""
self._setup_pgpass(dbname, dbuser, dbpassword)
cmd = "pg_dump -h {} -d {} -U {} -O -w > {}".format(
self.dbhost, dbname, dbuser, path)
utils.exec_cmd(cmd, sudo_user=self.dbuser)
class MySQL(Database):
@@ -250,6 +257,11 @@ class MySQL(Database):
"mysql -h {} -u {} -p{} {} < {}".format(
self.dbhost, dbuser, dbpassword, dbname, path)
)
def dumpDatabase(self, dbname, dbuser, dbpassword, path):
"""Dump DB to SQL file"""
cmd = "mysqldump -h {} -u {} -p{} {} > {}".format(
self.dbhost, dbuser, dbpassword, dbname, path)
utils.exec_cmd(cmd, sudo_user=self.dbuser)
def get_backend(config):