你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Database for PostgreSQL(单一服务器)中的限制
适用于:Azure Database for PostgreSQL 单一服务器
重要
Azure Database for PostgreSQL - 单一服务器即将停用。 强烈建议升级到 Azure Database for PostgreSQL - 灵活服务器。 有关迁移到 Azure Database for PostgreSQL - 灵活服务器的详细信息,请参阅 Azure Database for PostgreSQL 单一服务器的最新动态?
下列各部分介绍数据库服务中的容量和功能限制。 如果想了解资源(计算、内存、存储)层,请参阅定价层一文。
最大连接数
每个定价层的最大连接数和 vCore 数如下所示。 Azure 系统需要使用五个连接来监视 Azure Database for PostgreSQL 服务器。
定价层 | vCore(s) | 最大连接数 | 最大用户连接数 |
---|---|---|---|
基本 | 1 | 55 | 50 |
基本 | 2 | 105 | 100 |
常规用途 | 2 | 150 | 145 |
常规用途 | 4 | 250 | 245 |
常规用途 | 8 | 480 | 475 |
常规用途 | 16 | 950 | 945 |
常规用途 | 32 | 1500 | 1495 |
常规用途 | 64 | 1900 | 1895 |
内存优化 | 2 | 300 | 295 |
内存优化 | 4 | 500 | 495 |
内存优化 | 8 | 960 | 955 |
内存优化 | 16 | 1900 | 1895 |
内存优化 | 32 | 1987 | 1982 |
当连接数超出限制时,可能会收到以下错误:
严重: 很抱歉,已有太多客户端
重要
为了获得最佳体验,我们建议你使用 pgBouncer 之类的连接池来有效地管理连接。
PostgreSQL 连接,即使空闲,也可以占用最多 2MB 的内存。 而且,创建新连接需要时间。 大多数应用程序请求许多生存期短的连接,这加剧了这种情况。 其结果是可用于实际工作负荷的资源减少,从而导致性能下降。 连接池程序不仅会减少空闲连接,还会重用现有连接,因而有助于避免这种情况。 要了解详细信息,请访问博客文章。
功能限制
缩放操作
- 目前不支持动态缩放到“基本”定价层或从该层动态缩放。
- 目前不支持减小服务器存储大小。
服务器版本升级
- 目前不支持在主要数据库引擎版本之间进行自动迁移。 如果要升级到下一个主版本,请进行转储并将其还原到使用新引擎版本创建的服务器。
请注意,在 PostgreSQL 版本 10 之前,PostgreSQL 版本控制策略将主版本升级视为第一个或第二个数字的增加(例如,9.5 到 9.6 视为主版本升级)。 从版本 10 开始,只有第一个数字的更改才视为主版本升级(例如,10.0 到 10.1 是次要版本升级,10 到 11 是主版本升级)。
VNet 服务终结点
- 只有常规用途和内存优化服务器才支持 VNet 服务终结点。
还原服务器
- 使用 PITR 功能时,将使用与新服务器所基于的服务器相同的定价层配置创建新服务器。
- 还原期间创建的新服务器没有原始服务器上存在的防火墙规则。 需要为此新服务器单独设置防火墙规则。
- 不支持还原已删除的服务器。
Windows 上的 UTF-8 字符
- 在某些情况下,Windows 上的开源 PostgreSQL 不完全支持 UTF-8 字符,这会影响 Azure Database for PostgreSQL。 有关详细信息,请参阅 postgresql-archive 中的 Bug #15476 上的话题。
GSS 错误
如果看到与 GSS 相关的错误,则你可能使用的是 Azure Postgres 单一服务器尚不完全支持的较新客户端/驱动程序版本。 已知此错误会影响 JDBC 驱动程序版本 42.2.15 和 42.2.16。
- 我们计划在 11 月底之前完成更新。 在此期间,请考虑使用正在工作的驱动程序版本。
- 或者,考虑禁用 GSS 请求。 使用连接参数,例如
gssEncMode=disable
。
存储大小缩减
无法缩减存储大小。 必须新建具有所需存储大小的服务器,执行手动转储和还原,然后将数据库迁移到新服务器。