繁体   English   中英

如何在 ubuntu 上转储 postgresql 数据库?

[英]How to dump postgresql database on ubuntu?

现在我尝试使用 python 备份 postgresql 数据库。

import gzip
from sh import pg_dump

def dump_database():
    with gzip.open('ticketing.sql', 'wb') as f:
        pg_dump('-h', 'localhost', '-U', 'postgres', 'mydatabase', _out=f)
dump_database()


它在我的 macbook 上正常工作,但是当我尝试在 ubuntu 服务器上运行此代码时,它会出现这样的错误。

pg_dump: [archiver (db)] connection to database "mydatabase" failed: fe_sendauth: no password supplied

那么为什么它不能在 ubuntu 服务器上运行以及如何解决这个问题。

假设我的密码 = password123

在 PGPASSWORD 的 python 脚本中将环境变量设置为:-

import os
os.environ['PGPASSWORD'] = 'password123'

或者您可以在 pg_dump 将作为参考运行的帐户的主目录中创建一个 .pgpass 文件: https://www.postgresql.org/docs/current/libpq-pgpass.ZFC35FDC70D5FC69D23EZA788

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM