黄东旭解析 TiDB 的核心优势
823
2023-06-29
本文关于(高可靠、高可用常见问题)
TiDB 数据是强一致的吗?
通过使用 Raft 一致性算法,数据在各 TiKV 节点间复制为多副本,以确保某个节点宕机时数据的安全性。
在底层,TiKV 使用复制日志 + 状态机 (State Machine) 的模型来复制数据。对于写入请求,数据被写入 Raft Leader,然后 Leader 以日志的形式将命令复制到它的 Follower 中。当集群中的大多数节点收到此日志时,日志会被提交,状态机会相应作出变更,以此来实现强一致。
TiDB 是否提供三中心跨机房多活部署的推荐方案?
从架构来看,TiDB 支持真正意义上的跨中心异地多活。从实现层面看,多地部署方案依赖数据中心之间的网络延迟和稳定性,一般建议延迟在 5ms 以下。
TiDB 是否支持数据加密?
支持。要加密传输中的数据,可以在 TiDB 客户端和服务器之间启用 TLS。要加密存储引擎中的数据,可以启用透明数据加密 (TDE)。
我们的安全漏洞扫描工具对 MySQL version 有要求,TiDB 是否支持修改 server 版本号呢?
TiDB 在 v3.0.8 后支持通过 TiDB 配置文件中的 server-version
配置项来修改 server 版本号。
对于 v4.0 及以上版本的集群,如果使用 TiUP 部署集群,可以通过 tiup cluster edit-config <cluster-name>
修改配置文件中以下部分来设置合适的版本号:
server_configs: tidb: server-version: 'YOUR_VERSION_STRING'
修改完成后,使用 tiup cluster reload <cluster-name> -R tidb
命令使得以上修改生效,以避免出现安全漏洞扫描不通过的问题。
TiDB 支持哪些认证协议?过程是怎样的?
TiDB 和 MySQL 一样,在用户登录认证时使用 SASL 认证协议对密码进行处理。
客户端连接 TiDB 的时候,使用 challenge-response(挑战-应答)的认证模式,过程如下:
客户端连接服务器。
服务器发送随机字符串 challenge
给客户端。
客户端发送 username
+ response
给服务器。
服务器验证 response
。
如何修改用户名密码和权限?
因为 TiDB 是分布式数据库,想要在 TiDB 中修改用户密码,建议使用 ALTER USER
的方法,例如 ALTER USER 'test'@'localhost' IDENTIFIED BY 'mypass';
。
不推荐使用 UPDATE mysql.user
的方法,因为这种方法可能会造成其它节点刷新不及时的情况。
上述就是小编为大家整理的(高可靠、高可用常见问题)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。