Get Started
Quick Setup - Install, configure, and try Vitess
Pages in this section
- Vitess Operator for Kubernetes
- Local Install
- Local Install via source for Mac
- Vttestserver Docker Image
Vitess is a database clustering system for MySQL. It provides horizontal scaling, resilience, and query routing while preserving MySQL semantics. See: Overview
This page outlines a beginner friendly quick guide to evaluate Vitess. It describes how to install a small test environment. So you can explore Vitess’s core features and get comfortable with its architecture or start building against it.
Who this is for #
- Evaluators who want a low‑effort try‑out system.
- Administrators who prefer to learn the basics before planning a production install.
- Developers who need a disposable test environment to build against.
Install for testing #
Pick one of the lightweight test options:
- Local Install (Linux) — precompiled binaries and local example scripts
./local/ - Local Install via source for macOS — build from source, then run the local examples
./local-mac/ - Vttestserver Docker Image — single‑container test instance (fastest path & recommended)
./vttestserver-docker-image/
Advanced (closer to production): If you want to exercise more components or practice ops tasks, use the Vitess Operator for Kubernetes in a local or dev cluster. It’s more involved and mirrors production patterns.
./operator/
We recommend that to read the overview Docs first like Architecture Overview to understand the components you are installing: ../overview/architecture/
Schema & VSchema (use the demo) #
To explore schemas and VSchema quickly, use the VSchema demo. It runs a single‑process vtcombo instance that behaves like a full cluster for learning.
Run the demo, see: ../user-guides/vschema-guide/overview/#demo
go run demo.go- Open http://localhost:8000 to view tables, run queries, and see effects.
- Or connect with a MySQL client:
mysql -h 127.0.0.1 -P 12348. - The demo focuses on VSchema concepts similar to Getting Started, but with more detail. See: VSchema Overview → Demo.
Iterate on the schema
- Start with the demo’s baseline schema/VSchema.
- Empty the files under
schema/productandschema/customer, then add definitions step by step to mirror the guide’s examples. - Use VSchema DDL where applicable, or apply JSON directly if you prefer. (Knowing the JSON format helps with troubleshooting.)
Tip: The demo is great for trying sharded vs. unsharded keyspaces and understanding how VTGate routes queries based on VSchema.
Alternative: your chosen test setup #
If you used Local Install, Local (macOS source), or vttestserver, apply your schema and VSchema in that environment and connect your app through VTGate using your normal MySQL driver.
Use the examples provided in the respective test guide to apply schema and VSchema.
Test #
- Connect to VTGate and run simple reads/writes to verify connectivity.
- In the VSchema demo, use the web UI at
http://localhost:8000to inspect tables and issue queries; observe how VSchema affects routing. - (Optional) Try safe demo operations in a test setup (e.g., MoveTables, tiny reshard, planned failover) only if your chosen guide includes them.
What’s next: roadmap to move to production #
After you’ve completed the quick start, follow this linear roadmap to build and operate a production Vitess cluster:
Plan production installation — capacity, topology, cells, prerequisites
PlanningInstall & wire up the cluster — (Kubernetes is recommended; use the Vitess Operator or your automation)
Configure the production environment — durability, backups, monitoring
Populate databases — migrate existing MySQL data with VReplication or dump/restore
Migrating dataRun queries & evolve schemas — connect apps, manage changes safely
Operate & scale — shard and maintain your cluster over time
Role hints: Developers start with VSchema & Query Serving (step 5). DBAs/Operators prioritize backups/monitoring (step 3). SREs focus on VTOrc and reparenting (step 6).