Doris部署&连接

简介

Doris 是一款用于实时分析,大数据场景的开源数据库,本文介绍如何在服务器上部署 Doris

部署

首先,要去官网下载程序包,地址:https://doris.apache.org/download

下载需要安装的版本

(1)上传服务器

将下载下来的程序包,上传到服务器,解压

bash 复制代码
tar -xvf apache-doris-3.1.4-bin-x64-noavx2.tar.gz

如下

(2)启动准备

在启动前,需要设置一些系统配置,避免启动出现问题

bash 复制代码
# 1. 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

# 2. 关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0

# 3. 加大文件句柄(必须)
echo "* soft nofile 2048000" >> /etc/security/limits.conf
echo "* hard nofile 2048000" >> /etc/security/limits.conf

# 4. 加大虚拟内存(必须)
echo "vm.max_map_count=2048000" >> /etc/sysctl.conf
sysctl -p

如下

另外,Doris 是有两个服务,一个 be(backend,后端)、一个 fe(frontend,前端)

启动后端服务,还需要关闭系统的 swap,并调高系统的 ulimit(允许一个程序同时打开的最大文件数)

【关闭系统 swap】

bash 复制代码
vi /etc/fstab

注释下面这行配置,保存退出

敲下面的命令,关闭 swap

bash 复制代码
# 关闭 swap,上面改配置是为了永久生效,临时关闭敲只敲这行命令也是可以的
swapoff -a

# 查看内存情况
free -h

查看内存情况,Swap 这行都是 0,说明 Swap 已关闭

【调高 ulimit】

bash 复制代码
vi /etc/security/limits.conf

文件末尾添加下面这四行配置

bash 复制代码
* soft nofile 655350
* hard nofile 655350
* soft nproc 655350
* hard nproc 655350

如下,保存退出

ulimit -n 出现配置后的数量,表示配置完成

(3)安装JDK

Doris 需要有 JDK 环境,我装的 doris-3.1.4 版本需要有 JDK-17 环境(必须 17),可参考下面这篇博客装一个

Oracle 官网不知道什么时候更新了,Java 在下面这个菜单里

安装完,敲 java -version 能查看到版本信息,表示安装完成

(4)启动

敲下面的命令,启动 Dorsi 前后端服务,端口分别是 9030、9050

bash 复制代码
sh fe/bin/start_fe.sh --daemon
sh be/bin/start_be.sh --daemon

查看一下端口情况,每毛病

连接

连接 Doris,可以像连接 MySQL 一样,只是端口不一样

Datagrip

如下,端口用 9030,用户是 root,密码空着

命令行

如果本地有 MySQL 环境,可以敲下面的命令行连接

bash 复制代码
mysql -u [用户] -h [主机] -P [端口,注意前面是大写的P,小写的p是密码]

如下

网页

前面说了 Doris 有前端服务,可以直接在页面上输入 http://[主机]:8030/ 访问,如下

用户名是 root,密码空着

可以在页面上访问数据库数据,执行语句

使用

简单执行一些语句,创建一个数据库,一张数据库,插入一条数据,感受一些 Doris 的数据库语法

sql 复制代码
-- 1. 创建数据库
CREATE DATABASE test_doris;

-- 2. 切换到数据库
USE test_doris;

-- 3. 正确建表语句(补全PROPERTIES,修正字段名)
CREATE TABLE t1 (
    id INT,
    name STRING
)
DUPLICATE KEY(id)
DISTRIBUTED BY HASH(id) BUCKETS 1
PROPERTIES (
    "replication_allocation" = "tag.location.default: 1"
);

-- 4. 插入数据
INSERT INTO t1 VALUES (1, 'doris');

-- 5. 查询验证
SELECT * FROM t1;

还行,和 MySQL 用起来差不多

服务注册

最后把 Doris 服务注册到系统服务中,使用 systemctl 命令来管理

【Doris 前端服务】

bash 复制代码
vim /etc/systemd/system/doris-fe.service

粘贴以下内容,JDK、Doris 路径更换成自己的,保存退出

bash 复制代码
[Unit]
Description=Doris FE Service
After=network.target

[Service]
Type=forking
User=root
Group=root
Environment="JAVA_HOME=/usr/local/dev/jdk-17.0.17"
ExecStart=/usr/local/dev/apache-doris-3.1.4/fe/bin/start_fe.sh --daemon
ExecStop=/usr/local/dev/apache-doris-3.1.4/fe/bin/stop_fe.sh
Restart=on-failure
LimitNOFILE=655350
LimitNPROC=655350

[Install]
WantedBy=multi-user.target

【Doris 后端服务】

bash 复制代码
vim /etc/systemd/system/doris-be.service

粘贴以下内容,JDK、Doris 路径更换成自己的,保存退出

bash 复制代码
[Unit]
Description=Doris BE Service
After=network.target doris-fe.service

[Service]
Type=forking
User=root
Group=root
Environment="JAVA_HOME=/usr/local/dev/jdk-17.0.17"
ExecStart=/usr/local/dev/apache-doris-3.1.4/be/bin/start_be.sh --daemon
ExecStop=/usr/local/dev/apache-doris-3.1.4/be/bin/stop_be.sh
Restart=on-failure
LimitNOFILE=655350
LimitNPROC=655350

[Install]
WantedBy=multi-user.target

刷新服务

bash 复制代码
systemctl daemon-reload

接下来就可以使用 systemctl 命令启停服务了,并且可以设置开机自启动或设置重启策略等等

bash 复制代码
systemctl start doris-be
systemctl start doris-fe

如下

相关推荐
吴老弟i3 分钟前
Mac 本地安装 MySQL 学习指南
数据库
天天爱吃肉821810 分钟前
【工程师硬件学习笔记:串口‑总线体系与三电试验室异构系统集成深度实战】
大数据·笔记·python·嵌入式硬件·学习·汽车
starzy199012 分钟前
Spark 核心之二次排序、分组取 TopN 优化分析
大数据·分布式·spark
XLYcmy27 分钟前
pdf论文处理:CSV输出模式
数据库·python·pycharm·pdf·论文·csv·dify
MC皮蛋侠客28 分钟前
Redis 系列(十一):高可用(二)——Redis Cluster 集群
数据库·redis·bootstrap
zhanghaha131429 分钟前
Python进阶教程:5_XML 解析 —— 新手完全指南
java·前端·数据库
a11229982134 分钟前
GEO工具怎么选?电商、本地生活与B2B行业的选型差异
大数据·人工智能·生活
2601_9648402710 小时前
4G云门禁普惠化技术实践:基于边缘计算破解成本、隐私、部署三大行业瓶颈
大数据·人工智能·边缘计算
祈禾10 小时前
Redis三大缓存问题与分布式锁
运维·数据库·redis·笔记·分布式·缓存
具身智能进化论10 小时前
国产协作机器人品牌如何选择,企业长期使用更看重什么
大数据·人工智能·机器人·工厂方法模式