
# 修改TaurusDB实例参数
#### 操作场景
为了确保TaurusDB实例发挥出更好的性能，您可以根据业务需求对TaurusDB实例的参数进行调整。
#### 注意事项
- 为了保证实例的稳定，仅支持对控制台中开放的参数进行修改，未在控制台中呈现的参数，不支持修改。
- 部分参数修改后需要重启实例，具体参见控制台"参数"页面参数列表中"是否需要重启"列。建议您在业务低峰期操作。
 
- "validate_password.length"参数值不能设置的比"validate_password.number_count+validate_password.special_char_count+(2 \* validate_password.mixed_case_count)"小，否则应用参数模板时，"validate_password.length"会自动修改为当前已生效的最小值。
- 当用户通过自定义参数模板创建实例时，"validate_password.length"参数值不能大于16，否则会导致创建实例失败。
- 当用户通过自定义参数模板创建实例时，"validate_password.mixed_case_count"、"validate_password.number_count"、"validate_password.special_char_count"参数值不能超过4，否则可能会导致实例创建失败，建议使用默认值1。
- "rds_compatibility_mode"参数的选项值依赖TaurusDB内核版本。
- "sql_mode"的"PAD_CHAR_TO_FULL_LENGTH"选项，表示CHAR类型字段的值，会将剩余长度填充为空格，引起**CHANGE MASTER** 和**START SLAVE** 等命令失败，因此"sql_mode"参数建议不要设置该选项。
  例如字段a char(10)，如果使用该选项，对于数据abc，查询得到的结果abc后面会填充7个空格。
  
- 修改参数时，请充分理解参数含义，并经过测试验证后进行修改，避免因参数值设置不当造成实例或业务异常。
#### 操作步骤
- [修改当前实例的参数]
  1. [登录TaurusDB管理控制台](https://console.huaweicloud.com/gaussdbformysql/#/management/list)。
  
  2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002671347251.png)，选择区域。
  
  3. 在"实例管理"页面，选择目标实例，单击实例名称，进入实例概览页面。
  
  4. 在左侧导航栏中选择"参数修改"，进入参数修改页面。 
     您还可以在实例概览页面右上角单击![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002033518276.png)，选择"参数修改"，进入参数修改页面。
     图1选择参数修改   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002702210696.png "点击放大")
     
     
  
  5. 在"参数"页签修改相应参数。 
     图2修改当前实例的参数值   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002215693185.png "点击放大")
     
     - 单击"保存"，在弹框中单击"确定"，保存修改。
     
     - 单击"取消"，放弃本次设置。
     
     - 单击"预览"，可对比参数修改前和修改后的值。
       图3预览参数   
       ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002180447858.png "点击放大")
       
       
     
     
     
     
  
  6. 参数修改完成后，您可在"参数修改"页面，选择"参数修改历史"页签查看参数的修改详情。 
     图4查看修改结果   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002215609105.png "点击放大")
     
     
     
   
- [修改自定义参数模板并应用到实例]
  TaurusDB提供了参数模板功能，您可以通过修改自定义参数模板，实现批量参数设置。
  1. [登录TaurusDB管理控制台](https://console.huaweicloud.com/gaussdbformysql/#/management/list)。
  
  2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002671347251.png)，选择区域。
  
  3. 在"参数模板管理"页面的"自定义"页签，选择目标参数模板，单击参数模板名称。
  
  4. 进入"参数"页面，根据需要修改相关参数值。 
     图5编辑参数模板   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002215699961.png "点击放大")
     
     - 单击"保存"，在弹框中单击"确定"，保存修改。
     
     - 单击"取消"，放弃本次设置。
     
     - 单击"预览"，可对比参数修改前和修改后的值。
     
     
     
     
  
  5. 参数修改完成后，您可在"参数模板管理"页面单击目标参数模板名称，然后在左侧导航栏中，单击"参数修改历史"查看参数的修改详情。
  
  6. 参数模板修改后，不会立即应用到实例。您可以在"参数模板管理"页面，选择目标参数模板，单击操作列"更多 \> 应用"，将参数模板应用到目标实例。 
     图6应用参数模板到实例   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002180292730.png "点击放大")
     
     
     
  
  7. 选择目标实例，单击"确定"。 
     图7选择目标实例   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000001882571788.png "点击放大")
     
     
  
  8. 参数模板应用成功后，您可以单击目标实例名称，在"参数修改"页面验证参数是否修改成功。
   
- [批量修改多个实例的参数]
  1. [登录TaurusDB管理控制台](https://console.huaweicloud.com/gaussdbformysql/#/management/list)。
  
  2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002671347251.png)，选择区域。
  
  3. 在"实例管理"页面，选择内核版本前三位相同的实例，单击实例列表上方的"更多 \> 批量修改参数"。
  
  4. 在右侧弹出"设置参数"页面，选中需要修改的参数，设置参数值，单击"确定"，应用参数。 
     仅应用您已选中的参数，修改过的参数会为您自动选中，您也可以取消选择。一次最多可以修改30个参数。
     图8设置参数   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002696121309.png "点击放大")
     
     
     
  
  5. 在弹框中，单击"确定"。 
     图9参数修改确认   
     ![](https://support.huaweicloud.com/usermanual-taurusdb/figure/zh-cn_image_0000002666321580.png "点击放大")
     
     
     
  
  6. 参数修改完成后，根据参数列表中"是否需要重启"提示，进行相应操作： 
     - 是：在实例列表中，查看"运行状态"，如果显示"参数变更，等待重启"，则需重启实例使之生效。
     
     - 否：无需重启，立即生效。
     
     
     
     
   
#### 常见参数的修改
表1常见参数修改说明 
| **参数名** **称**                  | **参数描述**                                                                                                                                                                                        | **文档链接**                                                                                                |
|:---|:---|:---|
| time_zone                      | 服务器时区。                                                                                                                                                                                          | [如何修改时区](https://support.huaweicloud.com/taurusdb_faq/taurusdb_faq_0120.html)                           |
| default_password_lifetime      | 定义了全局自动密码过期策略，单位为天。                                                                                                                                                                             | [TaurusDB密码过期策略](https://support.huaweicloud.com/taurusdb_faq/taurusdb_faq_0122.html)                   |
| character_set_server           | 服务器字符集。                                                                                                                                                                                         | [使用utf8mb4字符集存储emoji表情到TaurusDB实例](https://support.huaweicloud.com/taurusdb_faq/taurusdb_faq_0151.html) |
| collation_server               | 服务器字符集排序规则（必须和character_set_server指定的服务器字符集匹配，否则数据库将不能正常启动/重启）。                                                                                                                                 | -                                                                                                       |
| group_concat_max_len           | 函数GROUP_CONCAT()结果的最大长度。                                                                                                                                                                        | -                                                                                                       |
| max_connections                | 允许同时连接的客户端总数。如果设定值为default，表示该参数随内存规格变化。                                                                                                                                                        | [TaurusDB数据库实例支持的最大数据连接数是多少](https://support.huaweicloud.com/taurusdb_faq/taurusdb_faq_0059.html)       |
| max_prepared_stmt_count        | 大量Prepare语句会消耗服务器的内存资源，可能造成服务端OOM(out of memory)，带来"拒绝服务"的风险，请依据业务需求设置该值，小规格实例不宜设置过大。                                                                                                           | -                                                                                                       |
| innodb_flush_log_at_trx_commit | 当重新安排并批量处理与提交相关的I/O操作时，可以控制提交操作在严格遵守ACID合规性和高性能之间的平衡。当值设为0时，每秒把事务日志缓存区的数据写入日志文件并刷新到磁盘；当设为默认值1时，是为了保证完整的ACID，每次提交事务时，把事务日志从缓存区写到日志文件中，并刷新日志文件的数据到磁盘上；如果设为2，每次提交事务都会把事务日志从缓存区写入日志文件，大约每隔一秒会刷新到磁盘。 | [TaurusDB参数调优建议](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_0192.html)             |
| sql_mode                       | 当前SQL服务器模式。                                                                                                                                                                                     | -                                                                                                       |
| binlog_expire_logs_seconds     | 设置二进制日志文件有效期，有效期结束后，自动删除二进制日志文件。                                                                                                                                                                | -                                                                                                       |
   
#### 相关API
- [修改参数模板](https://support.huaweicloud.com/api-taurusdb/UpdateGaussMySqlConfiguration.html)
- [查询参数模板](https://support.huaweicloud.com/api-taurusdb/ListGaussMySqlConfigurations.html)
- [获取参数模板详情](https://support.huaweicloud.com/api-taurusdb/ShowGaussMySqlConfiguration.html)
 
