建这个文档是为了大家在使用遇到问题登记,避免后面的人再采坑,系统部署前记得看视频https://www.bilibili.com/video/BV1N7411E7rf/
问题描述:
鉴权失败:AppId 没有权限访问 serviceCode = xx.xx(接口名)
解决方法:
检查是否SQL文件全部表导入,在TT库检查表数量如果大于240张表,说明导入成功,如果少于重新导入
清理redis缓存 重启order服务解决
新开发的接口请参考视频开发者必须掌握的功能https://www.bilibili.com/video/BV1m4411m7jw/
原因:检查下是否开启了反向代理,报错原因是header键值APP_ID包含了下划线,nginx会过滤掉带下划线的键值。
解决方法:在nginx.conf中http部分增加underscores_in_headers on;
答:my.ini配置文件 mysqld 节点下添加
max_allowed_packet = 900M
配置MySQL允许的最大数据包大小,900M根据你的项目修改为你自己的值,比要导入的备份文件大就ok。
原因:
防火墙要加入容器的ip白名单
解决:firewall-cmd --zone=trusted --add-source= 172.19.0.1/16 --permanent
firewall-cmd --reload
问题描述:
在执行 mvn clean install,但是在idea右上角点击刷新时,依然报错,解决办法为把idea的jdk换为java8,目前默认的是jdk11
解决办法:
检查是否SQL文件全部表导入,在TT库检查表数量如果大于240张表,说明导入成功,如果少于重新导入
TT库检查是否存在xx 表
tt库和hc_community 是否合并为一个库出现的问题
dataSource.yml 文件除了密码是否修改过其他的,如分片规则的修改
解决办法:
jdk 启动默认占用空闲内存4分之一,所以如果jdk启动不限制内存吃内存是很厉害的,
-Xmx1024m -Xms512m
原因:mysql5.6和mysql8.0的配置不兼容,需要修改配置
解决办法:
修改pom.xml中mysql版本
修改dataSource.yml文件中driverClassName
url中加入参数
&useSSL=true&serverTimezone=UTC&zeroDateTimeBehavior=CONVERT_TO_NULL
解决办法:
开发环境的权限太大,演示环境默认的密码无法提供,只能在u_user表中 用admin 的密码覆盖dev账号的密码,然后登陆进去请自己修改密码
需要启动的服务,可以查看 reBuildAll.sh,目前基本为:eureka、Api、OrderService、CommunityService、StoreService、UserService FrontService、FeeService和CommonService
答:bootstrap
答:这个在后台创建菜单时默认就会给 管理员组加进去不需要手工加
14.1、目前系统照片和视频都是要存放到ftp上,需要在CommonService 下java110.properties中加入
java110.ftp.multipart.maxFileSize=100Mb
java110.ftp.multipart.maxRequestSize=100Mb
java110.ftpServer = xx.xx.xx.xx
java110.ftpPort = ftp 端口
java110.ftpUserName = 用户名
java110.ftpUserPassword = 密码
java110.ftpPath = hc/
14.2、linux版本不支持ftp连接问题
原因是linux版本中的ssh 不再支持 OpenSSH 7.4发布:不再支持SSH-1协议, 应该从5.3版本就应该不支持了,我的系统是 CentOS Linux release 7.7.1908
解决办法需要修改代码.
把项目中的FtpUploadTemplate.java 换成 群文件中的 JSchFtpUploadTemplate.java
pom.xml加上
答:123456 可以重置,那个应该是配置 部署后可以在映射中改一下就可以
有的,在HC小区管理系统交流群中群文档中的HC文档>清理数据脚本.txt
目前对接的是锐目物联的门禁,道闸之前没有对接,只是出了技术方案协议可以再群共享的HC文档>HC小区智慧停车接口协议.docx
推荐根据自己的硬件选择自己对接,如果没有对接能力 官方对接,对接费用为500元
方案一、centos7.6一键式自动安装
wget https://www.zyunshe.com/hcAutoInstall.tar
如果下载不下来,请加群827669685在群文件中【HC系统部署文档】中获取hcAutoInstall.tar 自动部署shell脚本部署
tar -xvf hcAutoInstall.tar
修改env.sh 中的相应IP和密码
sh install.sh
参考视频
方案二、根据需求自助部署
参考视频
可能原因为采用的maven版本不太合适,官方采用版本为3.3.9
可能原因为前段项目的app.js 中的后端地址没有改,还是调到演示环境中去了,请修改为后端项目地址(有朋友遇到的)
可能原因为orderservice服务中的dataSource.yml数据库配置不正确 两个库是否都配置成了hc_community(有朋友就配置的有问题导致,花了两天时间都没有搞定)
如果是生产Linux 建议用NGINX做代理,一键部署脚本已经实现这个功能,请用一键部署脚本部署
如果是本机 请先安装 nodejs ,然后再项目根目录下执行 npm install 再执行 npm start
这个表示启动成功
访问地址为 http://ip:3000/
eureka、Api、OrderService、CommunityService、StoreService、UserService FrontService、FeeService和CommonService
过程表为数据变更过程,比如u_user表来说,这个表数据的增删改都会去business_user表中留痕迹
实例表,就是我们最终数据表
delete from u_user where name not in ('dev','admin','dails','wuxw');
delete from f_floor ;
delete from building_unit ;
delete from building_room ;
delete from building_room_attr ;
delete from building_owner_room_rel ;
delete from n_notice ;
delete from r_repair_pool ;
delete from r_repair_user ;
delete from complaint ;
delete from s_visit_info ;
-- 以下三条语句 hc_community 和TT库都需要执行
delete from s_community where community_id <> '7020181217000001';
delete from s_community_attr where community_id <> '7020181217000001';
delete from s_community_member where community_id <> '7020181217000001';
delete from building_owner ;
delete from building_owner_room_rel;
delete from parking_area;
delete from parking_space;
delete from pay_fee;
delete from pay_fee_attrs ;
delete from pay_fee_detail;
delete from advert ;
delete from advert_item;
delete from car_black_white ;
delete from car_inout;
delete from car_inout_detail;
delete from activities ;
delete from audit_user ;
delete from machine ;
delete from machine_attrs ;
delete from machine_record;
delete from machine_translate;
delete from demo;
delete from inspection_plan;
delete from inspection_point;
DELETE from inspection_route;
delete from inspection_route_point_rel;
delete from inspection_task;
delete from owner_app_user;
delete from s_store where store_id not in (
select member_id from s_community_member
);
delete from s_store_attr where store_id not in (select a.store_id from s_store a);
delete from c_orders ;
delete from c_business
设计两个库主要是为了测试数据库的分库分表,目前 s_community 和s_community_member 表是分库分表,其他表都是以TT库的为主 hc_community 库的没有用,也可以改下CommunityService 的dataSource.yml 分片规则 改成一个TT库
ps -ef |grep redis
kill -9 进程号
切换成 redis 用户 到redis 的bin 下执行 ./redis-server ../redis.conf
主要原因为系统启动后 spring cloud 懒加载调用后端超时了,所以进入了错误页面 多刷新几下就好了,再不会进入完善公司信息页面,这个页面只有在系统重启后第一次出现。
执行如下命令:
SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
关于日志经常满的问题,是因为kafka警告日志的问题,要么装kafka,要么在java110-config中的logback中加上一段
只输出error级别日志就行了
nginx 安装在 /tengine
mysql 在mysql 用户下 /home/mysql
redis 在redis 用户下 /home/redis
hc前段 在hc 用户下的 /home/hc
hc后端 在hc 用户下的 /home/hc
屏幕小时copyright 下有黑色框的问题,大家记得更新下前段的 menu.js 和vcFramework.js文件,最新的代码已经优化
最新自动部署脚本部署,没有这个问题了,之前部署的切换到hc 用户下 进入/home/hc/hcConf/相应模块/docker/bin 下start_xxx.sh 修改
删除nohup 和> 及之后的,注释tail -100f (打印日志的)
注意:这里的都需要改,修改完成后 到/home/hc/bin 中 运行restart_hc.sh
MicroCommunity 项目 back 分支为前后端分离 后端版本,master 分支为前后端不分离项目
https://gitee.com/wuxw7/MicroCommunity/tree/master/
官方建议采用前后端分离项目