凯发k8国际娱乐官网入口-k8凯发> 云数据库 rds> 常见问题> 数据库连接> rds数据库实例支持的最大数据连接数是多少
更新时间:2023-06-25 gmt 08:00

rds数据库实例支持的最大数据连接数是多少-凯发k8国际娱乐官网入口

云数据库rds服务对此未做限制,取决于数据库引擎参数的默认值和取值范围,例如mysql引擎的max_connections和max_user_connections参数,postgresql引擎的max_connections参数,用户可在参数模板自定义。

  • rds for mysql数据库实例的连接数请参考中各规格的连接数。
  • rds for postgresql数据库实例的连接数请参考中各规格的连接数。

什么是最大连接数

允许同时连接的客户端总数。

修改最大连接数

  • mysql

    连接数支持在线修改,具体方法请参考。

    支持命令查看rds for mysql的最大连接数。

    show global variables like 'max_connections';

  • postgresql

    连接数支持在线修改,具体方法请参考。

    支持命令查看rds for postgresql的最大连接数。

    show max_connections;

如果您需要通过命令修改连接数,请联系客服处理。

最大连接数取值多少合适

  • mysql
    • rds for mysql允许客户端同时连接的数量除了受制于参数max_connections外,还受操作系统对单进程允许打开最大文件数的限制。例如,当操作系统控制每个进程的最大打开文件数为100时,即使设置参数max_connections为200也不会起作用。
    • 查看操作系统对单进程打开最大文件数的限制(默认为1024)。

      ulimit -n

    • 查看参数open_files_limit的值(open_files_limit是在rds for mysql启动过程中从操作系统读取的单进程打开最大文件数的值)。

      show variables like 'open_files_limit';

    • 取值建议

      rds for mysql的最大连接数可以自定义取值,但前提是实例的规格可以支撑该值,最大连接数与实例的内存规格息息相关,具体如下:

      max_connections:允许同时连接的客户端总数。如果设定值为default,表示该参数和数据库实例的内存(单位:gb)相关,计算公式如下:

      max_connections上限估计数值 = 节点可用内存 / 单个连接预估占用内存

      • 节点可用内存=总内存 - buffer pool占用内存 - 1gb(mysqld进程/操作系统/监控程序等)
      • 单个连接预估占用内存(single_thread_memory) = thread_stack(256kb) binlog_cache_size(32kb) join_buffer_size(256kb) sort_buffer_size(256kb) read_buffer_size(128kb) read_rnd_buffer_size(256kb)= 大约1mb

      华为云不同内存规格配置的默认max_connections值如下表所示。

      表1 不同内存规格配置的默认max_connections值

      内存(gb)

      连接数

      512

      100000

      384

      80000

      256

      60000

      128

      30000

      64

      18000

      32

      10000

      16

      5000

      8

      2500

      4

      1500

      2

      800

      在实际业务中,最大连接数并不是设置的越大越好,建立的连接数越多,对应的资源开销也就越多。

  • postgresql

    根据业务的复杂度,合理配置“max_connections”。具体参考。

分享:

more

网站地图