我想将我的数据库导出为.sql文件。有人能帮帮我吗?我找到的解决方案不起作用。请详细描述。在Windows 7上。
.sql
v1l68za41#
pg_dump默认为纯SQL导出。数据和结构。打开command prompt并运行pg_dump -U username -h localhost databasename >> sqlfile.sql上面的命令是首选,因为大多数时候会有一个错误,这将是类似-...FATAL: Peer authentication failed for user ...
pg_dump -U username -h localhost databasename >> sqlfile.sql
...FATAL: Peer authentication failed for user ...
6kkfgxo02#
在Windows中,首先,确保路径已添加到环境变量PATH中C:\Program Files\PostgreSQL\12\bin成功添加路径后,重新启动cmd并键入命令pg_dump -U username -p portnumber -d dbname -W -f location此命令将导出模式和数据对于仅模式,使用-s代替-W;对于仅数据,使用-a。根据您的情况替换每个变量,如username、portnumber、dbname和location**所有内容都区分大小写,请确保正确插入所有内容,**并导入psql -h hostname -p port_number -U username -f your_file.sql databasename确保你的数据库被创建或创建查询存在于.sql文件中
C:\Program Files\PostgreSQL\12\bin
pg_dump -U username -p portnumber -d dbname -W -f location
-s
-W
-a
psql -h hostname -p port_number -U username -f your_file.sql databasename
文档:https://www.postgresql.org/docs/current/app-pgdump.html
7gyucuyw3#
转到命令行并运行
pg_dump -U userName -h localhost -d databaseName > ~/Desktop/cmsdump.sql
ar7v8xwq4#
如果您在windows open cmd上运行以下命令,请编辑用户和数据库等详细信息
pg_dump -U postgres -h localhost -d statepos > C:\Users\ston\Desktop\statepos.sql
sigwle7e5#
例如,您可以将用户(角色)john的apple数据库的模式和数据导出到backup.sql,如下所示。* 如果backup.sql不存在,则会创建backup.sql,您也可以使用-Fp,我在回答如何使用-Fc和-Ft导出和归档模式和数据时解释了这一点,我的回答解释了如何将backup.sql导入orange数据库:
john
apple
backup.sql
-Fp
-Fc
-Ft
orange
pg_dump -U john apple > backup.sql
或者:
pg_dump -U john -d apple > backup.sql
pg_dump --username=john --dbname=apple > backup.sql
pg_dump --username john --dbname apple > backup.sql
pg_dump -U john -f backup.sql apple
pg_dump -U john -d apple -f backup.sql
pg_dump --username=john --file=backup.sql apple
pg_dump --username john --file backup.sql apple
pg_dump --username=john --dbname=apple --file=backup.sql
pg_dump --username john --dbname apple --file backup.sql
然后,您需要在运行上面的命令后输入密码:
Password:
此外,您还可以将用户(角色)john的apple数据库的模式和数据导出到backup.sql,而无需密码提示,如下图所示:
PGPASSWORD=banana pg_dump -U john apple > backup.sql
并且,您可以仅将用户(角色)john的apple数据库的模式导出到backup.sql,如下所示:
pg_dump -U john -s apple > backup.sql
pg_dump -U john --schema-only apple > backup.sql
或者,您可以仅使用INSERT语句将用户(角色)john的apple数据库的特定表的数据导出到backup.sql,该语句的列名如下所示。* 在一个命令中可以使用多个表,我的答案对此做了更多的解释:
INSERT
pg_dump -U john -a --column-inserts -t person -t animal apple > backup.sql
y53ybaqx6#
例如,您可以将用户(角色)john的apple数据库的模式和数据导出并存档到backup.sql,例如:-Fc、-Ft、--format=c和--format t,如下所示。* 如果backup.sql不存在,则会创建backup.sql,我的答案解释了如何导出模式和数据,我的答案解释了如何将存档backup.sql导入orange数据库:
--format=c
--format t
pg_dump -U john -Fc apple > backup.sql
pg_dump -U john -Ft -d apple > backup.sql
pg_dump --username=john --format=c --dbname=apple > backup.sql
pg_dump --username john --format t --dbname apple > backup.sql
c
pg_restore
t
d
p
psql
此外,您还可以将用户(角色)john的apple数据库的模式和数据导出并存档到backup.sql,而无需密码提示,如下图所示:
PGPASSWORD=banana pg_dump -U john -Fc apple > backup.sql
并且,您可以仅将用户(角色)john的apple数据库的模式导出并存档到backup.sql,如下所示:
pg_dump -U john -s -Fc apple > backup.sql
pg_dump -U john --schema-only -Fc apple > backup.sql
或者,您可以仅导出和存档用户(角色)john到backup.sql only INSERT语句的特定表apple数据库的数据,其列名如下所示:
pg_dump -U john -Fc -a --column-inserts -t person -t animal apple > backup.sql
6条答案
按热度按时间v1l68za41#
pg_dump默认为纯SQL导出。数据和结构。
打开command prompt并运行
pg_dump -U username -h localhost databasename >> sqlfile.sql
上面的命令是首选,因为大多数时候会有一个错误,这将是类似-
...FATAL: Peer authentication failed for user ...
6kkfgxo02#
在Windows中,首先,确保路径已添加到环境变量PATH中
C:\Program Files\PostgreSQL\12\bin
成功添加路径后,重新启动cmd并键入命令
pg_dump -U username -p portnumber -d dbname -W -f location
此命令将导出模式和数据
对于仅模式,使用
-s
代替-W
;对于仅数据,使用-a
。根据您的情况替换每个变量,如username、portnumber、dbname和location**所有内容都区分大小写,请确保正确插入所有内容,**并导入
psql -h hostname -p port_number -U username -f your_file.sql databasename
确保你的数据库被创建或创建查询存在于.sql文件中
文档:https://www.postgresql.org/docs/current/app-pgdump.html
7gyucuyw3#
转到命令行并运行
ar7v8xwq4#
如果您在windows open cmd上运行以下命令,请编辑用户和数据库等详细信息
sigwle7e5#
例如,您可以将用户(角色)
john
的apple
数据库的模式和数据导出到backup.sql
,如下所示。* 如果backup.sql
不存在,则会创建backup.sql
,您也可以使用-Fp
,我在回答如何使用-Fc
和-Ft
导出和归档模式和数据时解释了这一点,我的回答解释了如何将backup.sql
导入orange
数据库:或者:
或者:
或者:
或者:
或者:
或者:
或者:
或者:
或者:
然后,您需要在运行上面的命令后输入密码:
此外,您还可以将用户(角色)
john
的apple
数据库的模式和数据导出到backup.sql
,而无需密码提示,如下图所示:并且,您可以仅将用户(角色)
john
的apple
数据库的模式导出到backup.sql
,如下所示:或者:
或者,您可以仅使用
INSERT
语句将用户(角色)john
的apple
数据库的特定表的数据导出到backup.sql
,该语句的列名如下所示。* 在一个命令中可以使用多个表,我的答案对此做了更多的解释:然后,您需要在运行上面的命令后输入密码:
y53ybaqx6#
例如,您可以将用户(角色)
john
的apple
数据库的模式和数据导出并存档到backup.sql
,例如:-Fc
、-Ft
、--format=c
和--format t
,如下所示。* 如果backup.sql
不存在,则会创建backup.sql
,我的答案解释了如何导出模式和数据,我的答案解释了如何将存档backup.sql
导入orange
数据库:或者:
或者:
或者:
c
表示自定义,输出适合输入到pg_restore
的自定义格式存档。*pg_restore
必须用于导入文件。t
表示tar,它输出适合输入到pg_restore
的tar格式存档。*pg_restore
必须用于导入文件。d
表示directory,输出适合输入pg_restore的目录格式存档。*pg_restore
必须用于导入文件,但它不能正常工作,给出错误。p
表示plain,输出纯文本SQL脚本文件(默认)。*psql
必须用于导入文件。pg_restore
用于导入使用c
、t
和d
创建的归档文件,而psql
用于导入使用p
创建的非归档文件(默认),the doc对此进行了详细解释:然后,您需要在运行上面的命令后输入密码:
此外,您还可以将用户(角色)
john
的apple
数据库的模式和数据导出并存档到backup.sql
,而无需密码提示,如下图所示:并且,您可以仅将用户(角色)
john
的apple
数据库的模式导出并存档到backup.sql
,如下所示:或者:
或者,您可以仅导出和存档用户(角色)
john
到backup.sql
onlyINSERT
语句的特定表apple
数据库的数据,其列名如下所示:然后,您需要在运行上面的命令后输入密码: