tencent cloud

TDSQL-C for MySQL

Release Notes and Announcements
Release Notes
Product Announcements
Beginner's Guide
Product Introduction
Overview
Strengths
Use Cases
Architecture
Product Specifications
Instance Types
Product Feature List
Database Versions
Regions and AZs
Common Concepts
Use Limits
Suggestions on Usage Specifications
Kernel Features
Kernel Overview
Kernel Version Release Notes
Optimized Kernel Version
Functionality Features
Performance Features
Security Features
Stability Feature
Analysis Engine Features
Inspection and Repair of Kernel Issues
Purchase Guide
Billing Overview
Product Pricing
Creating Cluster
Specification Adjustment Description
Renewal
Payment Overdue
Refund
Change from Pay-as-You-Go to Yearly/Monthly Subscription
Change from Pay-as-You-Go to Serverless Billing
Value-Added Services Billing Overview
Viewing Billing Statements
Getting Started
Database Audit
Overview
Viewing Audit Instance List
Enabling Audit Service
Viewing Audit Logs
Log Shipping
Post-Event Alarm Configuration
Modifying Audit Rule
Modifying Audit Service
Disabling Audit Service
Audit Rule Template
Viewing Audit Task
Authorizing Sub-User to Use Database Audit
Serverless Service
Serverless Introduction
Creating and Managing a Serverless Cluster
Elastic Scaling Management Tool
Serverless Resource Pack
Multi-AZ Deployment
Configuration Change
FAQs
Serverless Cost Estimator
Operation Guide
Operation Overview
Switching Cluster Page View in Console
Database Connection
Instance Management
Configuration Adjustment
Instance Mode Management
Cluster Management
Scaling Instance
Database Proxy
Account Management
Database Management
Database Management Tool
Parameter Configuration
Multi-AZ Deployment
GD
Backup and Restoration
Operation Log
Data Migration
Parallel Query
Columnar Storage Index (CSI)
Analysis Engine
Database Security and Encryption
Monitoring and Alarms
Basic SQL Operations
Connecting to TDSQL-C for MySQL Through SCF
Tag
Practical Tutorial
Classified Protection Practice for Database Audit of TDSQL-C for MySQL
Upgrading Database Version from MySQL 5.7 to 8.0 Through DTS
Usage Instructions for TDSQL-C MySQL
New Version of Console
Implementing Multiple RO Groups with Multiple Database Proxy Connection Addresses
Strengths of Database Proxy
Selecting Billing Mode for Storage Space
Creating Remote Disaster Recovery by DTS
Creating VPC for Cluster
Data Rollback
Solution to High CPU Utilization
How to Authorize Sub-Users to View Monitoring Data
White Paper
Security White Paper
Performance White Paper
Troubleshooting
Connection Issues
Performance Issues
API Documentation
History
Introduction
API Category
Making API Requests
Instance APIs
Multi-Availability Zone APIs
Other APIs
Audit APIs
Database Proxy APIs
Backup and Recovery APIs
Parameter Management APIs
Billing APIs
serverless APIs
Resource Package APIs
Account APIs
Performance Analysis APIs
Data Types
Error Codes
FAQs
Basic Concepts
Purchase and Billing
Compatibility and Format
Connection and Network
Features
Console Operations
Database and Table
Performance and Log
Database Audit
Between TDSQL-C for MySQL and TencentDB for MySQL
Service Agreement
Service Level Agreement
Terms of Service
TDSQL-C Policy
Privacy Policy
Data Privacy and Security Agreement
General References
Standards and Certifications
Glossary
Contact Us

High Memory Utilization

PDF
Focus Mode
Font Size
Last updated: 2025-01-23 17:01:24

Problem Description

TDSQL-C for MySQL experiences a sudden increase in memory usage, with memory usage continuing to grow without being released. This is specifically reflected in the monitoring chart for the instance's memory utilization, as shown below:
Note:
You can check the instance's memory utilization on the Monitoring and Alarms page.

After a sudden increase or a gradual long-term growth, the memory utilization eventually reaches an excessively high level (>96%) and fluctuates within a certain range, frequently triggering custom memory alarms on the Tencent Cloud Observability Platform (TCOP).

Failure Risk

Inefficient SQL statements or improper database parameter settings can cause an increase in memory utilization. During unexpected business peaks, it may cause Out Of Memory (OOM) in cloud databases. When a cloud database becomes unavailable due to OOM, a primary-replica switch will be triggered. During the switch, the business will be unavailable for a short period of time and instances are typically unavailable for less than 60 seconds. If the switch occurs during business peak hours, it will seriously affect the stability and continuity of the business.

Solutions

TDSQL-C for MySQL memory can be generally divided into two parts: global shared memory and session-level private memory:
Shared memory is allocated upon the creation of an instance and shared by all connections.
Private memory is allocated individually to each connection to the TDSQL-C for MySQL server. Some special SQL statements or field types may cause a single thread to be allocated with cache multiple times. Therefore, OOM exceptions are caused by the private memory of each connection. Limiting the number of connections to a database and optimizing inefficient SQL statements can reduce the risk of excessively high memory utilization. If the memory utilization of TDSQL-C for MySQL is still high, upgrading the memory configuration can improve the overall concurrency and stability of a database.

Directions

1. Optimize slow SQL statements to reduce the session-level private memory usage. You can use DBbrain to analyze slow SQL statements.
2. Reduce invalid persistent connections. Without affecting the business, lower the connection pool configuration or reduce the concurrency on the program side. You can use DBbrain to view current session information.
3. Monitor memory usage (optional): Enable the memory monitoring feature of performance_schema. After enabling performance_schema, query tables starting with memory_summary in the performance_schema database to obtain memory usage details. For example, the global memory utilization analysis table is memory_summary_global_by_event_name.
4. Methods after optimization: Adjust compute configuration and adjust storage space.
Note:
During the upgrade, your business can operate normally. After the upgrade, a switch will occur, with only second-level interruptions. Make sure that your business has a reconnection mechanism.
To protect your business from being affected by insufficient memory or CPU resources, configure reasonable alarm policies for existing instance resources to identify potential resource shortages in advance. For details, see Monitoring Metric Alarm.

Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback