使用 Azure CLI 管理 Azure Database for PostgreSQL 灵活服务器

适用于:Azure Database for PostgreSQL 灵活服务器

本文介绍如何管理在 Azure 中部署的 Azure Database for PostgreSQL 灵活服务器实例。 管理任务包括计算和存储缩放、管理员密码重置,以及查看服务器详细信息。

先决条件

如果没有 Azure 订阅,请在开始前创建一个试用帐户

需要在本地运行 Azure CLI 版本 2.0 或更高版本。 若要查看安装的版本,请运行 az --version 命令。 如需进行安装或升级,请参阅安装 Azure CLI

使用 az login 命令登录到你的帐户。

az login

使用 az account set 命令选择订阅。 记下 az login 输出中的 id 值,以用作以下命令中 subscription 参数的值 。 如果有多个订阅,请选择应计费的资源所在的订阅。 若要确定所有订阅,请使用 az account list 命令。

az account set --subscription <subscription id>

重要

如果尚未创建 Azure Database for PostgreSQL 灵活服务器实例,则需要按照此操作指南创建。

缩放计算和存储

重要

若要缩放存储或计算,必须至少拥有拥有资源组的 READ 权限。

可以使用以下命令轻松地纵向扩展计算层、vCore 和存储。 有关可运行的所有服务器操作的列表,请参阅 az postgres 灵活服务器概述。

az postgres flexible-server update --resource-group myresourcegroup --name mydemoserver --sku-name Standard_D4ds_v3 --storage-size 6144

下面是上述代码中的参数的详细信息:

设置 示例值 说明
name mydemoserver 为服务器输入唯一名称。 服务器名称只能包含小写字母、数字和连字符 (-) 字符。 必须包含 3 到 63 个字符。
resource-group myresourcegroup 提供 Azure 资源组的名称。
sku-name Standard_D4ds_v3 输入计算层的名称和大小。 此值遵循以速记形式列出的 Standard_{VM size} 约定。 有关详细信息,请参阅定价层
storage-size 6144 输入服务器的存储容量(以 MB 为单位)。 最小值为 5120,以 1024 为增量递增。

重要

无法纵向缩减存储。

管理服务器上的 Azure Database for PostgreSQL 灵活服务器数据库

可以通过多个应用程序连接到 Azure Database for PostgreSQL 灵活服务器实例。 如果客户端计算机已安装 PostgreSQL,则可以使用 psql 的本地实例。 现在使用 psql 命令行工具连接到 Azure Database for PostgreSQL 灵活服务器实例。

  1. 运行以下 psql 命令:

    psql --host=<servername> --port=<port> --username=<user> --dbname=<dbname>
    

    例如,以下命令使用访问凭据连接到 Azure Database for PostgreSQL 灵活服务器实例 mydemoserver.postgres.database.chinacloudapi.cn 上名为 postgres 的默认数据库。 出现提示时,输入所选的 <server_admin_password>

    psql --host=mydemoserver.postgres.database.chinacloudapi.cn --port=5432 --username=myadmin --dbname=postgres
    

    连接后,psql 工具会显示 postgres 提示符,你可以在其中输入 SQL 命令。 如果所使用的 psql 版本不同于 Azure Database for PostgreSQL 灵活服务器实例上的版本,则初始连接输出中便会出现警告。

    psql 输出示例:

    psql (11.3, server 12.1)
    WARNING: psql major version 11, server major version 12.
             Some psql features might not work.
    SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
    Type "help" for help.
    
    postgres=>
    

    提示

    如果未将防火墙配置为允许客户端的 IP 地址,则会出现以下错误:

    psql: 致命错误: 主机 <IP address>、用户 "myadmin"、数据库 "postgres" 没有 pg_hba.conf 条目,SSL 出现致命错误: 需要 SSL 连接。 请指定 SSL 选项,然后重试。”

    确认在防火墙规则中允许你的客户端 IP 地址。

  2. 在提示符下,通过键入以下命令来创建名为“postgresdb”的空数据库:

    CREATE DATABASE postgresdb;
    
  3. 在提示符下,运行以下命令来将连接切换到新建的数据库 postgresdb:

    \c postgresdb
    
  4. 键入 \q 并选择 Enter 以退出 psql。

在本部分中,你已通过 psql 连接到 Azure Database for PostgreSQL 灵活服务器实例,并创建了一个空的用户数据库。

重置管理员密码

可以使用以下命令更改管理员角色的密码:

az postgres flexible-server update --resource-group myresourcegroup --name mydemoserver --admin-password <new-password>

重要

选择一个至少含有 8 个字符而最多含有 128 个字符的密码。 密码必须包含以下类别中的三个类别的字符:

  • 英文大写字母
  • 英文小写字母
  • 数字
  • 非字母数字字符

删除服务器

若要删除 Azure Database for PostgreSQL 灵活服务器实例,请运行 az postgres flexible-server delete 命令。

az postgres flexible-server delete --resource-group myresourcegroup --name mydemoserver

后续步骤