
# 疑难问题处理方案及数据库权限分配
#### 如何指定工作目录
按照优先级由低到高排列
1. 通过界面初始化 windows环境在注册表下面，Linux环境在当前执行用户home目录下的.java下
   
2. 通过java环境变量指定 在启动参数中加上-Desen.edg.workdir=/opt/workdir/edg
   
3. 在war包中指定 在war包中的WEB-INF\\classes\\ application.properties，
   指定esen.edg.workdir=/opt/workdir/edg
   ![](https://support.huaweicloud.com/edms-mnft/public_sys-resources/note_3.0-zh-cn.png)
   最前方的#代表注释
   
#### 环境乱码如何配置
环境部署好后，如果面包屑出现乱码现象，将tomcat里面的参数修改即可。
路径为apache-tomcat-8.5.12/conf/server.xml，在端口号后面加上URIEncoding="UTF-8"，改变tomcat的字符集，如图所示；
图1环境乱码如何配置   
![](https://support.huaweicloud.com/edms-mnft/zh-cn_image_0000001901751613.png)
#### Redis部署相关
问题现象：由于某些项目服务器的操作系统是最小安装的，安装redis时会提示缺少gcc等rpm包
解决办法:
1. 如果处于外网环境（能ping通baidu.com），可直接执行命令进行安装
   ```
   # yum install –y gcc-c++
   ```
   如果缺少其他依赖包，同样可以用yum进行安装
   Make报错问题解决后，先清理上一次make产生的文件再次make
   ```
   # make distclean
   # make
   ```
   
2. 如果处于内网环境，则需要如下几步配置yum源实现yum安装：
   1. 给服务器所在虚拟机或物理机插入相同版本的操作系统光盘
   
   2. 在操作系统层面将光盘挂载在某一个目录下，如下图
      图2挂载   
      ![](https://support.huaweicloud.com/edms-mnft/zh-cn_image_0000001901871125.png)
      ```
      # mount /dev/sr0 /mnt/cdrom     #/dev/sr0为光盘路径，/mnt/cdrom为挂载路径
      ```
      
    
3. 在/etc/yum.repos.d目录下备份原有文件，新建local.repo文件，后缀必须为.repo，增加如下内容：
   ```
   [local]#必须，唯一的repo名称
   name=local#自定义名称
   baseurl=file:///mnt/cdrom                 #光盘mount后的路径
   enable=1#启用该repo，0为禁用
   gpgcheck=0#不检查rpm包来源
   ```
   
#### 睿治目前支持的系统库
Oracle库：Oracle11g、Oracle12c、Oracle19c
PG库：PostgreSQL 9.6、PostgreSQL 10.6 、PostgreSQL12.6
达梦数据库：达梦7.6、达梦8.1
Mysql数据库：Mysql8.0.27(需要支持窗口函数)
![](https://support.huaweicloud.com/edms-mnft/public_sys-resources/caution_3.0-zh-cn.png)
1. mysql8作为驱动时url地址需要更新。参考： jdbc:mysql://localhost:3306/test?useUnicode=true\&characterEncoding=utf8\&useSSL=false\&databaseTerm=SCHEMA\&nullDatabaseMeansCurrent=true
   
2. 一般不选数据库系统用户作为部署用户，如Oracle的system、mysql的root用户等。
 
#### 睿治目前支持的中间件
Tomcat：tomcat版本需要用9.0.0.M18以上、8.5.12以上的版本
Weblogic：weblogic12c、weblogic14c
Tas: tas2.8.5
TongWeb: TongWeb6.1
#### 睿治目前支持的浏览器
睿治目前支持的浏览器：
Chrome（v77以上）、ie11、360浏览器（v10以上）
#### 测试通过的软硬件环境
表1测试通过的软硬件环境 
| 总体测试环境 http://172.21.50.101:8081/rz25linux |       【数据库】Oracle19cg        |
| 总体测试环境 http://172.21.50.101:8081/rz25linux |
| 总体测试环境 http://172.21.50.101:8081/rz25linux |
| 总体测试环境 http://172.21.50.101:8081/rz25linux |
|---|---|
| 【客户端】win7,win10 ie11， chrome                                       |
| 【中间件】tomcat9，jdk1.8                                                |
| 【中间件所在的操作系统】CentOS release 7                                       |
| 兼容性测试环境1 http://172.21.160.83:8081/rz25pg  | 【数据库】postgresql12.6          |
| 兼容性测试环境1 http://172.21.160.83:8081/rz25pg  | 【客户端】win7,win10 ie11， chrome |
| 兼容性测试环境1 http://172.21.160.83:8081/rz25pg  | 【中间件】tomcat9，jdk1.8          |
| 兼容性测试环境1 http://172.21.160.83:8081/rz25pg  | 【中间件所在的操作系统】Windows10        |
   
#### 元数据采集的相应配置
1. 元数据数量很大有20多万的情况，需要调整数据库的undo回滚空间至少分配30g；
2. 服务器数据很大，尽量调大服务器最大内存到4g及以上；
3. 采集的数据很大的情况，需要调整数据库的redo log 给3组，每组文件给10g；
4. 执行多个大数据量采集的计划任务，建议不要同时执行，尽量分开执行；
5. 入库的数据超过50w，服务器内存最大必须2g以上；
6. 备份恢复操作，如果元数据所有的数据超过20w以上，EDG25_EMET_METADATAHIS、EDG25_EMET_MCDATAS历史表的数据超过20w以上，建议采用数据备份来备份元数据环境，不推荐系统自带的备份恢复操作；
#### IPv6部署
睿治251支持ip v6部署，此处以tomcat为例介绍如何配置
1. 修改tomcat/conf/server.xml文件，找到下图位置，添加address="ip v6地址"，
   图3修改   
   ![](https://support.huaweicloud.com/edms-mnft/zh-cn_image_0000001855632374.png) 
2. 其余配置和ip v4一样，可参考前面章节
3. 初始化睿治，在数据库设置这里，填写链接地址时，ipv6地址要用\[\]括起来，即标红部分。如使用oracle11g，则参照下面写法 jdbc:oracle:thin:@//\[fd15:4ba5:5a2b:1008:d8b3:df29:fdf2:7776\]:1523/orcl
   
4. 注册成功后，ipv6访问地址也要用\[\]括起来，如 http://\[fd15:4ba5:5a2b:1008:d8b3:df29:fdf2:7776\]:8080/edg
#### 数据库权限分配
表2权限分配 
| **数据库** |                                                                    **分配权限**                                                                     |
|---|---|
| Oracle  | connect、resource、create any view 说明： oracle12c及以上需要alter user xxx quota unlimited on users |
   
