`
walksing
  • 浏览: 217008 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SMG-BOSS db说明 以及smg引擎系统安全注意事项 1.3.0

阅读更多
SMG-BOSS db说明 以及smg引擎系统安全注意事项 1.3.0
# all rights copy by runus [runusws@gmail.com], SMG-OEBS OpenEBS http://oebs.vicp.net



#google 关键词:smg-boss

$history
what        who        when        version
修改中文乱码 runus    2011-03-22  1.2.0
design      runus      2011-03-22  1.0.0




1 数据库版本 mysql Server version 5.0.67 (NT/Linux)
  本版本以NT版本为举例
  安装过程注意指定默认字符集latin1
 
2 安装过程

以root 帐号 建立4个空数据库 如下:
建立一个sms mysql 帐号,权限为root权限

create database service;
create database ppg_sps;
create database ppg_cps;
create database fos;

3 执行脚本导入、导出
bin/smgdbimp.bat $usrid $passwd $sqlpath 导入
bin/smgdbexp.bat $usrid $passwd $sqlpath 导出

  检测如果错误重复执行几次;直到没有错误

4 数据库介绍
service  业务库          包含基本信息公共信息配置
ppg_sps  sp网关集群库    包含所有通道的上下行,dlr实时,历史数据
ppg_cps  cp网关同步库    包含所有同步给cp的数据 上行,dlr 历史数据
fos      财务数据库      包含所有财务统计数据

5 结构安装顺序
  系统安装必须以下列顺序导入安装
  5.1 $db_tbl.sql  为空表结构
  5.2 $db.sql 为过程,函数,视图
  5.3 $db_data.sql 为系统默认安装必须的元数据
 
  (.dic.txt 为字典文档)
  $db 为数据库名
 
  执行数据库顺序 service->ppg_sps->ppg_cps->fos
 
6 表结构
  参考docs/*.dic.sql

7 过程,函数,视图
  参考docs/*.dic.sql
 
8 基本规范
  8.1 数据库表名统一小写
  8.2 表明 tb_ ,tmp_ 为系统临时表 t_ 为非系统临时表可删除 ;几个基本特殊表如mo,mt,send,dir
  8.3 视图以v_开头,函数以f_开头,过程以 pcd_开头
  8.4 $ptr_$prj_$dic
    eg:pcd_mt,pcd_mt_sub,tb_ppg_user,tb_ppg_mo,tb_session
   
    _his$  为当月历史记录表 eg:mo_his
    _his$yyyymm 为历史月表  eg:dlr_his201008
   
  8.5 字典定义统一小写,个别特殊词大写,简短易懂
  8.6 合理设计索引,避免模糊查询 可提高查询效率
 
9 db 目录结构

  db/bin 导入导出脚本
  db/docs readme 词典
  db/*.sql 数据库安装脚本模板
 
10 相关问题解决 
  data数据导入乱码问题解决
 在 *_data.sql  
 SET FOREIGN_KEY_CHECKS=0;前加入 set names utf8;
 重新执行imp可导入;然后查询中文,以cmd 方式登录修改 查看中文
eg:
mysql> select * from fos.tb_fos_msgtype;
+---------+------+
| msgtype | des  |
+---------+------+
|       0 | 激活 |
|       1 | 上行 |
|       2 | 下行 |
+---------+------+
3 rows in set (0.01 sec)

  存储过程中文注解乱码问题;暂时解决不了。因系统中调用中文都以数据库方式;故过程中文注解以词典为主;尽量避免中文注解
  请以本次版本数据位置。
  删除之前版本的压缩包包括元数据
 
 
*11 SMG引擎系统安全注意事项

   11.1 SMG java wrapper 服务 -logout/shutdown
  
   smg引擎是基于wrapper服务 (google java wrapper) 为中间件,与操作系统间接交互的.java wrapper 是个开源小巧的软件.
   jboss,tomcat都用它来注册服务,作为开机守候进程服务. 在实际应用中发现以下问题.
   
    以windows 系统为例.当有俩个用户以同样帐号如:root登录到系统中时,实际在系统登录前,smg引擎便以system帐号默认登入,随服务器启动而启动.
所以,以root帐号登录后,smg服务已经在运行态.如果,这时候任何一个用户,无论何时,在操作系统内点注销服务(logout) 都会产生一个注销事件,
  java wrapper 会捕捉到这一事件,便会退出jvm 虚拟机,从而导致smg引擎间接退出. 如何避免这种情况 .如果有多个帐号登录,可使用终端服务管理器,注销掉该用户即可
  这个注销不是,不是操作系统用户.而是相当于采用kill进程方式直接讲多余用户的系统进程给踢出系统,java wrapper不会产生logout事件.
  如果已经产生了logout事件,smg引擎退出前会产生一个报警(如果默认打开报警) .操作者要重视此报警.及时重启服务,进行预防,以免造成不必要的业务数据损失.

另外操作系统关机,smg引擎都会捕捉到关机事件会发出报警,并在启动时也会报警.
   
   
    11.2 报警类别
   
1) 系统报警 必须严肃对待
2) 日常业务报警可根据情节处理,有些不需要报的 可忽略
3) 就是无dlr, 无上行,无mt 报警 可自行开发.

做到这3点可保证网关通道安全.

另外,建议报警也同时报给商务或其他技术人员,以防止只报警给一个人,而恰恰手机关机,或忽略报警,而造成业务损失.
  
   
   
    by runus 20110629
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics