Databases
Manage Redis Cloud databases within subscriptions.
Commands
List Databases
List all databases across subscriptions or in a specific subscription.
redisctl cloud database list [OPTIONS]
Options:
--subscription <ID>- Filter by subscription ID-o, --output <FORMAT>- Output format: json, yaml, or table-q, --query <JMESPATH>- JMESPath query to filter output
Examples:
# List all databases
redisctl cloud database list
# List databases in specific subscription
redisctl cloud database list --subscription 123456
# Table format
redisctl cloud database list -o table
# Filter active databases
redisctl cloud database list -q "[?status=='active']"
# Get names and endpoints
redisctl cloud database list -q "[].{name: name, endpoint: publicEndpoint}"
Get Database
Get details of a specific database.
redisctl cloud database get <ID> [OPTIONS]
Arguments:
<ID>- Database ID (format:subscription_id:database_id)
Examples:
# Get database details
redisctl cloud database get 123456:789
# Get connection details
redisctl cloud database get 123456:789 \
-q "{endpoint: publicEndpoint, port: port, password: password}"
Create Database
Create a new database in a subscription.
redisctl cloud database create --subscription <ID> [OPTIONS]
Required:
--subscription <ID>- Subscription ID
Options:
--name <NAME>- Database name--memory <GB>- Memory limit in GB--protocol <PROTOCOL>- redis or memcached--data <JSON>- Full configuration as JSON--wait- Wait for completion
Examples:
# Create with flags
redisctl cloud database create \
--subscription 123456 \
--name mydb \
--memory 1
# Create with JSON data
redisctl cloud database create \
--subscription 123456 \
--data @database.json \
--wait
# Create with inline JSON
redisctl cloud database create \
--subscription 123456 \
--data '{"name": "test-db", "memoryLimitInGb": 1}'
Example JSON Payload:
{
"name": "production-cache",
"memoryLimitInGb": 4,
"protocol": "redis",
"replication": true,
"dataPersistence": "aof-every-write",
"modules": [
{"name": "RedisJSON"},
{"name": "RediSearch"}
]
}
Update Database
Update database configuration.
redisctl cloud database update <ID> [OPTIONS]
Arguments:
<ID>- Database ID (format:subscription_id:database_id)
Options:
--data <JSON>- Updates to apply--wait- Wait for completion
Examples:
# Increase memory
redisctl cloud database update 123456:789 \
--data '{"memoryLimitInGb": 8}' \
--wait
# Update eviction policy
redisctl cloud database update 123456:789 \
--data '{"dataEvictionPolicy": "volatile-lru"}'
Delete Database
Delete a database.
redisctl cloud database delete <ID> [OPTIONS]
Arguments:
<ID>- Database ID (format:subscription_id:database_id)
Options:
--wait- Wait for deletion to complete
Examples:
# Delete database
redisctl cloud database delete 123456:789
# Delete and wait
redisctl cloud database delete 123456:789 --wait
Database Operations
Backup Database
Trigger a manual backup.
redisctl cloud database backup <ID> [OPTIONS]
Examples:
redisctl cloud database backup 123456:789
redisctl cloud database backup 123456:789 --wait
Import Data
Import data into a database.
redisctl cloud database import <ID> --data <JSON> [OPTIONS]
Example:
redisctl cloud database import 123456:789 --data '{
"sourceType": "s3",
"importFromUri": ["s3://bucket/backup.rdb"]
}'
Common Patterns
Get Connection String
ENDPOINT=$(redisctl cloud database get 123456:789 -q 'publicEndpoint')
PASSWORD=$(redisctl cloud database get 123456:789 -q 'password')
echo "redis://:$PASSWORD@$ENDPOINT"
Monitor Databases
# Check memory usage across all databases
redisctl cloud database list \
-q "[].{name: name, used: usedMemoryInMB, limit: memoryLimitInGb}" \
-o table
Bulk Operations
# Process all database IDs
for db in $(redisctl cloud database list -q '[].databaseId' --raw); do
echo "Processing $db"
done
Troubleshooting
"Database creation failed"
- Check subscription has available resources
- Verify region supports requested features
- Check module compatibility
"Cannot connect"
- Verify database is active: check
statusfield - Check firewall/security group rules
- Ensure correct endpoint and port
API Reference
REST endpoints:
GET /v1/subscriptions/{subId}/databases- ListPOST /v1/subscriptions/{subId}/databases- CreateGET /v1/subscriptions/{subId}/databases/{dbId}- GetPUT /v1/subscriptions/{subId}/databases/{dbId}- UpdateDELETE /v1/subscriptions/{subId}/databases/{dbId}- Delete
For direct API access: redisctl api cloud get /subscriptions/123456/databases