如何使用 Azure 备份保管库备份专用终结点上可用的 Azure PostgreSQL 单一服务器实例

How to backup an Azure PostgreSQL Single Server instance which is available on a private endpoint with Azure Backup Vault

提问人:Nagy Vilmos 提问时间:11/17/2023 最后编辑:Jason AllerNagy Vilmos 更新时间:11/17/2023 访问量:21

问:

我想使用 Azure 备份保管库备份 Azure PostgreSQL 单一服务器实例,该保管库只能通过专用终结点使用。我已经在其中创建了备份保管库和备份实例,但遇到以下错误:

Azure Backup instance error

消息:无法对数据库用户进行身份验证。如果密钥保管库中的凭据(用户名和/或密码)不正确,或者指定的用户没有登录访问权限,则可能会发生这种情况。
建议:确保作为密钥保管库中机密值的一部分存储的凭据有效。确保指定的数据库用户具有登录访问权限。有关详细信息,请参阅 aka.ms/UserErrorDBUserAuthFailed。

我使用此示例代码通过 Terraform AzureRM 提供程序创建备份实例:I used this example code to create the backup instance with Terraform AzureRM Provider: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/data_protection_backup_policy_postgresql

密钥保管库中存储的凭据包括:

❯ terraform console
> module.azure-infrastructure.foobar
"Server=<server-name>.postgres.database.azure.com;Database=<database>;Port=5432;User Id=<database>@<server-name>.postgres.database.azure.com;Password=<password>;Ssl Mode=Require;"

用户名和密码是正确的(我 100% 确定),因为我们在专用网络中运行一些服务,这些服务可以使用这些凭据连接到数据库。在数据库日志中,在备份期间我看不到任何身份验证失败。

我目前的预感是,备份保管库无法访问只能通过专用终结点访问的数据库实例。我认为这是因为如果我尝试使用故意错误的凭据登录PostgreSQL服务器,则日志中会写入以下内容:

password authentication failed for user \"dbadmin\"

但是,当备份尝试运行时,不会将任何类似的内容写入日志。关于如何使备份在专用网络内运行的任何想法?

或者如何备份在专用网络中运行的 Azure PostgreSQL 单一服务器数据库?

谢谢

azure-postgresql azure-backup-vault

评论

0赞 David Makogon 11/19/2023
仅供参考,这是题外话 - 这不是一个编程问题。可能适合数据库管理员服务器故障(首先阅读指南)。另外,请不要上传代码/数据/错误的图像。

答: 暂无答案