CentOS7安装CMDBuild
实验背景、不想通过execl统计物理资源、资产。
实验环境
- CentOS Linux release 7.4.1708 (Core)
- PostgreSQL 9.6
- JDK8+Tomcat8
安装相关服务
- 1、配置psotgresql yum源
wget https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
#
yum install -y postgresql96 postgresql96-server # 安装postgresql服务
# yum安装postgrasql默认会创建一个postgres的系统账号
- 2、初始化postgresql
[root@aniu-saas-4 ~]# /usr/pgsql-9.6/bin/postgresql96-setup initdb
Initializing database ... OK
- 3、设置开机自启
[root@aniu-saas-4 ~]# systemctl enable postgresql-9.6
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql-9.6.service to /usr/lib/systemd/system/postgresql-9.6.service.
[root@aniu-saas-4 ~]# systemctl start postgresql-9.6
- 4、postgresql初始设置
# 修改用户密码
su - postgres
#切换用户后,提示符变更为“-bash-4.2$”;
#同时数据库中也会生成一个名为”postgres”的数据库用户,且密码已自动生成;
#PostgreSQL在数据库用户同名的系统账号下登录免密;
[root@aniu-saas-4 ~]# su - postgres
-bash-4.2$ psql -U postgres
psql (9.6.6)
Type "help" for help.
postgres=# alter user postgres with password 'Aniupostgresql123.'
# 设置允许远程访问
#配置文件中,默认只能本机访问postgresql;
#修改listen_addresses = 'localhost'为listen_addresses = '*',允许所有远程访问;
#修改配置文件需要重启服务
# sed -i "s|#listen_addresses = 'localhost'|listen_addresses = '*'|g" /var/lib/pgsql/9.6/data/postgresql.conf
- 5、JDK8+Tomcat环境安装比较简单、不过多描述
# 参考:http://www.linuxidc.com/Linux/2017-10/148155.htm 很详细
部署配置CMDBuild
-
- 下载cmdbbuild
# cd /usr/local/src
# wget https://ncu.dl.sourceforge.net/project/cmdbuild/2.5.0/cmdbuild-2.5.0.zip
-
- 部署cmdbuild
# unzip cmdbuild-2.5.0.zip
# cd cmdbuild-2.5.0
#复制解压目录下的“cmdbuild-2.5.0.war”到$TOMCAT_HOME的webapps目录下,并更名为” cmdbuild.war”;
#复制解压目录下的“extras/tomcat-libs/6.0\ or\ higher/postgresql-9.4.1207.jar”到$TOMCAT_HOME的lib目录下,版本与postgresql不一致可忽略;
#配置后需要重启tomcat,war包在tomcat启动会被解析
[root@aniu-saas-4 cmdbuild-2.5.0]# cp cmdbuild-2.5.0.war /data/tomcats/tomcat8/webapps/cmdbuild.war
[root@aniu-saas-4 cmdbuild-2.5.0]# cp extras/tomcat-libs/6.0\ or\ higher/postgresql-9.4.1207.jar /data/tomcats/tomcat8/lib/
设置postgresql
-
- 设置pg_hba.conf
# vim /var/lib/pgsql/9.6/data/pg_hba.conf
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# Peer authentication failed for user "postgres" 的解决办法: 计算机用户名和我的数据库名不一致,所以需要把Peer authentication改成md5 authentication,然后给数据库设置密码。
- 创建cmdbuild数据库与账号
[root@aniu-saas-4 ~]# su - postgres
Last login: Wed Jan 3 10:30:59 CST 2018 on pts/2
-bash-4.2$ psql
psql (9.6.6)
Type "help" for help.
postgres=# create user cmdbadmin with password 'Aniucmdb123.';
CREATE ROLE
postgres=# create database cmdbuild owner cmdbadmin;
CREATE DATABASE
postgres=# grant all privileges on database cmdbuild to cmdbadmin;
GRANT
postgres=# \q
-bash-4.2$ exit
logout
- 导入数据表
# su - postgres
-bash-4.2$ psql -U cmdbadmin -d cmdbuild -f /data/tomcats/tomcat8/webapps/cmdbuild/WEB-INF/sql/sample_schemas/demo_schema.sql -W
# 笔者使用上面方式导入sql提示权限不足,故使用下面方式导入
# su - postgres
# psql -U cmdbadmin -d cmdbuild -W # 连接到cmdbuild库
执行:
\i /data/tomcats/tomcat8/webapps/cmdbuild/WEB-INF/sql/sample_schemas/demo_schema.sql
CMDBuild初始化
注意、连接参数选择已存在的、因为我们已经导入了demo数据表、
开始使用