一、Jasperreport服务器基本操作
Jasperreport是一款开源的报表工具,它有内置的 tomcat 及 postgresql 数据库,在报表启动的时候就会启动两个相关的服务
Jasperreport主要依靠 ctlscript.sh 文件进行启动、停止、重启等操作的。
1、查看状态
sh ctlscript.sh status
输出如下,则代表当前是已启动状态,必须两个都是 running 才可
postgresql already running
tomcat already running
2、启动
sh ctlscript.sh start
3、停止
sh ctlscript.sh stop
4、重启:会先检查 tomcat 及 postgresql 是否运行状态,先停止服务再启动
sh ctlscript.sh restart
二、postgresql 数据库的基本问题
1、postgresql 启动文件路径
jasperreports-server-cp-6.4.2/postgresql/scripts/ctl.sh
粗略的读了一下这个文件的脚本,无非就是一顿获取 pid 然后判断状态然后启动
2、postgresql 配置文件是 data 中的 postgresql.conf
3、postgresql 主进程文件是 data 中的 postmaster.pid
4、postgresql 在 Jasperreport报表的启动过程中可能会报如下错误
pg_ctl: could not start server
查看 postgresql 目录可能会多出这样一个文件 logfile
我们打开看一下
百度综合了资料
大意应该是:文件夹 “/opt/jasperreports-server-cp-6.4.2/postgresql/data” 权限错误, 权限应该是 rwx (0700)
解决方法如下
进入 /opt/jasperreports-server-cp-6.4.2/postgresql 目录
先把 postgresql 文件夹中的 “data” 的用户所属组,给postgres 用户:
chown -R postgres:postgres data
把data目前的所有文件及子目录文件权限改成: rwx (0700)
chmod -R 0700 data
重启 postgresql
sudo -u postgres /opt/jasperreports-server-cp-6.4.2/postgresql/bin/pg_ctl -D /opt/jasperreports-server-cp-6.4.2/postgresql/data -l logfile start
然后再去对 Jasperreport报表进行重启,就可以解决了
三、内置 tomcat
未完待续。。。。