部署配置相关

DataEase 默认的登录信息

  1. DataEase 成功安装后,默认内置了两个用户:
  2. - 管理员用户为 admin ,密码为 dataease
  3. - 体验用户为 demo ,密码为 dataease

查看 DataEase 相关日志信息

  1. DataEase 的运行目录下有专门存放组件日志的目录(默认路径 /opt/dataease/logs),各个组件的日志分别存放在以各自命名的目录下,如 dataease 目录存放的是 dataease 的运行日志,fe 目录存放的是 doris-fe 的运行日志等。可以通过查看相应的运行日志来定位一些使用中遇到的问题。
  2. 另外,也可以通过 docker logs 命令来查看容器中的一些日志输出,例如:
  3. ```shell
  4. docker logs -n 30 -f dataease
  5. ```

重置 DataEase 安装参数

  1. 以下为重置 DataEase 安装参数的通用方法,该方法涉及到重新安装 DataEase 的过程,耗时相对会长一些,如果只是简单的调整安装参数的话,可以参考具体的调整方案。
  2. 1. 清除存放原有配置参数的相关文件。
  3. ```shell
  4. # dectl - 文件中包含了默认运行目录
  5. rm -f /usr/bin/dectl
  6. # .env - 文件中包含了运行时参数,在默认运行目录 /opt/dataease 下,如有改动,请在相应的目录下查找
  7. rm -rf /opt/dataease/.env
  8. # (可选)如果要比较彻底的删除之前创建的相关文件的话,可以删除整个运行目录(默认为 /opt/dataease)
  9. rm -rf /opt/dataease
  10. ```
  11. 2. 进入 DataEase 安装包中,修改安装包中的 install.conf 文件,改为最新的配置参数。
  12. 3. 重新执行安装脚本 bash install.sh,等待服务启动即可。

修改已安装的 DataEase 配置参数

  1. 第一次安装 DataEase 后,会在运行目录下创建一个 .env 文件(默认路径 /opt/dataease/.env),install.conf 配置文件中的配置项会记录在此。后续的安装和升级操作,不会去修改 .env 文件。
  2. 修改运行端口,请参考[80 端口被占用了,如何修改为其他端口?](#80)
  3. 修改运行目录,请参考[如何迁移已有的运行目录到其他路径上?](#migration)。
  4. 修改 MySQL 相关配置,请参考[如如何修改内置 MySQL 端口?](#mysql-port) 、[在安装完 DataEase 后如何切换外部 MySQL?](#mysql-switch-ext)、 [如何将 DataEase 数据库由外部 MySQL 切换为 内置 MySQL?](#mysql-switch-inn)等

修改 DataEase 访问端口

!!! Warning “” 当默认的访问端口 80 已被占用,如何修改为其它端口?

  1. v1.0.2 及以后的版本,支持配置文件方案管理 DataEase 服务的运行,可以在 DataEase 运行目录下找到 .env 文件((默认路径 /opt/dataease/.env),修改文件里的 DE_PORT,保存后执行 dectl reload 即可。
  2. v1.0.2 以前的版本,可以登录到 DataEase 服务器上,找到 .env 文件(默认路径 /opt/dataease/.env),把 dataease 的运行端口 80 端口改为其他端口,然后执行 dectl reload 即可。

迁移运行目录

  1. 1. 修改 /usr/bin/dectl,将 DE_BASE 改为新的目标路径,如: /home/test
  2. 2. 将原运行目录迁移到新的目标路径下
  3. ```shell
  4. # 假设源运行目录为 /opt,新目标路径为 /home/test
  5. mv /opt/dataease /home/test/
  6. ```
  7. 3. 修改 .env 配置文件。源运行目录迁移到新路径下之后,修改该路径下 dataease/.env 文件,将 DE_BASE 改为新的目标路径,如: /home/test
  8. 4. 重启 DataEase 服务
  9. ```shell
  10. service dataease restart
  11. ```

修改运行环境 Docker 网段

  1. **从 v1.4.0 版本开始,DataEase 支持 docker 运行网段的修改。**
  2. 1. 停止 DataEase 服务: service dataease stop
  3. 2. 修改运行目录 /opt/dataease 目录下的 docker-compose.yml ,将默认的 172.19.0.0/16 172.19.0.1 改为其他网段,如 172.33.0.0/16 172.33.0.1
  4. 3. 修改 /opt/dataease 目录下的 docker-compose-doris.yml,把里面 172.19.0.198 172.19.0.199 改为第一步设置的网段的ip,如 172.33.0.198 172.33.0.199
  5. 4. 重启 DataEase 服务:service dataease restart

非 root 用户能否安装 DataEase

  1. 可以支持非 root sudoer 用户,在执行安装脚本的时候,加上 sudo 执行即可,例如:
  2. ```shell
  3. sudo bash install.sh
  4. ```

如何与 MeterSphere 安装在同一台服务器上?

!!! Warning “注意” DataEase 与 MeterSphere 安装在同一台服务器上时,有可能会发生以下冲突:

  1. - docker 网段冲突
  2. - mysql 容器名冲突
  3. 由于 MeterSphere 在运行时并没有指定运行网段,所以不一定会产生 docker 网段冲突,如没有网段冲突,则可以直接跳到第三步执行。
  4. 1. 修改 MeterSphere 的网段
  5. 修改 /opt/metersphere/docker-compose-base.yml,网络部分定义如下:
  6. ```yml
  7. networks:
  8. ms-network:
  9. driver: bridge
  10. ipam:
  11. driver: default
  12. config:
  13. - subnet: 172.20.0.0/16
  14. gateway: 172.20.0.1
  15. ```
  16. 2. 重启 MeterSphere 服务
  17. ```shell
  18. # uninstall 可以在停止 MeterSphere 服务的同时,删除其对应的 docker network
  19. msctl uninstall
  20. # reload 会重新启动 MeterSphere 服务,并按照第一步的设置创建新的 docker network
  21. msctl reload
  22. ```
  23. 3. 修改 DataEase MySQL 容器相关配置
  24. 修改 /opt/dataease/docker-compose.yml,将 dataease depends_on 里的 mysql 改为 mysql-de,例如:
  25. ```yml
  26. dataease:
  27. image: registry.cn-qingdao.aliyuncs.com/dataease/dataease:v1.0.0
  28. container_name: dataease
  29. ports:
  30. - 80:8081
  31. mem_limit: 4096m
  32. volumes:
  33. - dataease-conf:/opt/dataease/conf
  34. - dataease-logs:/opt/dataease/logs
  35. - dataease-plugins:/opt/dataease/plugins/thirdpart
  36. - dataease-kettle-data:/opt/dataease/data/kettle
  37. depends_on:
  38. mysql-de:
  39. condition: service_healthy
  40. ```
  41. 修改 /opt/dataease/docker-compose-mysql.yml,将 mysql 相关的容器名改为 mysql-de,将 mysql 的运行端口改为 53306,例如:
  42. ```yml
  43. mysql-de:
  44. image: registry.cn-qingdao.aliyuncs.com/dataease/mysql:5.7.25
  45. container_name: mysql-de
  46. healthcheck:
  47. test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
  48. interval: 5s
  49. timeout: 3s
  50. retries: 10
  51. env_file:
  52. - ./conf/mysql.env
  53. ports:
  54. - 53306:3306
  55. volumes:
  56. - /opt/dataease/conf/my.cnf:/etc/mysql/conf.d/my.cnf
  57. - /opt/dataease/bin/mysql:/docker-entrypoint-initdb.d/
  58. - dataease-mysql-data:/var/lib/mysql
  59. networks:
  60. - dataease-network
  61. ```
  62. 修改 /opt/dataease/conf/dataease.properties,将数据库 URL 信息改为如下:
  63. ```properties
  64. spring.datasource.url=jdbc:mysql://mysql-de:3306/dataease?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
  65. ```
  66. 4. 修改 DataEase 服务启动端口(可选)
  67. 修改 /opt/dataease/docker-compose.yml,将 dataease 的运行端口改为如8088(注意,后端容器运行端口8081不能修改):
  68. ```yml
  69. dataease:
  70. image: registry.cn-qingdao.aliyuncs.com/dataease/dataease:v1.0.0
  71. container_name: dataease
  72. ports:
  73. - 8088:8081
  74. ```
  75. 5. 启动 DataEase 服务
  76. ```shell
  77. dectl reload
  78. ```

安装启动异常

一键安装时,提示语法错误

!!! Warning “注意” 一键安装脚本会与 Github 进行连接,从 Github 上获取 DataEase 最新的版本信息以及最新的安装包。由于国内网络与 github 连接存在不稳定,所以有可能会导致无法获取安装所需的相关信息。 遇到这种情况的话,可以多尝试执行几次安装脚本,或者也可以到 https://github.com/dataease/dataease/releases 上下载 DataEase 的离线安装包安装。

安装报错

安装时提示 “Pool overlaps with other one on this address space”

  1. 可以参考[如何修改 DataEase 运行的 docker 网段?](#modify-address-space)

网段冲突

无法通过一键安装脚本在线安装 docker 和 docker-compose

!!! Warning “注意” 在线安装脚本使用的下载源为境外源,可能会存在网络不稳定,或者网速慢的情况。

  1. 可以在百度网盘上下载 docker 离线安装包进行安装,链接: https://pan.baidu.com/s/1WUbObtcPgPqpaNK6TGCOrA 提取码: gbut
  2. 解压后执行安装包里的安装脚本即可: bash install-docker.sh

服务无法完全启动,查看 dataease 日志,发现 docker 访问出现 Permission denied。

  1. 这种情况一般是由于 selinux 导致的,可以临时关闭 selinux 试试:
  2. ```shell
  3. setenforce 0
  4. ```
  5. 然后重启 DataEase 服务:
  6. ```shell
  7. service dataease restart
  8. ```

MySQL 相关问题

如何修改内置 MySQL 端口

  1. 1. 修改配置文件
  2. **1.4 版本之前的版本**,修改运行目录下 /opt/dataease/docker-compose-mysql.yml 文件,将 MySQL 外部运行端口参数 ${DE_MYSQL_PORT} 改为新端口,如 3307:
  3. ```yml
  4. ports:
  5. - 3307:3306
  6. ```
  7. **1.4 版本及之后的版本**,修改运行目录下 /opt/dataease/.env 文件,将 DE_MYSQL_PORT 改为新端口,如 3307:
  8. ```properties
  9. DE_MYSQL_PORT=3307
  10. ```
  11. 2. 重启 DataEase 服务: service dataease restart

如何修改内置 MySQL 容器名

  1. 1. 修改运行目录下 /opt/dataease/docker-compose.yml 文件,将 dataease depends_on 里的 mysql 改为 mysql-de,例如:
  2. ```yml
  3. dataease:
  4. image: registry.cn-qingdao.aliyuncs.com/dataease/dataease:v1.0.0
  5. container_name: dataease
  6. ports:
  7. - 80:8081
  8. mem_limit: 4096m
  9. volumes:
  10. - dataease-conf:/opt/dataease/conf
  11. - dataease-logs:/opt/dataease/logs
  12. - dataease-plugins:/opt/dataease/plugins/thirdpart
  13. - dataease-kettle-data:/opt/dataease/data/kettle
  14. depends_on:
  15. mysql-de:
  16. condition: service_healthy
  17. ```
  18. 2. 修改 /opt/dataease/docker-compose-mysql.yml,将 mysql 相关的容器名改为 mysql-de,例如:
  19. ```yml
  20. mysql-de:
  21. image: registry.cn-qingdao.aliyuncs.com/dataease/mysql:5.7.25
  22. container_name: mysql-de
  23. healthcheck:
  24. test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
  25. interval: 5s
  26. timeout: 3s
  27. retries: 10
  28. env_file:
  29. - ./conf/mysql.env
  30. ports:
  31. - 53306:3306
  32. volumes:
  33. - /opt/dataease/conf/my.cnf:/etc/mysql/conf.d/my.cnf
  34. - /opt/dataease/bin/mysql:/docker-entrypoint-initdb.d/
  35. - dataease-mysql-data:/var/lib/mysql
  36. networks:
  37. - dataease-network
  38. ```
  39. 3. 修改 /opt/dataease/conf/dataease.properties,将数据库 URL 信息改为如下:
  40. ```properties
  41. spring.datasource.url=jdbc:mysql://mysql-de:3306/dataease?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
  42. ```
  43. 4. 重启 DataEase 服务: service dataease restart

修改已安装的 DataEase 链接外部 MySQL

!!! Warning “外部 MySQL 配置参数要求” 特别注意,使用外部 MySQL 时,需要注意几个地方:

  1. - lower_case_table_names=1
  2. - group_concat_max_len=1024000
  3. - default-character-set=utf8
  4. - innodb_large_prefix=on
  5. 1. 修改运行目录下 .env (默认路径 /opt/dataease/.env) 文件中 MySQL 的相关配置,包括 DE_EXTERNAL_MYSQLDE_MYSQL_HOSTDE_MYSQL_PORTDE_MYSQL_DBDE_MYSQL_USERDE_MYSQL_PASSWORDDE_EXTERNAL_MYSQL=true
  6. 2. 修改 dataease.properties (默认路径 /opt/dataease/conf/dataease.properties),将 spring.datasource 开头的几个参数里,MySQL 的配置参数进行相应的修改,包括:数据库地址、数据库端口、数据库库名、数据库用户名、数据库密码
  7. 3. 内置 MySQL 切换为外置 MySQL,修改运行目录下 /opt/dataease/docker-compose.yml 文件,将其中 depends_on 相关设置删除:
  8. ```yml
  9. depends_on:
  10. mysql:
  11. condition: service_healthy
  12. ```
  13. 4. 重启 DataEase 服务: service dataease restart

DataEase 数据库由外部 MySQL 切换为内置MySQL

  1. 1. 修改运行目录下 .env (默认路径 /opt/dataease/.env) 文件中 MySQL 的相关配置,包括 DE_EXTERNAL_MYSQLDE_MYSQL_HOSTDE_MYSQL_PORTDE_MYSQL_DBDE_MYSQL_USERDE_MYSQL_PASSWORDDE_EXTERNAL_MYSQL=false
  2. 2. 修改 dataease.properties (默认路径 /opt/dataease/conf/dataease.properties),将 spring.datasource 开头的几个参数里,MySQL 的配置参数进行相应的修改,包括:数据库地址、数据库端口、数据库库名、数据库用户名、数据库密码
  3. 3. 修改运行目录下 /opt/dataease/docker-compose.yml 文件,为 dataesae 服务加上 depends_on 相关设置,类似(镜像版本注意按实际情况替换):
  4. ```yml
  5. version: '2.1'
  6. services:
  7. dataease:
  8. image: registry.cn-qingdao.aliyuncs.com/dataease/dataease:v1.3.0
  9. container_name: dataease
  10. ports:
  11. - ${DE_PORT}:8081
  12. mem_limit: 4096m
  13. volumes:
  14. - ${DE_BASE}/dataease/conf:/opt/dataease/conf
  15. - ${DE_BASE}/dataease/logs:/opt/dataease/logs
  16. - ${DE_BASE}/dataease/plugins/thirdpart:/opt/dataease/plugins/thirdpart
  17. - ${DE_BASE}/dataease/data/kettle:/opt/dataease/data/kettle
  18. depends_on:
  19. mysql:
  20. condition: service_healthy
  21. networks:
  22. - dataease-network
  23. networks:
  24. dataease-network:
  25. driver: bridge
  26. ipam:
  27. driver: default
  28. config:
  29. - subnet: 172.19.0.0/16
  30. gateway: 172.19.0.1
  31. ```
  32. 4. 重启 DataEase 服务: service dataease restart

使用 DataEase 时提示 “Row 30153 was cut by GROUP_CONCAT()” 的错误

  1. **当出现类似下图的错误时,可以通过任选以下方式之一处理:**
  2. 1. 修改 my.cnf 文件的 group_concat_max_len 参数,如:group_concat_max_len=1024000,然后重启 MySQL 服务
  3. 2. 进入 MySQL,执行 SET GLOBAL group_concat_max_len=1024000; 临时修改该参数的值

mysql-concat

安装 DataEase 后内置 MySQL 的配置参数未生效

!!! Warning “注意” 出于安全考虑,当 MySQL 配置文件 my.cnf 权限过高时,会被 MySQL 忽略加载。请确认配置文件目录(默认路径 /opt/dataease/conf)下的配置文件的访问权限为 644。

  1. 可以通过命令修改文件权限:
  2. ```shell
  3. chmod 644 /opt/dataease/conf/*
  4. ```
  5. 修改文件属性后,重启 DataEase 服务: service dataease restart

使用 DataEase 时,提示”Table ‘datashowdb.V_AUTH_MODEL’ doesn’t exist” 的错误

  1. 出现该问题一般是由于 DataEase 使用的外部 MySQL 配置参数 lower_case_table_names 设置为 0 了。
  2. 需要将该参数设置为 lower_case_table_names=1,重启 MySQL 服务即可。

大小写

内置演示数据无效怎么办

  1. 在使用外部 MySQL,或者修改了内置 MySQL 容器名后,会出现内置演示数据无效的情况,如示例仪表板无法展示等待。可以登录 DataEase 控制台,进入到【数据源】页面,选择 "demo" 数据源,点击下方的编辑按钮,将 demo 数据源的相关连接信息按实际情况进行设置,校验通过后,保存即可。

使用 DataEase 的时候提示 “illegal mix of collations (latin1_bin implicit) and (utf8_general_ci coercible)” 的错误

  1. 该问题是由于字符集编码不同导致,可以参考下图的配置
  2. 1. 更改 MySQL my.cnf,把 client server 的字符集改为 utf8
  3. 2. 修改 collation 编码
  4. ```mysql
  5. set collation_database=utf8_general_ci;
  6. set collation_connection=utf8_general_ci;
  7. set collation_server=utf8_general_ci;
  8. ```

字符集