Summary Notes for Getting Started with TiDB

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: TiDB 快速起步总结笔记

| username: TiDBer_osT4WEEj

TiDB Quick Start Summary Notes

1. Overview of TiDB

TiDB is a distributed SQL database characterized by horizontal scalability, strong consistency, and high availability. It is compatible with the MySQL protocol, making it easy to use and migrate.

2. Environment Preparation

  • Operating System: Linux/MacOS/Windows
  • Memory: At least 4GB RAM
  • Disk: At least 100GB available space
  • Network: Ensure all components are on the same network

3. Installing TiDB

  • Download: Visit the TiDB official website to download the appropriate version.
  • Install: Execute the installation script or use a package manager according to your operating system.

4. Starting the TiDB Cluster

  • Using Docker: PingCAP provides a Docker Compose configuration file to quickly start the TiDB cluster.
docker-compose -f path/to/tidb-cluster.yaml up -d
  • Manual Configuration: Configure TiDB Server, TiKV, and PD services separately.

5. Connecting to TiDB

  • Using Client: Use the MySQL client or other compatible SQL clients to connect to TiDB.
mysql -h <tidb-host> -P <port> -u root

6. Database Operations

  • Create Database:
CREATE DATABASE mydb;
  • Create Table:
CREATE TABLE users (id INT PRIMARY KEY, name VARCHAR(255));
  • Insert Data:
INSERT INTO users (id, name) VALUES (1, 'Alice');
  • Query Data:
SELECT * FROM users;

7. Performance Optimization

  • Indexes: Use indexes appropriately to speed up queries.
  • Partitioning: Partition large tables to improve manageability and query performance.
  • SQL Optimization: Avoid complex subqueries and full table scans.

8. Monitoring and Diagnostics

  • TiDB Dashboard: Use the TiDB Dashboard to monitor cluster status.
  • Log Analysis: Check the log files of TiDB, TiKV, and PD for issue diagnosis.

9. Backup and Restore

  • Backup: Use the mydumper tool for data backup.
  • Restore: Use the loader tool to restore data from backups.

10. Cluster Scaling

  • Scaling Out: Add TiKV nodes to increase storage and computing capacity.
  • Scaling In: Reduce nodes to save resources.

11. Security

  • Access Control: Use TiDB’s user and permission management features.
  • Data Encryption: Supports data transmission encryption and static encryption.

12. Community and Support

  • Community Forum: Join the TiDB community to get help and share experiences.
  • Official Documentation: Read the official documentation for more detailed information.

13. Common Issues

  • Performance Issues: Check slow query logs and optimize SQL.
  • Data Inconsistency: Check transaction isolation levels and lock strategies.

Conclusion

TiDB provides a powerful and flexible database solution suitable for applications requiring high concurrency and high availability. With this quick start guide, you can quickly set up and use TiDB, beginning your database journey.

| username: ziptoam | Original post link

I think using TIUP for single-machine simulated cluster deployment is also quite good.

| username: 我是吉米哥 | Original post link

If you are learning, you can use tiup playground for more convenience.