此文档是笔记形式,没有具体整顿,仅供参考, 目前社区版本是 0.14.0,百度预编译公布版本是 0.14.13
doris 装置部署及各种 load 形式
装置部署
1. 下载 Doris 的源码包及编译
编译倡议应用官网提供的 docker 镜像进行编译
docker pull apache/incubator-doris:build-env-1.3.1
具体能够参考官网:doris 编译
cd /opt
wget https://dist.apache.org/repos/dist/dev/incubator/doris/0.12.0-rc03/apache-doris-0.12.
0-incubating-src.tar.gz
解压装置
tar -zxvf apache-doris-0.12.0-incubating-src.tar.gz
cd apache-doris-0.12.0-incubating-src
sh build.sh
在
2. 配置该节点的 FE(Leader)
cd output/fe
mkdir doris-meta
mkdir log
sh bin/start_fe.sh --daemon
运行之后检查一下,是否有 doris 的进行,监听的端口,日志信息等等
vi log/fe.log
3. 配置 BE
cd output/be
mkdir storage
mkdir log
4. 散发到所有须要装置的 BE 节点 scp -r output/be root@主机名:/
5. 装置 mysql 客户端
1,从官网下载安装包(在 Centos7 上要下载 RH Linux 7 的安装包)
https://dev.mysql.com/downloa…
mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
2,清理环境
2.1 查看零碎是否曾经装置了 mysql 数据库
rpm -qa | grep mysql
2.2 将查问出的文件一一删除,如
yum remove mysql-community-common-5.7.20-1.el6.x86_64
2.3 删除 mysql 的配置文件
find / -name mysql
2.4 删除配置文件
rm -rf /var/lib/mysql
2.5 删除 MariaDB 文件
rpm -pa | grep mariadb
删除查找出的相干文件和目录,如
yum -y remove mariadb-libs.x86_64
3,装置
3.1 解压
tar -xf mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
3.2 装置
yum install mysql-community-{client,common,devel,embedded,libs,server}-*
期待装置胜利!
4,配置
4.1 启动 mysqld 服务,并设为开机主动启动。命令:
systemctl start mysqld.service // 这是 centos7 的命令
systemctl enable mysqld.service
4.2 通过如下命令能够在日志文件中找出明码:
grep “password” /var/log/mysqld.log
4.3 依照日志文件中的明码,进入数据库
mysql -uroot -p
4.4 设置明码(留神 Mysql8 明码设置规定必须是大小写字母 + 特殊符号 + 数字的类型)
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new password’;
6. 近程连贯 doris 服务
mysql -uroot -h 172.22.197.72 -P 9030
7. 增加所有 BE
ALTER SYSTEM ADD BACKEND "172.22.197.73:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.74:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.75:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.76:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.77:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.78:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.79:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.80:9050";
ALTER SYSTEM ADD BACKEND "172.22.197.81:9050";
#删除 BE 节点,数据会同步到其余节点
ALTER SYSTEM DECOMMISSION BACKEND "172.22.197.73:9050";
#删除 BE 节点,该节点数据间接删除
ALTER SYSTEM DECOMMISSION BACKEND "172.22.197.73:9050";
8. 启动 BE 节点
sh bin/start-be.sh –daemon
9.ui 界面查看是否增加进来
http://172.22.197.72:8030/sys…
10. 增加 brokername
ALTER SYSTEM ADD BROKER broker_name01 "test-pro-doris-01:8000";
#删除
ALTER SYSTEM DROP BROKER broker_name "test-pro-doris-01:8000";
11.ui 界面查看是否增加胜利
http://172.22.197.72:8030/sys…
doris ODBC load
1. 在线装置 MYSQL ODBC 驱动
yum -y install unixODBC
yum -y install mysql-connector-odbc
遇到问题:yum -y install mysql-connector-odbc 装置不胜利
解决办法:下载 jar mysql-connector-odbc-8.0.11-1.el7.x86_64.rpm 进行本地装置
yum localinstall mysql-connector-odbc-8.0.11-1.el7.x86_64.rpm
2. 配置 Mysql 驱动
cat /etc/odbc.ini #增加如下信息
/************************************************
[mysql-hr]
Driver = /usr/lib64/libmyodbc8a.so #留神驱动程序的抉择
Description = MyODBC 5 Driver
SERVER = 192.168.235.140 #要连贯的数据库信息
PORT = 3306
USER = root
Password = root
Database = hr
OPTION = 3
charset=UTF8
3. 测试连贯
# isql mysql-hr test root password -v ## 语法:isql 数据源名称 用户名 明码 选项
+---------------------------------------+
| Connected! |
| |password
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>show database;
测试胜利
4. 配置 FE
vim /doris-0.13.11/output/be/conf/fe.conf
enable_odbc_table = true 必配项
5. 配置 BE(所有 BE 节点都须要配置)
vim /doris-0.13.11/output/be/conf/odbcinst.ini 增加
[MySQL Driver]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc8a.so
FileUsage = 1
阐明:driver ODBC 装置的目录
6. 测试 ODBC on doris
举荐形式:
##### 1. 通过 ODBC_Resource 来创立 ODBC 表面
CREATE EXTERNAL RESOURCE `mysql_odbc_doris`
PROPERTIES (
"type" = "odbc_catalog",
"host" = "172.22.193.65",
"port" = "3306",
"user" = "root",
"password" = "password",
"database" = "posresult",
"odbc_type" = "mysql",
"driver" = "MySQL Driver"
);
阐明:
host 须要连贯的数据库 ip(映射库的 ip)port 端口
user 用户名
password 明码
database 数据库
odbc_type:mysql(反对 oracle, mysql, postgresql)
driver:ODBC 表面的 Driver 名,该名字须要和 be/conf/odbcinst.ini 中的 Driver 名统一
#####2. 创立 DORIS 内部表映射 MYSQL 表
CREATE EXTERNAL TABLE `test_mysql` (`id` varchar(32) NOT NULL COMMENT 'ID',
`table_bill_id` varchar(36) DEFAULT NULL COMMENT '菜单编号',
`shop_id` varchar(32) DEFAULT NULL COMMENT '门店 ID',
`dish_type` int(11) DEFAULT NULL COMMENT '类型:1- 菜品 2- 火锅 3- 底料',
`dish_id` varchar(50) DEFAULT NULL COMMENT '菜品 ID(此处为菜品 ID,不是菜品关联 ID)',
`dish_name` varchar(100) DEFAULT NULL COMMENT '菜品名称',
`standard_id` varchar(32) DEFAULT NULL COMMENT '规格编码',
`standard_code` varchar(100) DEFAULT NULL COMMENT '规格 ID',
`dish_price` varchar(16) DEFAULT NULL COMMENT '菜品单价',
`served_quantity` int(11) DEFAULT NULL COMMENT '已上数量',
`order_time` varchar(50) DEFAULT NULL COMMENT '点菜工夫',
`dish_abnormal_status` varchar(20) DEFAULT NULL COMMENT '[A]菜品异样状态',
`ts` varchar(20) DEFAULT NULL COMMENT 'POS 订单创立工夫',
`taste_type_id` varchar(32) DEFAULT NULL,
`taste_name` varchar(50) DEFAULT NULL
) ENGINE=ODBC
COMMENT "ODBC"
PROPERTIES (
"odbc_catalog_resource" = "mysql_odbc_doris_test",
"database" = "posresult",
"table" = "t_pro_dish_list_detail"
);
阐明:
odbc_catalog_resource 创立的 Resource 名称
database 表面数据库数据库名称
table 表面数据库表名
#####3. 执行 DDL 操作是否插入胜利
selct * from test_mysql
7. 常见谬误
1. 呈现谬误:(10001 NOT ALIVE,10002 NOT ALIVE)
起因:编译 doris 的时候没有带 WITH_MYSQL,Mysql_Odbc 须要 8.x, 如果采纳 5.x 会呈现下面谬误,切换版本到 8.X
编译如果带 WITH_MYSQL, 能够采纳 5.x 版本