# Doris
# 安装下载
1、查看cpu是否支持 avx2
如果有输出内容说明支持,如果什么都没有就是不支持
grep avx2 /proc/cpuinfo
2、下载安装包
DANGER
要有java环境,建议手动安装配置的yum安装的有的时候有问题
3、配置一下handlers的最大值
vim /etc/security/limits.conf
把下面两行内容写到文档里
* soft nofile 65536
* hard nofile 65536
2
修改打开最大数量,不修改be可能会启动错误
sysctl -w vm.max_map_count=2000000
ulimit -n 65536
2
4、解压安装包
解压如果报错,可以把tar中的z参数去掉,在试下
tar -zxvf 安装包
5、修改解压后的fe和be配置文件
vim fe/conf/fe.conf
找到并修改以下内容,这个ip改成你机器的ip
priority_networks = 127.0.0.0/24
vim be/conf/be.conf
fe和be一定要在同一个网段下
priority_networks = 127.0.0.0/24
6、添加doris环境变量
vim /etc/profile
添加如下内容
export DORIS_HOME=你自己的doris地址,安装包加压后的
export PATH=$PATH:$DORIS_HOME/fe/bin:$DORIS_HOME/be/bin
2
source /etc/profile
6、启动be和fe
daemon参数是后台启动,第一次启动不建议后台启动先前台启动,没问题了在后台启动
start_fe.sh --daemon
start_be.sh --daemon
2
如果启动没问题
7、把be注册进fe中
第一次是默认没有密码的
mysql -h 127.0.0.1 -P 9030 -uroot
这里是你 BE 的 IP 地址,和你在 be.conf 里的 priority_networks 匹配
添加be
ALTER SYSTEM ADD BACKEND "127.0.0.1:9050";
删除be
ALTER SYSTEM DROP BACKEND "node1:9050";
或
ALTER SYSTEM DROPP BACKEND "node1:9050";
2
3
查看fe节点信息
SHOW BACKENDS\G;
这里只部署了一个节点
如果 IsMaster、Join 和 Alive 三列均为true,则表示节点正常
查看be节点信息
SHOW BACKENDS\G;
这里添加了两个be节点,有一个连接成功,一个连接失败,连接失败的信息可以看errmsg
8、全部完成后使用浏览器访问fe ui
http://你自己的虚拟机ip:DORIS的端口(默认为8030)
注意: 在没有添加BE节点采用navicat、datagrip等工具进行链接会报 errCode = 2, detailMessage = There is no scanNode Backend available… and 1 duplicate reports 错误。这时候需要添加BE节点到集群;切记这时候命令行是可正常操作和连接的。
同时可以使用navicat工具进行连接测试,如果fe连接be不正常,使用naviat工具是连接不上的
9、创建数据库,数据表
create database demo;
use demo;
CREATE TABLE IF NOT EXISTS demo.example_tbl
(
`user_id` LARGEINT NOT NULL COMMENT "用户id",
`date` DATE NOT NULL COMMENT "数据灌入日期时间",
`city` VARCHAR(20) COMMENT "用户所在城市",
`age` SMALLINT COMMENT "用户年龄",
`sex` TINYINT COMMENT "用户性别",
`last_visit_date` DATETIME REPLACE DEFAULT "1970-01-01 00:00:00" COMMENT "用户最后一次访问时间",
`cost` BIGINT SUM DEFAULT "0" COMMENT "用户总消费",
`max_dwell_time` INT MAX DEFAULT "0" COMMENT "用户最大停留时间",
`min_dwell_time` INT MIN DEFAULT "99999" COMMENT "用户最小停留时间"
)
AGGREGATE KEY(`user_id`, `date`, `city`, `age`, `sex`)
DISTRIBUTED BY HASH(`user_id`) BUCKETS 1
PROPERTIES (
"replication_allocation" = "tag.location.default: 1"
);
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
10、修改数据库密码
ALTER USER root IDENTIFIED BY "12345";