当前位置: 代码迷 >> 综合 >> CMDBuild 3.1.1 安装常见问题
  详细解决方案

CMDBuild 3.1.1 安装常见问题

热度:48   发布时间:2024-01-25 15:02:05.0

网上大部分都是,cmdbuild 2.4版本的安装,3.1.1安装差异较大,头疼了一天多,现记录安装过程中所出现的问题。
cmdbuild 官方下载链接
CMDBuild 3.1.1 官方部署文档

建议用官方提供的cmdbuild-3.1.1.sh 脚本,该脚本会提供安装界面,自动配置tomcat,和导入数据库

部署环境

  • Red Hat 7.4
  • PostgreSQL 9.6     ( 9.5 to 10.7都可以,推荐9.6,毕竟10以后要安装多些东西)
  • JDK8
  • Tomcat8.534          (cmdbuild-3.1.1.sh 脚本安装的不需要自己安装tomcat,tomcat8.55也是可以的)

安装方式1 CMDBuild installation via GUI (Linux only)

注意CMDBuild.3.1.1的tomcat 不能用root 用户启动,所以不要安装在root 目录下??
注意执行脚本的linux 必须有UI 界面(没有界面的,要么先给linux 安装界面,要么就用war 方式手动安装)
下载cmdbuild-3.1.1.sh 脚本即可 cmdbuild-3.1.1.sh 官方下载地址

  • 执行脚本 
./cmdbuild-3.1.1.sh
  • 出现GUI界面,配置数据源以及用户密码

    GUI
  • 配置完后,点击test config 按钮

    测试通过点击install 安装,安装完再点击启动


  • 启动成功,访问http://你的IP:8081/cmdbuild/ ,默认的用户密码是admin 

如果安装成功,启动失败
执行tomcat/bin目录下的shutdown.sh 脚本 停止tomcat  

cd /tomcat/bin
./shutdown.sh 
  • 检查端口是否被占用
  • .执行cmdbuild-3.1.1.sh  脚本是root ,所以启动tomcat 也是root, 切换其他用户启动tomcat即可

如果数据库链接失败,那么应该确认安装的PostgreSQL 的配置文件/var/lib/pgsql/9.6/data/pg_hba.conf
jdbc连接需要将ident 改为trust,不然就会链接失败
localhost 访问数据库的用户密码加密格式是否有配置,被注释了放开注释,将ident 改成trust
修改后,重启postgresql

systemctl restart postgresql-9.6


 

安装方式2 CMDBuild 通过war安装

下载CMDBuild.war包         官网war 包下载地址
下载tomcat  tomcat 8.55官网下载地址
下载相关资源包官网资源包下载地址(包括数据库,shark,tomcat-libs,工作流程数据库演示)
初步搭建只需用到资源包中的tomcat-libs\postgresql-42.2.5.jar

  1. 解压tomcat都/opt/tomcat下
    tar -zxvf /opt/tomcat/apache-tomcat-8.5.50.tar.gz

    上传cmdbuild.war 到tomcat/apache-tomcat-8.5.50/webapps 目录中
    上传postgresql-42.2.5.jar 到tomcat/apache-tomcat-8.5.50/lib  目录中

  2. 启动tomcat,释放cmdbuild.war 文件,因为导入的数据的脚本和数据都在war ,先执行一次,然后停止
    cd /opt/tomcat/apache-tomcat-8.5.50/bin
    //启动tomcat
    ./startup.sh
    //等tomcat 执行完毕停止tomcat
    ./shutdown.sh  
  3. 修改/opt/tomcat/apache-tomcat-8.5.50/webapps/cmdbuild/WEB-INF/conf/database.conf_example的数据库配置文件
    改成你的数据库用户密码
    db.url=jdbc:postgresql://localhost:5432/cmdbuild
    db.username=cmdbuild
    db.password=passw0rd
    db.admin.username=postgres
    db.admin.password=passw0rd

    然后复制一份,将其命名为database.conf
    为什么?应用启动使用的数据库配置文件命名必须为database.conf,这里我踩了一个坑

  4. 导入数据库
    cd opt/tomcat/apache-tomcat-8.5.50/webapps/cmdbuild/
    bash cmdbuild.sh dbconfig create demo -configfile /opt/tomcat/apache-tomcat-8.5.50/webapps/cmdbuild/WEB-INF/conf/database.conf_example
    注意demo是不用修改的,这是数据库的转存文件名

    demo 文是在/opt/tomcat/apache-tomcat-8.5.50/webapps/cmdbuild/WEB-INF/sql/dump
    demo.dump.xz   —演示数据
    demo_25.dump.xz empty.dump.xz   —空模型ready2use.dump.xz   — Ready2Use ready2use_ 25.dump.xz
    如果提示jdbc 连接失败
    那么应该确认安装的PostgreSQL 的配置文件/var/lib/pgsql/9.6/data/pg_hba.conf
    jdbc连接需要将ident 改为trust,上述另一种安装有提到

  5. 启动tomcat

    注意tomcat 不能由root 用户启动(这个坑死我了)
  相关解决方案