CAT官方参考文档:
HOME · dianping/cat Wiki · GitHub
CAT的服务端安装参考文档:
readme_server · dianping/cat Wiki · GitHub
下面是单机安装CAT以及他需要依赖的JDK,tomcat,mysql
一.JDK安装
参考:Linux环境安装卸载JDK以及安装Tomcat和发布Java的web程序_unix21的博客-CSDN博客
下面是jdk-8u221安装,下载好jdk以后
解压
#tar zxvf ./jdk-8u221-linux-x64.tar.gz -C /usr/lib/jdk
#cd ./jdk/jdk1.8.0_221
设置环境变量
打开/etc/profile文件
#vim /etc/profile
- export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_221
- export JRE_HOME=/usr/lib/jdk/jdk1.8.0_221/jre
- export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
- export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
#source /etc/profile
验证JDK安装完成
#java -version

二.tomcat安装
下载tomcat(https://tomcat.apache.org/download-80.cgi)
#wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.82/bin/apache-tomcat-8.5.82.tar.gz
#cd /usr/local/
#mkdir tomcat
#tar -zxvf apache-tomcat-8.5.82.tar.gz
#cd ./apache-tomcat-8.5.82/bin
#./startup.sh
启动
#/usr/local/tomcat/apache-tomcat-8.5.82/bin/startup.sh
测试
http://localhost:8080/

#重启tomcat服务需要先关闭再启动就行
#/usr/local/tomcat/apache-tomcat-8.5.82/bin/shutdown.sh
三.安装MySQL
下载MySQL :: Download MySQL Community Server (Archived Versions)

#tar -zxvf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz
先检查是否有mysql用户组和mysql用户,没有就添加有就忽略:
#groups mysql
添加用户组和用户
#groupadd mysql && useradd -r -g mysql mysql
创建数据目录并赋予权限
#mkdir -p /data/mysql
#chown mysql:mysql -R /data/mysql
修改配置文件 vim /etc/my.cnf (没有就新建)
- [mysqld]
- bind-address=0.0.0.0
- port=3306
- user=mysql
- basedir=/usr/local/mysql-5.7.35
- datadir=/data/mysql
- socket=/tmp/mysql.sock
- log-error=/data/mysql/mysql.err
- pid-file=/data/mysql/mysql.pid
- #character config
- character_set_server=utf8mb4
- symbolic-links=0
- explicit_defaults_for_timestamp=true
- max_allowed_packet = 1024M
注意max_allowed_packet默认很小只有4M需要改大一点,我这是已经安装好之后查出来的。

改之后的:

#mv /usr/local/mysql/mysql-5.7.35 /usr/local/mysql-5.7.35
#cd /usr/local/mysql-5.7.35/bin/
#./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.35/ --datadir=/data/mysql/ --user=mysql --initialize
查看初始密码
#cat /data/mysql/mysql.err
A temporary password is generated for root@localhost: ccGoWk*/l2NO
启动mysql
#cp /usr/local/mysql-5.7.35/support-files/mysql.server /etc/init.d/mysql
#service mysql start
#service mysql restart
----
log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
没有找到日志文件,在相应的目录下创建日志文件后,赋予相应的权限
#mkdir /var/log/mariadb/
#vi /var/log/mariadb/mariadb.log
#chown -R mysql.mysql /var/log/mariadb/mariadb.log
----

登陆
#/usr/local/mysql-5.7.35/bin/mysql -u root -p
第一次需要设置数据库的密码 ,把原始的数据库密码更改一下
更改密码的方法:
mysql> SET PASSWORD = PASSWORD('你的密码'); 这句话重新设置一次密码!
刷新规则允许外部访问
>use mysql #选择访问mysql库
>update user set host = '%' where user = 'root'; #使root能再任何host访问
>FLUSH PRIVILEGES; #刷新
退出
#quit
重启服务
#service mysql restart

用户权限之创建新用户并给授权指定的数据库权限
创建mysql新用户
CREATE USER 'test'@'%' IDENTIFIED BY '123';
备注上面@后的命令解释
'%' - 所有情况都能访问
‘localhost’ - 本机才能访问
’111.222.33.44‘ - 指定 ip 才能访问
3.给用户授予权限
grant all on 数据库名.数据库表 to 用户名@'%' identified by "密码";
备注
all 可以替换为 select,delete,update,create,drop
数据库名 所有的 用*
数据库表 所有的 用*
四.安装CAT
基本参考这个就行,readme_server · dianping/cat Wiki · GitHub
但是这里是集群部署,而且有些地方不注意会浪费时间。
#mkdir /data
#chmod -R 777 /data
#mkdir -p /data/appdatas/cat
#cd /data/appdatas/cat
在/data/appdatas/cat/目录下创建配置文件,client.xml,datasources.xml,server.xml这三个
server.xml可以不用,会用默认文件,如果你要安装HDFS存报表需要。
#touch client.xml
#touch datasources.xml
#touch server.xml
client.xml
- "1.0" encoding="utf-8"?>
- <config mode="client">
- <servers>
- <server ip="你的内网IP" port="2280" http-port="8080"/>
- servers>
- config>
datasources.xml
- "1.0" encoding="utf-8"?>
-
-
id="cat"> -
3 -
1s -
10m -
1000 -
-
com.mysql.jdbc.Driver -
-
root -
你的密码 -
true&characterEncoding=UTF-8&autoReconnect=true&socketTimeout=120000]]> -
-
下载war包部署是最简单的,也可以自己安装包编译。
下载3.1.0即可:
Releases · dianping/cat · GitHub
Release V3.1.0 · dianping/cat · GitHub
直接下载也行:
https://github.com/dianping/cat/releases/download/3.1.0/cat-home.war
下载好以后改为cat.war。
数据库脚本
https://github.com/dianping/cat/blob/3.1.0/script/CatApplication.sql
https://raw.githubusercontent.com/dianping/cat/3.1.0/script/CatApplication.sql
需要在MySQL建立一个cat的空数据库,然后导入脚本即可。
将cat.war放入tomcat的webapps:

重启tomcat即可,如果一起都对会出现CAT的页面,如果有哪里不对需要和前面仔细检查,特别是数据库连接和用户名密码不能错。

提示出问题的服务端需要修改配置。
修改配置:
http://localhost:8080/cat/s/config?op=serverConfigUpdate
http://localhost:8080/cat/s/config?op=routerConfigUpdate

配置里127.0.0.1的IP 要改为实际内网IP,重启tomcat

这次提示CAT服务端正常了。
五.程序接入CAT客户端
cat/README.zh-CN.md at master · dianping/cat · GitHub
maven配置:
- <dependency>
- <groupId>com.dianping.catgroupId>
- <artifactId>cat-clientartifactId>
- <version>3.1.0version>
- dependency>
如果是windows那么需要配置程序所在的盘的根目录下,例如D盘D:\data\appdatas\cat放置client.xml,关于client.xml在前面安装CAT部分已经有。