TiDB-学习笔记02
发布人:shili8
发布时间:2024-11-11 03:27
阅读次数:0
**TiDB-学习笔记02**
**前言**
在上一篇文章中,我们已经了解了 TiDB 的基本概念、架构和特性。今天我们将继续深入探讨 TiDB 的一些重要功能和配置。
**1. TiDB 的分布式存储**
TiDB 是一个分布式数据库,支持水平扩展和高可用性。它使用 Raft 协议来实现分布式一致性,确保数据的强一致性和高可用性。
###1.1 TiKVTiKV 是 TiDB 的分布式存储引擎,它负责存储和管理数据。TiKV 使用 Raft 协议来实现分布式一致性,并支持多副本和复制。
sql-- 创建一个表CREATE TABLE t1 (id INT, name VARCHAR(255)); -- 插入一些数据INSERT INTO t1 VALUES (1, '张三'), (2, '李四');
###1.2 TiDB 的分布式存储配置TiDB 支持多种分布式存储配置,包括单机模式、集群模式和分区模式。
####1.2.1 单机模式在单机模式下,所有数据都存储在一个 TiKV 实例中。
sql-- 配置单机模式[server] listen-addr = "127.0.0.1:2379"
####1.2.2 集群模式在集群模式下,多个 TiKV 实例组成一个集群,数据分散存储在各个实例中。
sql-- 配置集群模式[server] listen-addr = "127.0.0.1:2379" cluster-id = "my-cluster" [tikv] raft-store-dir = "/path/to/raft/store"
####1.2.3 分区模式在分区模式下,数据根据某种规则分散存储在多个 TiKV 实例中。
sql-- 配置分区模式[server] listen-addr = "127.0.0.1:2379" partition-num =4
**2. TiDB 的高可用性**
TiDB 支持高可用性,通过多副本和复制来确保数据的强一致性和高可用性。
###2.1 多副本TiKV 使用 Raft 协议来实现分布式一致性,并支持多副本。多副本可以提高数据的可用性和可靠性。
sql-- 配置多副本[tikv] raft-store-dir = "/path/to/raft/store" replication-num =3
###2.2 复制TiDB 支持复制,通过将数据复制到多个 TiKV 实例中来提高数据的可用性和可靠性。
sql-- 配置复制[server] listen-addr = "127.0.0.1:2379" replication-num =3
**3. TiDB 的安全**
TiDB 支持安全功能,通过加密数据和使用 SSL/TLS 协议来保护数据的安全。
###3.1 加密TiKV 支持加密数据,通过使用 AES-256-GCM 算法来保护数据的安全。
sql-- 配置加密[tikv] encryption-key = "my-secret-key"
###3.2 SSL/TLSTiDB 支持 SSL/TLS 协议,通过使用 SSL/TLS 来保护数据的安全和隐私。
sql-- 配置 SSL/TLS[server] listen-addr = "127.0.0.1:2379" ssl-cert-file = "/path/to/ssl/cert" ssl-key-file = "/path/to/ssl/key"
**结论**
本文介绍了 TiDB 的分布式存储、高可用性和安全功能。通过阅读本文,读者可以了解 TiDB 的基本概念、架构和特性,并且能够配置 TiDB 的分布式存储、多副本和复制,以及加密数据和使用 SSL/TLS 协议来保护数据的安全。
**参考**
* [TiDB 文档]( />* [TiKV 文档](