一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第16天,点击查看活动详情。
注意事项:
| DROP BACKEND 会直接删除该 BE,并且其上的数据将不能再恢复!!!所以我们强烈不推荐使用 DROP BACKEND 这种方式删除 BE 节点。当你使用这个语句时,会有对应的防误操作提示。 |
|---|
DECOMMISSION 语句如下:
| ALTER SYSTEM DECOMMISSION BACKEND "be_host:be_heartbeat_service_port" ; |
|---|
DECOMMISSION 命令说明:
- 该命令用于安全删除 BE 节点。命令下发后,Doris 会尝试将该 BE 上的数据向其他 BE 节点迁移,当所有数据都迁移完成后,Doris 会自动删除该节点。
- 该命令是一个异步操作。执行后,可以通过 SHOW PROC '/backends'; 看到该 BE 节点的 isDecommission 状态为 true。表示该节点正在进行下线。
- 该命令不一定执行成功。比如剩余 BE 存储空间不足以容纳下线 BE 上的数据,或者剩余机器数量不满足最小副本数时,该命令都无法完成,并且 BE 会一直处于 isDecommission 为 true 的状态。
- DECOMMISSION 的进度,可以通过 SHOW PROC '/backends'; 中的 TabletNum 查看,如果正在进行,TabletNum 将不断减少。
- 该操作可以通过: CANCEL DECOMMISSION BACKEND "be_host:be_heartbeat_service_port"; 命令取消。取消后,该 BE 上的数据将维持当前剩余的数据量。后续 Doris 重新进行负载均衡
Broker 扩容缩容
Broker 实例的数量没有硬性要求。通常每台物理机部署一个即可。Broker 的添加和删除可以通过以下命令完成:
| ALTER SYSTEM ADD BROKER broker_name "broker_host:broker_ipc_port" ; ALTER SYSTEM DROP BROKER broker_name "broker_host:broker_ipc_port" ; ALTER SYSTEM DROP ALL BROKER broker_name ; |
|---|
Broker 是无状态的进程,可以随意启停。当然,停止后,正在其上运行的作业会失败,重试即可。
Doris实践篇
Doris 采用 MySQL 协议进行通信,用户可通过 MySQL client 或者 MySQL JDBC连接到 Doris 集群。选择 MySQL client 版本时建议采用5.1 之后的版本,因为 5.1 之前不能支持长度超过 16 个字符的用户名。
创建用户
- Root 用户登录与密码修改
Doris 内置 root 和 admin 用户,密码默认都为空。启动完 Doris 程序之后,可以通过 root 或 admin 用户连接到 Doris 集群。 使用下面命令即可登录 Doris:
| mysql -h node1 -P9030 -uroot |
|---|
登陆后,可以通过以下命令修改 root 密码
| SET PASSWORD FOR 'root' = PASSWORD ( 'your_password' ); |
|---|
- 创建新用户
通过下面的命令创建一个普通用户
| CREATE USER 'test' IDENTIFIED BY 'test_passwd' ; |
|---|
后续登录时就可以通过下列连接命令登录。
| mysql -h node1 -P9030 -utest -ptest_passwd |
|---|
注意:
| 新创建的普通用户默认没有任何权限。权限授予可以参考后面的权限授予。 |
|---|