你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 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 灵活服务器实例上名为 postgres 的默认数据库 mydemoserver.postgres.database.azure.com 出现提示时,输入所选的 <server_admin_password>

    psql --host=mydemoserver.postgres.database.azure.com --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

后续步骤