Docs Home Quickstart Install CockroachDB Install CockroachDB Install CockroachDB Install CockroachDB Install CockroachDB Learn CockroachDB SQL Learn CockroachDB SQL Overview Developer Basics JavaScript/TypeScript JavaScript/TypeScript JavaScript/TypeScript JavaScript/TypeScript JavaScript/TypeScript Python Python Python Python Python Golang Golang Golang Golang Java Java Java Java Ruby Ruby C# (.NET) Rust Hasura (GraphQL) AWS Lambda Google Cloud Run Netlify Vercel Serverless Function Best Practices Overview Spring Boot with JDBC Spring Boot with JPA Overview Global Application Use Case Multi-region Database Schema Set up a Development Environment Develop a Global Application Deploy a Global Application Deploy a Python To-Do App with Flask, Kubernetes, and CockroachDB Cloud Latest Production Release CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases CockroachDB Releases Staged Release Process Release Support Policy Known Limitations Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Technical Advisories Cloud Releases MOLT Releases Kubernetes Operator Unsupported Versions Why CockroachDB? Replication & Rebalancing CockroachDB Resilience Serializable Transactions Multi-Active Availability PostgreSQL Compatibility SQL Features SQL FAQs Overview Disaster Recovery Install a Driver or ORM Framework Connect to a Cluster Client Connection Parameters Connection Pooling Overview Overview Schema Conversion Tool Fetch Verify AWS DMS Qlik Replicate Striim Oracle GoldenGate Debezium Migrate from CSV Migrate from Avro Migrate from Shapefiles Migrate from OpenStreetMap Migrate from GeoJSON Migrate from GeoPackage Import Performance Best Practices Migrate from PostgreSQL Migrate from MySQL Migrate from Oracle Migration Strategy: Lift and Shift Overview Create an Account CockroachDB Cloud Costs Plan a Basic Cluster Create a Basic Cluster Connect to a Basic Cluster Understand your Resource Usage Manage a Basic Cluster Use the Terraform provider Plan a Standard Cluster Create a Standard Cluster Connect to a Standard Cluster Understand your Resource Usage Manage a Standard Cluster Move into Production Provision a Standard Cluster with Terraform Migrate from Standard or Basic to Advanced Plan an Advanced Cluster Create an Advanced Cluster Connect to an Advanced Cluster Manage an Advanced Cluster Move into Production Provision an Advanced Cluster with Terraform CockroachDB Advanced on Azure Migrate from Standard or Basic to Advanced CockroachDB Cloud Regions Overview Manage AWS PrivateLink Overview Manage CMEK Compliance in Advanced PCI DSS Overview SSO for Cloud Organizations Configure Cloud Organization SSO Configure SCIM Provisioning Cluster SSO using the Cloud Console SQL Client Certificate Authentication for Advanced Clusters Overview Manage Users, Roles, and Service Accounts Organize CockroachDB Cloud Clusters Using Folders Overview Create Private Clusters Egress Perimeter Controls SQL Audit Logging Export Cloud Organization Audit Logs Export Logs From CockroachDB Standard Export Logs From CockroachDB Advanced Configure SQL Authentication Satori HashiCorp Vault Cluster Overview Page Alerts Page Tools Page Metrics Overview Overview tab SQL Changefeeds Row-Level TTL Request Units Custom Export Metrics from Standard Export Metrics from Advanced Essential Metrics for Standard Essential Metrics for Advanced Essential Alerts for CockroachDB Advanced Deployments Statements Page Sessions Page Transactions Page Insights Page Databases Page Jobs Page Overview Managed Backups for Basic Clusters Managed Backups for Standard Clusters Managed Backups for Advanced Clusters Take and Restore Self-Managed Backups Monitoring Billing Management CockroachDB Cloud Upgrade Policy Upgrade a cluster SQL Shell CockroachDB Cloud API ccloud CLI Production Checklist Deploy from Binary Deploy from Binary Deploy in Kubernetes Deploy in Kubernetes Deploy in Docker Deploy in Docker Deploy in Docker Simulate a Multi-Region Cluster Locally Overview Deploy On-Premises Deploy On-Premises Deploy on AWS Deploy on AWS Deploy on Azure Deploy on Azure Deploy on Google Cloud Platform GCE Deploy on Google Cloud Platform GCE Deploy on Digital Ocean Deploy on Digital Ocean Overview Single-Cluster Deployment Single-Cluster Deployment OpenShift Deployment Multi-Cluster Deployment Pod Scheduling Resource Management Certificate Management Cluster Scaling Cluster Monitoring Cluster Upgrades Kubernetes Performance Topology Patterns Overview Development Topology Basic Production Topology Follower Reads Topology Follow-the-Workload Topology Regional Tables Global Tables Use the CockroachDB CLI to provision a development cluster Manage PKI certificates with HashiCorp Vault Create Security Certificates using OpenSSL Use Online Certificate Status Protocol (OCSP) Certificate-based authentication using multiple values from the X.509 SUBJECT field Authentication Encryption Authorization Table-based SQL Audit Logging Role-based SQL Audit Logging LDAP Authentication LDAP Authorization GSSAPI Authentication Cluster SSO using JWT SSO for DB Console Rotate Security Certificates Use Hashicorp Vault's Dynamic Secrets Overview Common Issues to Monitor Enable the Node Map Use Prometheus and Alertmanager Monitor CockroachDB self-hosted with Datadog Monitor CockroachDB self-hosted with DBmarlin Monitor CockroachDB self-hosted with Kibana Essential Metrics for CockroachDB self-hosted Deployments Essential Alerts for CockroachDB self-hosted Deployments DB Console Overview Cluster Overview Page Overview Hardware Runtime Networking SQL Storage Replication Distributed Queues Slow Requests Changefeeds Overload TTL Physical Cluster Replication Logical Data Replication Custom Chart Databases Page Sessions Page Statements Page Transactions Page Insights Page Network Page Hot Ranges Page Jobs Page Schedules Page Advanced Debug Page Key Visualizer WAL Failover Overview Full and Incremental Backups Backups with Revision History and Point-in-time Restore Encrypted Backup and Restore Locality-restricted Backup Execution Locality-aware Backup and Restore Scheduled Backups Backup Validation Expire Past Backups Backup and Restore Monitoring Cloud Storage Cloud Storage Authentication Userfile Storage Local File Server Upgrade CockroachDB Disaster Recovery Planning Restoring Backups Across Versions Manage Long-Running Queries Node Shutdown Overview Configure Logs Logging Use Cases Log SQL Statistics to Datadog Logging Best Practices Critical Log Messages Cluster API Database Schemas Create a Database Create a User-defined Schema Create a Table Computed Columns Column Families Scale to Multiple Regions Secondary Indexes Partial Indexes Hash-sharded Indexes Generalized Inverted Indexes Full-Text Search Trigram Indexes Expression Indexes Spatial Indexes Change and Remove Objects Online Schema Changes Use Alembic Use Flyway Use Liquibase Overview Query Data Reusable Views Subqueries Temporary Tables Paginate Results Follower Reads AS OF SYSTEM TIME Query Spatial Data Export Spatial Data Insert Data Update Data Bulk-update Data Delete Data Bulk-delete Data Batch Delete Expired Data with Row-Level TTL Overview Advanced Client-side Transaction Retries Life of a Distributed Transaction Read Committed Transactions Test Your Application Locally JSON Support Spatial Data Cross-Cloud Migration SQL Playground DBeaver GUI IntelliJ IDEA Change Data Capture Overview Create and Configure Changefeeds Changefeed Best Practices Changefeed Messages Changefeed Sinks Changefeed Examples Monitor and Debug Changefeeds Protect Changefeed Data Change Data Capture Queries Changefeeds on Tables with Column Families Export Data with Changefeeds Changefeeds in Multi-Region Deployments Amazon MSK Amazon MSK Serverless Connect to a Changefeed Kafka Sink with OAuth Using Okta Stream a Changefeed from CockroachDB Cloud to Snowflake Stream a Changefeed to a Confluent Cloud Kafka Cluster How Does an Enterprise Changefeed Work? Advanced Changefeed Configuration Overview Set Up Logical Data Replication Manage Logical Data Replication Monitor Logical Data Replication Overview Set Up Physical Cluster Replication Fail Over from a Primary to a Standby Cluster Monitor a Replication Stream Technical Overview Overview Work with Virtual Clusters Setting Scopes Metric Scopes Overview Survival Goals Table Localities Table Partitioning How to Choose a Multi-Region Configuration Multi-Region Zone Config Extensions Low Latency Reads and Writes Data Domiciling with CockroachDB Migrate to Multi-Region SQL with Replication Zones Using GeoServer with CockroachDB Overview SQL Performance Best Practices Indexes Map SQL Activity using an Application Name Cost-Based Optimizer Vectorized Execution Engine Load-Based Splitting Replication Controls Admission Control Performance Tuning Recipes Statement Tuning with EXPLAIN Apply SQL Statement Performance Rules Troubleshoot Lock Contention Overview Common Errors and Solutions Troubleshoot Cloud Setup Troubleshoot Self-Hosted Setup Troubleshoot SQL Statements Transaction Retry Error Reference Transaction Retry Error Example Differences in Metrics between Third-Party Monitoring Integrations and DB Console Replication Reports Overview Benchmarking with TPC-C Benchmarking with TPC-C Benchmarking with TPC-C Benchmarking with TPC-C Benchmarking with TPC-C Support Resources File an Issue Automatic CPU Profiler Overview ALTER BACKUP ALTER BACKUP SCHEDULE ALTER CHANGEFEED ALTER DATABASE ALTER DEFAULT PRIVILEGES ALTER FUNCTION ALTER INDEX ALTER PARTITION ALTER PROCEDURE ALTER RANGE ALTER ROLE ALTER SCHEMA ALTER SEQUENCE ALTER TABLE ALTER TYPE ALTER USER ALTER VIEW ALTER VIRTUAL CLUSTER BACKUP BEGIN CALL CANCEL JOB CANCEL QUERY CANCEL SESSION COMMENT ON COMMIT COPY CREATE CHANGEFEED CREATE DATABASE CREATE EXTERNAL CONNECTION CREATE FUNCTION CREATE INDEX CREATE LOGICAL REPLICATION STREAM CREATE PROCEDURE CREATE ROLE CREATE SCHEDULE FOR BACKUP CREATE SCHEDULE FOR CHANGEFEED CREATE SCHEMA CREATE SEQUENCE CREATE STATISTICS CREATE TABLE CREATE TABLE AS CREATE TRIGGER CREATE TYPE CREATE USER CREATE VIEW CREATE VIRTUAL CLUSTER DELETE DROP DATABASE DROP EXTERNAL CONNECTION DROP FUNCTION DROP OWNED BY DROP TRIGGER DROP TYPE DROP INDEX DROP PROCEDURE DROP ROLE DROP SCHEDULES DROP SCHEMA DROP SEQUENCE DROP TABLE DROP USER DROP VIEW DROP VIRTUAL CLUSTER EXPERIMENTAL CHANGEFEED FOR EXPLAIN EXPLAIN ANALYZE EXPORT GRANT IMPORT INTO INSERT JOIN LIMIT/OFFSET ORDER BY PAUSE JOB PAUSE SCHEDULES REASSIGN OWNED REFRESH RELEASE SAVEPOINT RESET CLUSTER SETTING RESET {session variable} RESTORE RESUME JOB RESUME SCHEDULES REVOKE ROLLBACK SAVEPOINT SELECT FOR UPDATE and FOR SHARE SET CLUSTER SETTING SET {session variable} SET TRANSACTION SHOW BACKUP SHOW CLUSTER SETTING SHOW COLUMNS SHOW CONSTRAINTS SHOW CREATE SHOW CREATE EXTERNAL CONNECTION SHOW CREATE SCHEDULE SHOW DATABASES SHOW DEFAULT PRIVILEGES SHOW DEFAULT SESSION VARIABLES FOR ROLE SHOW ENUMS SHOW EXTERNAL CONNECTION SHOW FULL TABLE SCANS SHOW GRANTS SHOW INDEX SHOW JOBS SHOW LOCALITY SHOW LOGICAL REPLICATION JOBS SHOW PARTITIONS SHOW RANGES SHOW RANGE FOR ROW SHOW REGIONS SHOW {session variable} SHOW SUPER REGIONS SHOW SYSTEM GRANTS SHOW ROLES SHOW SCHEDULES SHOW SCHEMAS SHOW SEQUENCES SHOW SESSIONS SHOW STATEMENTS SHOW STATISTICS SHOW SAVEPOINT STATUS SHOW TABLES SHOW TRACE FOR SESSION SHOW TRANSACTIONS SHOW TYPES SHOW USERS SHOW VIRTUAL CLUSTER SHOW ZONE CONFIGURATIONS TRUNCATE UPDATE UPSERT WITH {storage parameter} Keywords & Identifiers Constants Selection Queries Cursors Table Expressions Common Table Expressions Name Resolution NULL Handling Scalar Expressions User-Defined Functions Stored Procedures Triggers Window Functions Full SQL Grammar Overview ARRAY BIT BOOL BYTES COLLATE DATE DECIMAL ENUM FLOAT INET INT INTERVAL JSONB OID SERIAL STRING TIME TIMESTAMP TSQUERY TSVECTOR UUID VECTOR Overview POINT LINESTRING POLYGON MULTIPOINT MULTILINESTRING MULTIPOLYGON GEOMETRYCOLLECTION Well Known Text (WKT) Well Known Binary (WKB) GeoJSON SRID 4326 - longitude and latitude ST_Contains ST_Within ST_Intersects ST_CoveredBy ST_Covers ST_Disjoint ST_Equals ST_Overlaps ST_Touches ST_ConvexHull ST_Union Overview Check Default Value Foreign Key Not Null Primary Key Unique Functions & Operators Session Variables PL/pgSQL Glossary Overview SQL Layer Transaction Layer Distribution Layer Replication Layer Storage Layer Backups Cloud API Cluster API Cluster Settings Overview cockroach start cockroach init cockroach start-single-node cockroach cert cockroach sql cockroach sqlfmt cockroach node cockroach nodelocal upload cockroach auth-session cockroach demo cockroach debug ballast cockroach debug encryption-active-key cockroach debug encryption-decrypt cockroach debug job-trace cockroach debug list-files cockroach debug merge-logs cockroach debug tsdump cockroach debug zip cockroach statement-diag cockroach gen cockroach userfile upload cockroach userfile list cockroach userfile get cockroach userfile delete cockroach version cockroach workload The cockroach-sql command Diagnostics Reporting Logging Levels and Channels Log Formats Notable Event Types Available Metrics Child Metrics CockroachDB Feature Availability API Support Policy Telemetry Collected by CockroachDB Supported Tools Monitoring Integrations Community-supported Tools Overview SQL Authentication SASL/SCRAM-SHA-256 Secure Password-based Authentication Authorization Encryption Column Level Encryption PKI and TLS Overview crdb_internal information_schema pg_catalog pg_extension CockroachDB FAQs Operational FAQs Licensing FAQs Online Courses