清除新的postgresql数据库
我使用清除新的postgresql数据库,sql,database,scripting,postgresql,Sql,Database,Scripting,Postgresql,我使用psql创建了一个PostgreSQL数据库转储 现在,我要从文件还原此备份: psql -d thesamename -f /my/backup/file 但我得到的错误是数据已经存在 是否有任何命令可以删除数据库中的所有内容,使其处于刚刚创建的状态,除了再次删除和创建之外? (我不想再次设置owner、tablescpace等) 也许可以用备份文件中的数据库覆盖数据库?(备份文件来自另一个数据库服务器) 请特别查看这些脚本的-c选项。您可以删除数据库的公共架构,然后在以下操作之后重
psql
创建了一个PostgreSQL数据库转储
现在,我要从文件还原此备份:
psql -d thesamename -f /my/backup/file
但我得到的错误是数据已经存在
是否有任何命令可以删除数据库中的所有内容,使其处于刚刚创建的状态,除了再次删除和创建之外?(我不想再次设置owner、tablescpace等) 也许可以用备份文件中的数据库覆盖数据库?(备份文件来自另一个数据库服务器)
请特别查看这些脚本的
-c
选项。您可以删除数据库的公共
架构,然后在以下操作之后重新创建:
DROP SCHEMA PUBLIC CASCADE;
CREATE SCHEMA PUBLIC AUTHORIZATION postgres;
GRANT ALL ON SCHEMA public TO public;
希望对您有所帮助。您可以根据需要对其进行操作。。您只需要转储数据。一旦开始转储数据,架构文件将自动生成。无需删除旧数据。它将与现有数据上的新数据重叠 您可以通过此链接了解更多说明 你可以用
将模式上的所有公共项授予公共项代码>听起来你只需要使用TRUNCATE。哦,谢谢。我在psql
中查找--clean
选项,而不是pg\u dump