
# 实例使用规范
#### **数据库实例**
**数据库实例类型选择**
- 主备
  - 一主一备的经典高可用架构。适用于大中型企业的生产数据库，覆盖互联网、物联网、零售电商、物流、游戏等行业应用。
  
  - 备机提高了实例的可靠性，创建主机的过程中，同步创建备机，备机创建成功后，用户不可见。
  
  - 当主节点故障后，会发生主备切换，数据库客户端会发生短暂中断，数据库客户端需要支持重新连接。
   
- 单机
  - 采用单个数据库节点部署架构，与主流的主备实例相比，它只包含一个节点，但具有高性价比。
  
  - 适用于个人学习、微型网站以及中小企业的开发测试环境。
  
  - 单机版出现故障后，无法保障及时恢复。
   
- 只读 RDS for MariaDB支持单机版只读实例。
  ![](https://support.huaweicloud.com/usermanual-rds-mariadb/public_sys-resources/note_3.0-zh-cn.png)
  当只读实例与主数据库之间复制异常后，只读实例需要较长时间重建和恢复（取决于数据量）。
  
**实例性能规格选择**
- 独享型 完全独享的CPU和内存，性能长期稳定，不会因为物理机上其它实例的行为而受到影响，适用于对性能稳定性要求较高的应用场景。
  
- 通用型 与同一物理机上的其他通用型规格实例共享CPU资源，通过资源复用换取CPU使用率最大化，性价比较高，适用于对性能稳定性要求较低的应用场景。
  
 
#### **数据库连接**
- 根据业务的复杂度，合理配置RDS for MariaDB参数。
- 建议保持合理的活跃连接数。
- 避免长连接，长连接的缓存可能较大，导致内存不足，建议定期释放长连接。
 
#### **可靠性和可用性**
- 生产数据库的实例类型请选择主备类型。
- 选择主备实例时，建议主备可用区选择不同的可用区。
- 读写业务并发较高时，建议创建只读实例，并开启读写分离。
- 建议在业务低峰期执行规格变更。
- 业务上线前，对数据库进行评估，选择合适的规格和磁盘大小。
- 主实例扩容后请及时扩容只读实例，避免只读实例存储空间不足导致业务异常。
 
#### **备份恢复**
- 业务高峰时执行备份可能会备份失败，建议手动备份选择在业务低峰期间，自动备份建议根据业务需要自定义备份时间段（默认自动备份时间段为01:00-02:00 (GMT+08:00)）。
- 实例写入业务较多时，建议备份策略设置成每天做一次自动备份。
- 建议根据业务需要设置备份保留天数（默认保留7天）。
- 删除实例后，自动备份的全量备份和Binlog备份也会删除，对数据有需要时，建议删除前进行手动全量备份。
- 建议自定义回收站策略，防止误删实例无法恢复。
 
#### **日常运维**
- 建议定期关注慢日志和错误日志，提前识别业务问题。
- 建议定期关注数据库的资源使用情况，资源不足时，及时扩容。
- 建议关注实例监控，发现监控指标异常时，及时处理。
- 删除和修改记录时，需要先执行SELECT，确认无误才能提交执行。
 
#### **安全**
- 尽量避免数据库被公网访问，公网连接时必须绑定弹性公网IP，设置安全组规则。
- 尽量使用SSL连接，保证连接的安全性。
 
