【发布时间】:2020-10-15 07:12:18
【问题描述】:
我正在尝试使用 psql 在 macOS 上通过终端创建 PostgreSQL local db 转储。我的下一步是upload/import my entire db to my Amazon RDS PostgreSQL db instance。
谁能帮助我使用终端命令为我的“mydb”数据库创建转储文件“mydbdump.sql”。我已经对现有问题进行了分类,搜索了论坛(尝试过similar Stack Overflow question),甚至是 Amazon RDS 文档(上图,链接),并且对这些文档中的任何命令都没有运气。我做错了什么?
这是我迄今为止尝试过的(我没有得到任何回报,甚至没有错误):
通过 sudo:
sudo -u postgres psql pg_dump -Fc -o -f /Users/<my_computer>/database_backup.sql mydb
通过 psql,连接到 mydb (\c mydb;):
mydb-# pg_dump dbname=mydb -f mydbdump.sql
mydb-# pg_dump -U postgres -W -F t mydb > /Users/<my_computer>/database_backup.sql
mydb-# pg_dump -Fc mydb > /Users/<my_computer>/database_backup.sql
mydb-# pg_dump -U postgres mydb > database_backup.sql
mydb-# pg_dump -Fc mydb > /Users/<my_computer>/database_backup.sql
mydb-# pg_dump -U postgres -W -F t mydb > /Users/<my_computer>/database_backup.sql
供参考: 我在 settings.py 中使用 Django:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'mydb',
'USER': 'dbuser',
'PASSWORD': '<MYPASSWORD>',
'HOST': 'localhost',
'PORT': '',
}
}
顺便说一句,我的 Django 应用程序运行成功。
当我在 mydb 中列出所有数据库关系时:
\dt mydb;
输出:
List of relations
Schema | Name | Type | Owner
--------+----------------------------+-------+--------
public | auth_group | table | dbuser
public | auth_group_permissions | table | dbuser
public | auth_permission | table | dbuser
public | auth_user | table | dbuser
public | auth_user_groups | table | dbuser
public | auth_user_user_permissions | table | dbuser
public | django_admin_log | table | dbuser
public | django_content_type | table | dbuser
public | django_migrations | table | dbuser
public | django_session | table | dbuser
public | polls_choice | table | dbuser
public | polls_question | table | dbuser
(12 rows)
当我列出 psql 中的所有模式时:
select s.nspname as table_schema,
s.oid as schema_id,
u.usename as owner
from pg_catalog.pg_namespace s
join pg_catalog.pg_user u on u.usesysid = s.nspowner
order by table_schema;
输出:
table_schema | schema_id | owner
--------------------+-----------+----------
information_schema | 13337 | postgres
pg_catalog | 11 | postgres
pg_temp_1 | 12314 | postgres
pg_toast | 99 | postgres
pg_toast_temp_1 | 12315 | postgres
public | 2200 | postgres
【问题讨论】:
-
你没有在 psql 中运行 pg_dump
标签: django postgresql psql