Esta página ainda não está disponível no idioma selecionado. Estamos trabalhando para adicionar mais opções de idiomas. Agradecemos sua compreensão.
- What's New
- Function Overview
- Product Bulletin
-
Service Overview
- Infographics for Comparing DCS for Redis with Open-Source Redis
- What Is DCS?
- Application Scenarios
- Security
- DCS Instance Types
- DCS Instance Specifications
-
Command Compatibility
- Commands Supported and Disabled by DCS for Redis 4.0
- Commands Supported and Disabled by DCS for Redis 5.0
- Commands Supported and Disabled by DCS for Redis 6.0
- Commands Supported and Disabled in Web CLI
- Command Restrictions
- Other Command Usage Restrictions
- Commands Supported and Disabled by DCS for Redis 3.0 (Discontinued)
- Commands Supported and Disabled by DCS for Memcached (Discontinued)
- Disaster Recovery and Multi-Active Solution
- Cache Engine Differences
- Comparing DCS and Open-Source Cache Services
- Notes and Constraints
- Billing
- Permissions Management
- Basic Concepts
- Related Services
- Billing
- Getting Started
-
User Guide
- Process of Using DCS
- Creating a User and Granting DCS Permissions
- Buying a DCS Redis Instance
-
Accessing a DCS Redis Instance
- Configuring Redis Network Connections
- Controlling DCS Redis Access
-
Connecting to Redis on a Client
- Connecting to Redis on redis-cli
- Connecting to Redis on Jedis (Java)
- Connecting to Redis on Lettuce (Java)
- Connecting to Redis on Redisson (Java)
- Connecting to Redis on redis-py (Python)
- Connecting to Redis on go-redis (Go)
- Connecting to Redis on hiredis (C++)
- Connecting to Redis on StackExchange.Redis (C#)
- Connecting to Redis on phpredis (PHP)
- Connecting to Redis on predis (PHP)
- Connecting to Redis on ioredis (Node.js)
- Connecting to Redis on the Console
- Public Access to a DCS Redis 3.0 Instance (Discontinued)
- Accessing a DCS Memcached Instance (Discontinued)
-
Managing Instances
- Viewing and Modifying Basic Settings of a DCS Instance
- Viewing DCS Background Tasks
- Viewing Client Connection Information of a DCS Instance
- Modifying Configuration Parameters of a DCS Instance
- Configuring DCS Instance Parameter Templates
- Configuring DCS Instance Tags
- Renaming Critical Commands for DCS Instances
- Exporting a DCS Instance List
- Performing a Master/Standby Switchover for a DCS Instance
- Managing DCS Instance Shards and Replicas
- Backing Up or Restoring Instance Data
- Changing an Instance
- Managing Lifecycle of an Instance
- Diagnosing and Analyzing an Instance
- Migrating Instance Data
-
Testing Instance Performance
- Testing Redis Performance Using memtier_benchmark
- Testing Redis Performance Using redis-benchmark
- Comparing redis-benchmark and memtier_benchmark
-
Reference for a Redis Performance Test
- Test Data of Master/Standby DCS Redis 3.0 Instances
- Test Data of Proxy Cluster DCS Redis 3.0 Instances
- Test Data of Master/Standby DCS Redis 4.0 or 5.0 Instances
- Test Data of Proxy Cluster DCS Redis 4.0 or 5.0 Instances
- Test Data of Redis Cluster DCS Redis 4.0 or 5.0 Instances
- Test Data of Master/Standby DCS Redis 6.0 Instances
- Test Data of Redis Cluster DCS Redis 6.0 Instances
- Test Data of Redis Backup, Restoration, and Migration
- Applying for More DCS Quotas
- Viewing Monitoring Metrics and Configuring Alarms
- Viewing DCS Audit Logs
- Best Practices
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Examples
-
API V2
- Lifecycle Management
-
Instance Management
- Updating a Bandwidth Auto Scaling Policy
- Querying a Bandwidth Auto Scaling Policy
- Deleting a Bandwidth Auto Scaling Policy
- Querying Details of an Instance Parameter Modification Record
- Master/Standby Switchover
- Changing the Password
- Resetting a Password
- Querying DCS Instance Statuses
- Restarting DCS Instances or Clearing DCS Instance Data
- Querying Statistics of All Running Instances
- Enabling or Disabling Client IP Pass-through
- Modifying the Bandwidth of an Instance
- Enabling/Modifying Public Access
- Disabling Public Access to an Instance
- Switching Master/Replica Roles on a Cluster Shard
- Asynchronous Master/Replica Node Switchover
- Querying Whether Specifications of an Instance Can Be Increased
- Obtaining Shard Bandwidth of an Instance
- Modifying Instance Shard Bandwidth
- Asynchronously Exporting Instances
- Starting or Stopping a Specified Instance Node
- Obtaining the Instance Engine Version by Instance ID
- Upgrading the Minor Version of an Instance
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Switching IP
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Configuring Auto-Reconnect for Migration Tasks
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Stopping Synchronization of a Data Migration Task
- Querying the Migration Log List
- Restarting Online Migration Tasks in Batches
- Tag Management
-
Cache Analysis
- Querying Expired Key Scan Records
- Scanning for Expired Keys Immediately
- Creating a Big Key Analysis Task
- Listing Big Key Analysis Tasks
- Querying Big Key Analysis Details
- Deleting a Big Key Analysis Task
- Configuring Automatic Big Key Analysis
- Querying the Configurations of Automatic Big Key Analysis
- Creating a Hot Key Analysis Task
- Listing Hot Key Analysis Tasks
- Querying Hot Key Analysis Details
- Deleting a Hot Key Analysis Task
- Configuring Automatic Hot Key Analysis
- Querying the Configurations of Automatic Hot Key Analysis
- Creating an Expired Key Scan Task
- Querying Automatic Scanning Configuration
- Modifying Automatic Scanning Configuration
- Log Management
- Account Management
- Network Security
- Background Task Management
- Instance Diagnosis
- Template Management
- Other APIs
- Session Management
- Permissions Policies and Supported Actions
- Appendix
- Out-of-Date APIs (Unavailable Soon)
- SDK Reference
-
FAQs
- Instance Types/Versions
-
Feature
- What Are the CPU Specifications of DCS Instances?
- What Are Shard and Replica Quantities?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Does DCS for Redis Support Redis Clusters?
- What Are Redis Data Eviction Policies?
- Does DCS for Redis Support Read/Write Splitting?
- Does DCS for Redis Support Multi-DB?
- Does DCS Support External Extensions, Plug-ins, or Modules?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- Do DCS Redis Instances Limite Data Quantity?
-
Security
- How Do I Configure a Security Group?
- Why Can't Security Groups Be Configured for DCS Redis 4.0/5.0/6.0 Basic Edition Instances?
- How Can I Secure My DCS Redis Instances?
- Does DCS for Redis Support SSL Encrypted Transmission?
- How Do I Enable or Disable SSL for Public Access to a DCS Redis 3.0 Instance?
- Does DCS Support Cross-AZ Deployment?
- Is a Password Required for Accessing an Instance? How Do I Set a Password?
- Sentinel Principle
- Does DCS Support Sentinels?
-
Client and Network Connection
- Does DCS Support Public Access?
- Troubleshooting Redis Connection Failures
- Does DCS Support Cross-VPC Access?
- Will I Be Charged for the EIP Used for Public Access to a DCS Redis Instance?
- Why Is "(error) NOAUTH Authentication required" Displayed When I Access a DCS Redis Instance?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- What Can I Do If I Fail to Access a DCS Instance Using Its Domain Name Address?
- Can I Access DCS Instances in a Local Environment?
- What Should Be Noted When Using Redis for Pub/Sub?
- Why Is Public Access of My DCS Redis 3.0 Instance Unintentionally Disabled?
- What Can I Do If Error "Cannot assign requested address" Is Returned When I Access Redis Using connect?
- Connection Pool Selection and Recommended Jedis Parameter Settings
- What Can I Do If a Lettuce 6.x Client Is Incompatible with My DCS Instance?
- Should I Use a Domain Name or an IP Address to Connect to a DCS Redis Instance?
- Is the Read-only Address of a Master/Standby Instance Connected to the Master or Standby Node?
-
Redis Usage
- Can I Change the CPU Architecture?
- Can I Change the AZ for an Instance?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Why Do I Fail to Delete an Instance?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What Should I Do If an Error Occurs in redis_exporter?
- What Is Reserved Memory? How Do I Configure Reserved Memory?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Does DCS for Redis Provide Backend Management Software?
- Can I Recover Deleted Data of a DCS Instance?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- How Do I Check Redis Memory Usage?
- Why Is the Capacity or Performance of a Shard of a Redis Cluster Instance Overloaded When That of the Instance Is Still Below the Bottleneck?
- Why Does an OOM Error Occur During a Redis Connection?
- What Clients Can I Use for Redis Cluster in Different Programming Languages?
- Why Do I Need to Configure Timeout for Redis Cluster?
- Why Am I Seeing a Timeout Error When Reading Data from Redis?
- Explaining and Using Hash Tags
- Why Does a Key Disappear in Redis?
- Will Cached Data Be Retained After an Instance Is Restarted?
- How Do I Know Whether an Instance Is Single-DB or Multi-DB?
- Notes and Procedure for Enabling Multi-DB for Proxy Cluster Instances
- How Do I Create a Multi-DB Proxy Cluster Instance?
-
Instance Scaling and Upgrade
- Can I Upgrade Version for a DCS Redis Instance, for Example, from Redis 4.0 to Redis 5.0?
- Upgrading a Redis 3.0 Instance
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are DCS Instances Stopped or Restarted During Specification Modification?
- What DCS Instance Type Changes Are Supported?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Instance?
- How Do I Reduce the Capacity of a DCS Instance?
- How Do I Add Shards to a Cluster DCS Redis Instance Without Changing the Memory?
- How Do I Handle an Error When I Use Lettuce to Connect to a Redis Cluster Instance After Specification Modification?
- Can I Expand a Single Shard of a Cluster Instance (Scale-Up)?
-
Data Backup, Export, and Migration
- Can I Migrate Data from a Lower Redis Version to a Higher One?
- What Should I Consider When Transferring or Operating Data Between Different OSs?
- Can I Migrate Data from a Multi-DB Source Redis Instance to a Cluster DCS Redis Instance?
- What Are the Constraints and Precautions for Migrating Redis Data to a Cluster Instance?
- What Should I Consider for Online Migration?
- Can I Perform Online Migration Without Any Service Interruption?
- What If "Disconnecting timedout slave" and "overcoming of output buffer limits" Are Reported on the Source Instance During Online Migration?
- How Do I Export DCS Redis Instance Data?
- Why Is Memory of a DCS Redis Instance Unchanged After Data Migration Using Rump, Even If No Error Message Is Returned?
- Can I Export Backup Data of DCS Redis Instances to RDB Files on the Console?
- Where Are DCS Instance Backup Files Stored? How Many of Them Can Be Stored?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- When Will AOF Rewrites Be Triggered?
- What Are the Common Causes of Redis Migration Failures?
- Can I Migrate Data to Multiple Target Instances in One Migration Task?
- How Do I Enable the SYNC and PSYNC Commands?
- Will the Same Keys Be Overwritten During Data Migration or Backup Import?
- Why Does Redis Cluster Migration Fail If It Uses Built-in Keys and Cross-Slot Lua Scripts?
- Handling Migration Errors
- Troubleshooting Data Migration Failures
- How Do I Migrate Memcached Data?
- Can I Migrate Data Between DCS Memcached and Redis Instances?
-
Big/Hot Key Analysis and Expired Key Scan
- What Are Big Keys and Hot Keys?
- What Is the Impact of Big Keys or Hot Keys?
- How Do I Avoid Big Keys and Hot Keys?
- How Do I Analyze the Hot Keys of a DCS Redis 3.0 Instance?
- How Do I Detect Big Keys and Hot Keys in Advance?
- How Does DCS Delete Expired Keys?
- How Long Are Keys Stored? How Do I Set Key Expiration?
- Why Does Memory Usage Decrease After Big Key Analysis Is Performed on Redis?
-
Redis Commands
- Does DCS for Redis Support Command Audits?
- How Do I Clear Redis Data?
- How Do I Find Specified Keys and Traverse All Keys?
- Why Do I Fail to Execute Some Redis Commands?
- Why is "permission denied" Returned When I Run the KEYS Command in Web CLI?
- How Do I Rename High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
- Can I Configure Redis Keys to Be Case-Insensitive?
- Common Web CLI Errors
-
Monitoring and Alarm
- Why Is CPU Usage of a DCS Redis Instance 100%?
- How Do I View Current Concurrent Connections and Maximum Connections of a DCS Redis Instance?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Used Memory Greater Than Available Memory?
- Why Does Bandwidth Usage Exceed 100%?
- Why Is the Rejected Connections Metric Displayed?
- Why Is Flow Control Triggered? How Do I Handle It?
- Master/Standby Switchover
- Instance Creation and Permissions
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
- Troubleshooting
- Videos
-
More Documents
-
User Guide (ME-Abu Dhabi Region)
- Service Overview
- Getting Started
- Operation Guide
- Monitoring
- Auditing
-
FAQs
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Public Access?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0 and 5.0 Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory of a DCS Redis 3.0 Instance Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Memory Usage More Than 100%?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What If Redis Commands Are Incompatible with DCS for Redis?
- Does DCS for Redis Provide Backend Management Software?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Rename High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 3.0 to Redis 4.0 or 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instance Resources Affected During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Redis Instance?
- Monitoring and Alarm
- Data Backup, Export, and Migration
- Master/Standby Switchover
-
Client and Network Connection
- Change History
- API Reference (ME-Abu Dhabi Region)
-
User Guide (Paris Region)
- Service Overview
- Getting Started
- Operation Guide
- Monitoring
- Auditing
-
FAQs
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Public Access?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Why Is Available Memory of a DCS Redis 3.0 Instance Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Memory Usage More Than 100%?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
- Why Is "Error in execution" Returned When I Access Redis?
-
Redis Commands
- Why is "permission denied" Returned When I Run the Keys Command in Web CLI?
- How Do I Clear Redis Data?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 3.0 to Redis 4.0 or 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instance Resources Affected During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Do I Fail to Modify the Specifications for a DCS Redis or Memcached Instance?
- Data Backup, Export, and Migration
- Master/Standby Switchover
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
-
Client and Network Connection
- Change History
-
API Reference (Paris Region)
- Before You Start
- API Overview
- Calling APIs
-
API V2
- Lifecycle Management
- Instance Management
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Configuring Auto-Reconnect for Migration Tasks
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Stopping Synchronization of a Data Migration Task
-
Cache Analysis
- Creating a Big Key Analysis Task
- Listing Big Key Analysis Tasks
- Querying Big Key Analysis Details
- Deleting a Big Key Analysis Task
- Configuring Automatic Big Key Analysis
- Querying the Configurations of Automatic Big Key Analysis
- Creating a Hot Key Analysis Task
- Listing Hot Key Analysis Tasks
- Querying Hot Key Analysis Details
- Deleting a Hot Key Analysis Task
- Configuring Automatic Hot Key Analysis
- Querying the Configurations of Automatic Hot Key Analysis
- Log Management
- Network Security
- Background Task Management
- Instance Diagnosis
- Template Management
- Other APIs
- Outdated APIs (V1)
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
User Guide (Kuala Lumpur Region)
-
Service Overview
- What Is DCS?
- Application Scenarios
- DCS Instance Types
- DCS Instance Specifications
- Command Compatibility
- Disaster Recovery and Multi-Active Solution
- Comparing Redis Versions
- Comparing Redis and Memcached
- Comparing DCS and Open-Source Cache Services
- Notes and Constraints
- Basic Concepts
- Permissions
- Related Services
- Permissions Management
- Process of Using DCS
-
Getting Started
- Creating an Instance
-
Accessing an Instance
- Network Conditions for Accessing DCS Redis
- Accessing a DCS Redis Instance Through redis-cli
- Access in Different Languages
- Accessing a DCS Redis 4.0/5.0/6.0 Instance on the Console
- Accessing a DCS Memcached Instance (Discontinued)
- Viewing Details of a DCS Instance
- Operating DCS Instances
-
Managing DCS Instances
- Configuration Notice
- Modifying Configuration Parameters
- Modifying the Security Group
- Viewing Background Tasks
- Viewing Data Storage Statistics of a DCS Redis 3.0 Proxy Cluster Instance
- Managing Tags
- Managing Shards and Replicas
- Analyzing Big Keys and Hot Keys
- Managing IP Address Whitelist
- Viewing Redis Slow Queries
- Viewing Redis Run Logs
- Diagnosing an Instance
- Transmitting DCS Redis Data with Encryption Using SSL
- Backing Up and Restoring DCS Instances
- Migrating Data with DCS
- Managing Passwords
- Parameter Templates
- Monitoring
- Auditing
- Data Migration Guide
-
FAQs
- Instance Types/Versions
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Access over Public Networks?
- Does DCS Support Cross-VPC Access?
- Why Is "(error) NOAUTH Authentication required" Displayed When I Access a DCS Redis Instance?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- Is a Password Required for Accessing an Instance? How Do I Set a Password?
- What Should Be Noted When Using Redis for Pub/Sub?
- How Do I Troubleshoot Redis Connection Failures?
- What Can I Do If Error "Cannot assign requested address" Is Returned When I Access Redis Using connect?
- Connection Pool Selection and Recommended Jedis Parameter Settings
-
Redis Usage
- What Are Shard and Replica Quantities?
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0/5.0/6.0 Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Does DCS for Redis Support Read/Write Splitting?How Do I Configure Read/Write Splitting for a Redis Cluster Instance?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- What Is Sentinel?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- How Can I Secure My DCS Redis Instances?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Why Do I Fail to Delete an Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- Does DCS for Redis Provide Backend Management Software?
- Can I Recover Data from Deleted DCS Instances?
- Does DCS for Redis Support SSL Encrypted Transmission?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- How Do I Check Redis Memory Usage?
- Why Is the Capacity or Performance of a Shard of a Redis Cluster Instance Overloaded When That of the Instance Is Still Below the Bottleneck?
- Does DCS Support External Extensions, Plug-ins, or Modules?
- Why Is "Error in execution" Returned When I Access Redis?
- Why Does a Key Disappear in Redis?
- Why Does an OOM Error Occur During a Redis Connection?
- What Clients Can I Use for Redis Cluster in Different Programming Languages?
- Why Do I Need to Configure Timeout for Redis Cluster?
- Can I Change the AZ for an Instance?
- Explaining and Using Hash Tags
- Will Cached Data Be Retained After an Instance Is Restarted?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Find Specified Keys and Traverse All Keys?
- Why is "permission denied" Returned When I Run the KEYS Command in Web CLI?
- How Do I Disable High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
- Can I Configure Redis Keys to Be Case-Insensitive?
- Can I View the Most Frequently Used Redis Commands?
- Common Web CLI Errors
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 4.0 to 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instances Stopped or Restarted During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Can't I Modify Specifications for a DCS Redis/Memcached Instance?
- How Do I Reduce the Capacity of a DCS Instance?
- How Do I Handle an Error When I Use Lettuce to Connect to a Redis Cluster Instance After Specification Modification?
-
Monitoring and Alarm
- How Do I View Current Concurrent Connections and Maximum Connections of a DCS Redis Instance?
- Does Redis Support Command Audits?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- Why Is Used Memory Greater Than Available Memory?
- Why Does Bandwidth Usage Exceed 100%?
- Why Is the Rejected Connections Metric Displayed?
- Why Is Flow Control Triggered? How Do I Handle It?
-
Data Backup, Export, and Migration
- How Do I Export DCS Redis Instance Data?
- Can I Export Backup Data of DCS Redis Instances to RDB Files Using the Console?
- Why Are Processes Frequently Killed During Data Migration?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- When Will AOF Rewrites Be Triggered?
- Can I Migrate Data to Multiple Target Instances in One Migration Task?
- How Do I Enable the SYNC and PSYNC Commands?
- Will the Same Keys Be Overwritten During Data Migration or Backup Import?
- Online Migration with Rump
- What Should I Consider When Transferring or Operating Data Between Different OSs?
- Can I Migrate Data from a Multi-DB Source Redis Instance to a Cluster DCS Redis Instance?
- How Can I Migrate Partial Data?
- What Are the Constraints and Precautions for Migrating Redis Data to a Cluster Instance?
- What Should I Consider for Online Migration?
- Can I Perform Online Migration Without Any Service Interruption?
- What If "Disconnecting timedout slave" and "overcoming of output buffer limits" Are Reported on the Source Instance During Online Migration?
- Why Is Memory of a DCS Redis Instance Unchanged After Data Migration Using Rump, Even If No Error Message Is Returned?
- Can I Migrate Data from a Lower Redis Version to a Higher One?
- How Do I Migrate Memcached Data?
- Big/Hot Key Analysis
- Master/Standby Switchover
-
Memcached Usage
- Can I Dump DCS Memcached Instance Data for Analysis?
- What Memcached Version Is Compatible with DCS for Memcached?
- What Data Structures Does DCS for Memcached Support?
- Does DCS for Memcached Support Public Access?
- Can I Modify Configuration Parameters of DCS Memcached Instances?
- What Are the Differences Between DCS for Memcached and Self-Hosted Memcached?
- What Policies Does DCS for Memcached Use to Deal with Expired Data?
- How Should I Select AZs When Creating a DCS Memcached Instance?
- Troubleshooting
- Change History
-
Service Overview
- API Reference (Kuala Lumpur Region)
-
API Reference (Ankara Region)
- Before You Start
- API Overview
- Calling APIs
-
APIs V2 (Recommended)
- Lifecycle Management
- Instance Management
- Shards and Replicas
- Parameter Management
- Backup and Restoration
-
Data Migration
- Creating a Backup Import Task
- Listing Migration Tasks
- Deleting Data Migration Tasks
- Querying Details of a Data Migration Task
- Stopping a Data Migration Task
- Querying the Progress of an Online Migration Task
- Creating an Online Data Migration Task
- Configuring an Online Data Migration Task
- Stopping Data Migration Tasks
- Log Management
- Background Task Management
- Other APIs
- Outdated APIs (V1)
- Permissions Policies and Supported Actions
- Appendix
-
User Guide (Ankara Region)
- Service Overview
-
Getting Started
- Creating an Instance
-
Accessing an Instance
- Network Conditions for Accessing DCS Redis
- Accessing a DCS Redis Instance Through redis-cli
- Access in Different Languages
- Accessing a DCS Redis Instance on the Console
- Viewing Details of a DCS Instance
-
User Guide
- Permissions Management
- Operating DCS Instances
-
Managing DCS Instances
- Configuration Notice
- Modifying Configuration Parameters
- Modifying Maintenance Time Window
- Modifying the Security Group
- Viewing Background Tasks
- Viewing Data Storage Statistics of a DCS Redis 3.0 Proxy Cluster Instance
- Managing Shards and Replicas
- Analyzing Big Keys and Hot Keys
- Scanning and Deleting Expired Keys in a DCS Redis Instance
- Managing IP Address Whitelist
- Viewing Redis Run Logs
- Diagnosing an Instance
- Backing Up and Restoring DCS Instances
- Migrating Data with DCS
- Managing Passwords
- Monitoring
- Best Practices
-
FAQs
- Instance Types/Versions
-
Client and Network Connection
- Security Group Configurations
- Does DCS Support Access at EIPs?
- Does DCS Support Cross-VPC Access?
- What Should I Do If Access to DCS Fails After Server Disconnects?
- Why Do Requests Sometimes Time Out in Clients?
- What Should I Do If an Error Is Returned When I Use the Jedis Connection Pool?
- Why Is "ERR unknown command" Displayed When I Access a DCS Redis Instance Through a Redis Client?
- How Do I Access a DCS Redis Instance Through Redis Desktop Manager?
- What If "ERR Unsupported CONFIG subcommand" is Displayed in SpringCloud?
- How Do I Troubleshoot Redis Connection Failures?
- What Should Be Noted When Using Redis for Pub/Sub?
- Should I Use a Domain Name or an IP Address to Connect to a DCS Redis Instance?
-
Redis Usage
- Why Is CPU Usage of a DCS Redis Instance 100%?
- Can I Change the VPC and Subnet for a DCS Redis Instance?
- Why Aren't Security Groups Configured for DCS Redis 4.0 and Later Instances?
- Do DCS Redis Instances Limit the Size of a Key or Value?
- Can I Obtain the Addresses of the Nodes in a Cluster DCS Redis Instance?
- Why Is Available Memory Smaller Than Instance Cache Size?
- Does DCS for Redis Support Multiple Databases?
- Does DCS for Redis Support Redis Clusters?
- Does DCS for Redis Support Sentinel?
- What Is the Default Data Eviction Policy?
- What Should I Do If an Error Occurs in Redis Exporter?
- Why Is Redisson Distributed Lock Not Supported by DCS Proxy Cluster Redis 3.0 Instances?
- Can I Customize or Change the Port for Accessing a DCS Instance?
- Can I Modify the Connection Addresses for Accessing a DCS Instance?
- Does DCS Support Cross-AZ Deployment?
- Why Does It Take a Long Time to Start a Cluster DCS Instance?
- What If Redis Commands Are Incompatible with DCS for Redis?
- Does DCS for Redis Provide Backend Management Software?
- Why Is Memory of a DCS Redis Instance Used Up by Just a Few Keys?
- Can I Recover Data from Deleted DCS Instances?
- Why Is "Error in execution" Returned When I Access Redis?
-
Redis Commands
- How Do I Clear Redis Data?
- How Do I Disable High-Risk Commands?
- Does DCS for Redis Support Pipelining?
- Does DCS for Redis Support the INCR and EXPIRE Commands?
- Why Do I Fail to Execute Some Redis Commands?
- Why Does a Redis Command Fail to Take Effect?
- Is There a Time Limit on Executing Redis Commands? What Will Happen If a Command Times Out?
-
Instance Scaling and Upgrade
- Can DCS Redis Instances Be Upgraded, for Example, from Redis 4.0 to 5.0?
- Are Services Interrupted If Maintenance is Performed During the Maintenance Time Window?
- Are Instances Stopped or Restarted During Specification Modification?
- Are Services Interrupted During Specification Modification?
- Why Can't I Modify Specifications for a DCS Redis Instance?
-
Monitoring and Alarm
- Does Redis Support Command Audits?
- What Should I Do If the Monitoring Data of a DCS Redis Instance Is Abnormal?
- Why Is Available Memory of Unused DCS Instances Less Than Total Memory and Why Is Memory Usage of Unused DCS Instances Greater Than Zero?
- Why Is Used Memory Greater Than Available Memory?
- Why Is Flow Control Triggered? How Do I Handle It?
-
Data Backup, Export, and Migration
- How Do I Export DCS Redis Instance Data?
- Can I Export Backup Data of DCS Redis Instances to RDB Files Using the Console?
- Why Are Processes Frequently Killed During Data Migration?
- Is All Data in a DCS Redis Instance Migrated During Online Migration?
- Do DCS Redis Instances Support Data Persistence? What Is the Impact of Persistence?
- When Will AOF Rewrites Be Triggered?
- Online Migration with Rump
-
Big/Hot Key Analysis and Expired Key Scan
- What Are Big Keys and Hot Keys?
- What Is the Impact of Big Keys or Hot Keys?
- How Do I Avoid Big Keys and Hot Keys?
- How Do I Analyze the Hot Keys of a DCS Redis 3.0 Instance?
- How Do I Detect Big Keys and Hot Keys in Advance?
- How Does DCS Delete Expired Keys?
- How Long Are Keys Stored? How Do I Set Key Expiration?
- Master/Standby Switchover
-
User Guide (ME-Abu Dhabi Region)
- General Reference
Show all
Copied.
Reconstructing Application System Databases with DCS
Overview
Application Scenario
With the development of database applications like the Internet, service demands are increasing rapidly. As the data volume and concurrent access volume are increasing exponentially, conventional relational databases can hardly support upper-layer services. Conventional databases are faced with issues such as complex structure, high maintenance costs, poor access performance, limited functions, and difficulty adapting to changes in data models or modes.
Solution
As a cache layer between the application and database, Redis can solve the above issues and improve data read speed, reduce database load, improve application performance, and ensure data reliability.
Data can be migrated from conventional relational databases such as MySQL to Redis. Since data in Redis is stored in the key-value structure, you need to convert the data structure in conventional databases. The following sections describe how to migrate a table from MySQL to DCS for Redis.
Prerequisites
- You have a DCS Redis instance as the target database. For details, see Buying a DCS Redis Instance.
NOTE:
If your source is the Huawei Cloud MySQL database, select a DCS Redis instance in the same VPC as the database.
- You have a MySQL database with a table as the source data.
For example, create a table named student_info with 4 columns. After migration, the values in the id column of the table will be the hash keys in Redis, the names of the other columns will be the hash fields, and their values will be the field values.
- The server of the MySQL database can communicate with the DCS instance.
- When the MySQL database and Redis instance are in the same VPC:
By default, networks in a VPC can communicate with each other.
- When the MySQL database and Redis instance are in different VPCs in the same region:
If the VPC of the MySQL database and DCS Redis instance are not in the same VPC, they can be connected using a VPC peering connection. For details, see Does DCS Support Cross-VPC Access?.
- When the VPCs of the MySQL database and the DCS Redis instance are not in the same region:
If the MySQL database and the Redis instance are not in the same region, connect the network using Direct Connect. For details, see What Is Direct Connect.
- For public access
For details about how to access a DCS Redis 4.0/5.0/6.0 instance on a MySQL database server over a public network, see Using Nginx for Public Access to DCS or Using ELB for Public Access to DCS.
- When the MySQL database and Redis instance are in the same VPC:
- JDK1.8 (or later) and IntelliJ IDEA have been installed on the MySQL database server. Download the Jedis client.
The development tools and clients mentioned in this document are for example only.
Procedure
- Log in to the MySQL database server.
- Install the Redis client on the server to extract, transmit, and convert data. For details about Redis client installation, see redis-cli.
- Analyze the source data structure, create the following script on the server, and save the script as migrate.sql.
SELECT CONCAT( "*8\r\n", #8 refers to the number of fields as follows. It depends on the data structure in the MySQL table. '$', LENGTH('HMSET'), '\r\n', #HMSET is a Redis command in the data writing process. 'HMSET', '\r\n', '$', LENGTH(id), '\r\n', #id is the first field after HMSET. It will be transferred into Redis as a hash key. id, '\r\n', '$', LENGTH('name'), '\r\n', #'name' will be transferred into the hash field as strings, and other arguments such as 'birthday' are applied in the same way. 'name', '\r\n', '$', LENGTH(name), '\r\n', #name is a variable representing the company name in the MySQL table. It will be transferred to be the value corresponding to the field of the last argument 'name'. Other variables such as birthday are applied in the same way. name, '\r\n', '$', LENGTH(' birthday'), '\r\n', ' birthday', '\r\n', '$', LENGTH(birthday), '\r\n', birthday, '\r\n', '$', LENGTH('city'), '\r\n', 'city', '\r\n', '$', LENGTH(city), '\r\n', city, '\r' ) FROM student_info AS s
- Run the following command on the server to migrate data:
mysql -h <MySQL host> -P <MySQL port> -u <MySQL username> -D <MySQL database name> -p --skip-column-names --raw < migrate.sql | redis-cli -h <Redis host> -p<Redis port> --pipe -a <Redis password>
Table 1 Parameters Parameter
Description
Example
-h
Address of the MySQL database.
xxxxxx
-P
Port of MySQL.
3306
-u
Username of MySQL.
root
-D
Database whose table is to be migrated.
mysql
-p
Password of MySQL. If MySQL does not have a password, leave this parameter blank.
For security, you can enter -p only, and enter your password when prompted by the command window after running the command.
xxxxxx
--skip-column-names
The column names will not be written in query results.
No need to be set.
--raw
No escape in outputting column values.
No need to be set.
-h after redis-cli
Address of Redis.
redis-xxxxxxxxxxxx.com
-p after redis-cli
Port of Redis.
6379
--pipe
Use Redis pipelining to transmit data.
No need to be set.
-a
Password of Redis. It does not need to be set if your Redis does not have a password.
xxxxxx
In this screenshot, the Redis instance does not have a password. In the result, errors refers to the number of errors during running, and replies refers to the number of replies received. If errors is 0, and replies is equal to the the number of records in the MySQL table, the table is migrated successfully.
- One piece of MySQL data corresponds to one hash in Redis. Run the HGETALL command for query and verification. Result:
[root@ecs-cmtest mysql-8.0]# redis-cli -h redis-xxxxxxxxxxxx.com -p 6379 redis-xxxxxxxxxxxx.com:6379> HGETALL 1 1) "name" 2) "Wilin" 3) " birthday" 4) "1995-06-12" 5) "city" 6) "Nanjing" redis-xxxxxxxxxxxx.com:6379> HGETALL 4 1) "name" 2) "Anbei" 3) " birthday" 4) "1969-10-19" 5) "city" 6) "Dongjing"
NOTE:
You can adjust the migration plan based on actual query needs. For example, you can convert other columns in MySQL to the hash keys, and convert the id column to the field.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot