Snaplet 恢复但忽略架构

问题描述 投票:0回答:1

我目前正在使用此命令

npx @snaplet/snapshot ss r --no-reset
将快照克隆到数据库,此命令效果很好,但它确实完全重置了一些我不想重置的架构,例如我的“vault”架构。运行此恢复命令时如何让它忽略重置架构?最终我想要这样的东西
npx @snaplet/snapshot ss r --no-reset --exclude-schema=vault

sql postgresql supabase
1个回答
0
投票

您可以尝试以下步骤

您可以反转您的逻辑,首先使用

pg_dump
排除您不想修改的保管库。

  1. 使用 pg_dump,您可以使用此命令控制要包含或排除的模式:
pg_dump --exclude-schema=vault --file=schema_dump.sql --dbname=your_db

  1. 下一步只是在执行命令后恢复数据:
    npx @snaplet/snapshot ss r --no-reset

然后您可以恢复转储的文件:

psql --dbname=your_db --file=schema_dump.sql

或者,

您可以为此目的创建自定义的 bash 脚本。

这里有一个代码片段来指导您。

#!/bin/bash

pg_dump --schema=vault --file=latest_vault_backup.sql --dbname=my_db

# using npx
npx @snaplet/snapshot ss r --no-reset

# restore the vault
psql --dbname=your_db --file=latest_vault_backup.sql

© www.soinside.com 2019 - 2024. All rights reserved.