既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
tiup cluster
如果机器已经安装 TiUP cluster,需要更新软件版本:
tiup update --self && tiup update cluster
4)、增大 sshd 服务连接数
由于模拟多机部署,需要通过 root 用户调大 sshd 服务的连接数限制:
- 修改
/etc/ssh/sshd_config
将MaxSessions
调至 20。 - 重启 sshd 服务:
service sshd restart
5)、创建并启动集群
创建目录
mkdir -p /usr/local/tidb
cd /usr/local/tidb/
创建配置文件 topo.yaml
。配置模板如下:
# # Global variables are applied to all deployments and used as the default value of
# # the deployments if a specific deployment value is missing.
global:
user: "tidb"
ssh\_port: 22
deploy\_dir: "/tidb-deploy"
data\_dir: "/tidb-data"
# # Monitored variables are applied to all the machines.
monitored:
node\_exporter\_port: 9100
blackbox\_exporter\_port: 9115
server\_configs:
tidb:
log.slow-threshold: 300
tikv:
readpool.storage.use-unified-pool: false
readpool.coprocessor.use-unified-pool: true
pd:
replication.enable-placement-rules: true
replication.location-labels: ["host"]
tiflash:
logger.level: "info"
pd\_servers:
- host: 192.168.110.134
tidb\_servers:
- host: 192.168.110.134
tikv\_servers:
- host: 192.168.110.134
port: 20160
status\_port: 20180
config:
server.labels: { host: "logic-host-1" }
- host: 192.168.110.134
port: 20161
status\_port: 20181
config:
server.labels: { host: "logic-host-2" }
- host: 192.168.110.134
port: 20162
status\_port: 20182
config:
server.labels: { host: "logic-host-3" }
tiflash\_servers:
- host: 192.168.110.134
monitoring\_servers:
- host: 192.168.110.134
grafana\_servers:
- host: 192.168.110.134
user: "tidb"
:表示通过tidb
系统用户(部署会自动创建)来做集群的内部管理,默认使用 22 端口通过 ssh 登录目标机器replication.enable-placement-rules
:设置这个 PD 参数来确保 TiFlash 正常运行host
:设置为本部署主机的 IP。(更改为自己机器IP)
6)、部署集群
命令格式为:
tiup cluster deploy <cluster-name> <tidb-version> ./topo.yaml --user root -p
<cluster-name>
:需设置的集群名称<tidb-version>
:需设置的集群版本。可以通过tiup list tidb
命令来查看当前支持部署的 TiDB 版本-p
:表示在连接目标机器时使用密码登录
首先使用tiup list tidb
命令查看 TiDB 版本
tiup list tidb
我们这里就使用最新稳定版 v6.3.0
。
执行集群部署命令:
tiup cluster deploy my-tidb v6.3.0 ./topo.yaml --user root -p
此命令需要在
topo.yaml
目录执行
执行后,会提示让你输入 SSH 密码,也就是你的登录密码。
$ tiup cluster deploy my-tidb v6.3.0 ./topo.yaml --user root -p
tiup is checking updates for component cluster ...
Starting component `cluster`: /root/.tiup/components/cluster/v1.11.0/tiup-cluster deploy my-tidb v6.3.0 ./topo.yaml --user root -p
Input SSH password:
然后根据提示,输入 y
后,等待部署完成
Do you want to continue? [y/N]: (default=N)
安装程序跑完后,记得看一下是否所有的组件都成功安装,如果安装失败,根据提示查看日志进行解决。
7)、启动集群
命令格式:
tiup cluster start <cluster-name>
执行命令:
tiup cluster start my-tidb
8)、客户端访问
一定要关闭防火墙在进行测试
使用 Navicat
客户端连接工具,选择MySQL方式连接。连接成功。
使用 SQLyog
也可以连接成功。
9)、Grafana 监控页面
访问地址:
http://IP:3000
默认用户名和密码均为
admin
。
10)、TiDB 的 Dashboard
访问地址:
http://IP:2379/dashboard
默认用户名为
root
,密码为空。
有很多实用的功能,可以查看 QPS、慢查询、流量查询等。可以帮助我们快速的定位问题。
四、SQL 基本操作
安装好 TiDB 后,便可以在 TiDB 中执行 SQL 语句了。我这里直接使用大家常用的 Navicat 进行操作了。
因为 TiDB 兼容 MySQL,我们可以像操作 MySQL 一样操作 TiDB。
4.1、库操作
1)、查看数据库列表
SHOW DATABASES;
2)、创建数据库
CREATE DATABASE IF NOT EXISTS my_db;
添加 IF NOT EXISTS
可防止发生错误。
3)、切换数据库
USE my_db;
4)、删除数据库
DROP DATABASE my_db;
5)、查看数据库下所有的表
SHOW TABLES FROM my_db;
4.2、表操作
1)、创建表
语法格式:
CREATE TABLE table_name column_name data_type constraint;
创建 sys_user
表
CREATE TABLE sys_user (
id INT(11),
name VARCHAR(255),
birthday DATE
);
2)、删除表
DROP TABLE sys_user;
3)、插入数据
两种方式
INSERT INTO sys_user VALUES(1,'tom','20221008');
INSERT INTO sys_user(id,name) VALUES('2','bob');
4)、查询数据
SELECT \* FROM sys_user;
5)、修改数据
UPDATE sys_user SET birthday='20221009' WHERE id=2;
6)、删除数据
DELETE FROM sys_user WHERE id=2;
4.3、索引操作
1)、普通索引
两种方式
CREATE INDEX sys_user_id ON sys_user (id);
ALTER TABLE sys_user ADD INDEX sys_user_id (id);
2)、唯一索引
两种方式
CREATE UNIQUE INDEX sys_user_unique_id ON sys_user (id);
ALTER TABLE sys_user ADD UNIQUE sys_user_unique_id (id);
3)、查看表内索引
SHOW INDEX FROM sys_user;
4)、删除索引
两种方式
DROP INDEX sys_user_id ON sys_user;
ALTER TABLE sys_user DROP INDEX sys_user_unique_id;
4.4、用户操作
1)、创建用户
创建用户 micromaple
,密码 123456
CREATE USER 'micromaple'@'localhost' IDENTIFIED BY '123456';
2)、授权用户
授权用户 micromaple
可检索数据库 my_db
内的表:
GRANT SELECT ON my_db.\* TO 'micromaple'@'localhost';
授权所有权限:
GRANT ALL PRIVILEGES ON \*.\* TO 'micromaple'@'localhost';
3)、查询权限
SHOW GRANTS for micromaple@localhost;
4)、删除用户
DROP USER 'micromaple'@'localhost';
5)、设置用户远程访问
update mysql.user set host = '%' where user = 'micromaple';
FLUSH PRIVILEGES;
五、SpringBoot 整合
TiDB 对于 JDBC 的支持等级是 Full
。也就是全量支持。
我们只需要引入 Java JDBC 驱动程序即可使用。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
DROP USER 'micromaple'@'localhost';
5)、设置用户远程访问
update mysql.user set host = '%' where user = 'micromaple';
FLUSH PRIVILEGES;
五、SpringBoot 整合
TiDB 对于 JDBC 的支持等级是 Full
。也就是全量支持。
我们只需要引入 Java JDBC 驱动程序即可使用。
[外链图片转存中…(img-bJjfG1ET-1715644441464)]
[外链图片转存中…(img-GiyGDK6t-1715644441464)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!