• 通达OA在centos系统中快速部署文档(web和数据库)


    通达OA2008从windows环境移植到linux中(centos5.5及以上版本)


    如果安装好了,还是无法访问,则需要清空浏览器缓存即可


    1.安装lamp环境,这里用的是xampp集成安装包xampp-linux-1.6.8a.tar.gz
    ①安装:
    tar xvfz xampp-linux-1.6.8a.tar.gz -C /opt 


    配置上网
    vi /etc/yum.conf
    在最后一行加入
    #192.168.3.15是开启了proxy可以上网的windows服务器
    proxy=http://192.168.3.15:808


    安装vlock工具(安全需要)
    yum install -y vlock


    注意:
    在64位的centos上安装的时候会报错:XAMPP is currently only availably as 32 bit application
    这个是因为xampp默认不支持64位系统,需要安装兼容包
    yum install -y glibc*i686


    /opt/lampp/lampp start启动服务时继续报错:libgcc_s.so.1 must be installed for pthread_cancel to work
    将centos5.5 32bit系统/lib/libgcc_s.so.1文件拷贝到64bit的的/lib目录下即可


    发现无方法访问,原来是开启了防火墙
    关闭命令:  service iptables stop 
    永久关闭防火墙:chkconfig iptables off


    service iptables status


    selinux关闭
    sestatus -v 查看状态
    setenforce 0


    vi /etc/sysconfig/selinux
    把里边的一行改为
    SELINUX=disabled


    reboot






    ②通过/opt/lampp/lampp security设置服务密码


    ③安装zip工具
    yum install -y unzip zip


    ④安装zend加密工具
    gzip -d ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
    tar xvf ZendOptimizer-3.3.0a-linux-glibc21-i386.tar
    cd ZendOptimizer-3.3.0a-linux-glibc21-i386
    sh install.sh


    Specify the full path to the Apachecontrol utility(apachectl):
    /opt/lampp/bin/apachectl




    2.打包/opt/lampp/htdocs/MYOA 文件,上传到服务器的/opt/lampp/htdocs目录中
    打包文件
    cd /opt/lampp/htdocs/MYOA
    zip -q -r /opt/MYOA.zip *


    解压文件
    cd /opt/lampp/htdocs
    unzip MYOA.zip


    (将正式服务器中的attach目录上传至linux服务器中,同时做其他操作)


    配置相关的文件,将生产环境文件下载直接覆盖
    PHP: 将/opt/lampp/etc/php.ini 


    APACHE: /opt/lampp/etc/http.conf


    MYSQL: /opt/lampp/etc/my.cnf文件允许网络访问mysql
    #skip-networking     //注释掉该选项


    3.修改链接数据库
    /opt/lampp/htdocs/MYOA/webroot/inc/oa_config.php


    4.上传最新通达数据库到/opt/lampp/var/mysql目录下,修改表名全部为大写
    上传mytable修改成英文的表到/opt/lampp/var/mysql/TD_OA目录下(否则系统桌面无法显示)
    alter table mytable rename MYTABLE (修改表权限chmod 777)


    修改/opt/lampp/var/mysql/TD_OA下的所有数据库文件为可读、可写、可执行
    cd /opt/lampp/var/mysql/TD_OA
    chmod 777 *.*


    使用phpmyadmin的修复表功能,需要修改数据库目录的权限
    cd /opt/lampp/var/mysql
    chmod 777 TD_OA


    5.优化mysql数据库设置/opt/lampp/etc/my.cnf


    max_connections=700
    #key_buffer建议设置成内存大小的10%~20%
    key_buffer = 4096M
    max_allowed_packet = 64M
    table_cache = 674
    sort_buffer_size = 16M
    net_buffer_length = 16K
    read_buffer_size = 16M
    read_rnd_buffer_size = 16M
    myisam_sort_buffer_size = 64M


    max_allowed_packet = 64M


    6.开启eAccelerator加速器(加速PHP)
    修改/opt/lampp/etc/php.ini:
    ;extension="eaccelerator.so"
     ;eaccelerator.shm_size="16"
     ;eaccelerator.cache_dir="/opt/lampp/tmp/eaccelerator"
     ;eaccelerator.enable="1"
     ;eaccelerator.optimizer="1"
     ;eaccelerator.check_mtime="1"
     ;eaccelerator.debug="0"
     ;eaccelerator.filter=""
     ;eaccelerator.shm_max="0"
     ;eaccelerator.shm_ttl="0"
     ;eaccelerator.shm_prune_period="0"
     ;eaccelerator.shm_only="0"
     ;eaccelerator.compress="1"
     ;eaccelerator.compress_level="9"


    7.修改附件目录权限
    chmod -R 777 /opt/lampp/htdocs/MYOA/attach


    8.修改系统回收session的时间和几率
    vi /opt/lampp/etc/php.ini
    session.gc_maxlifetime = 900(默认为36000秒10个小时)
    session_gc_probaility=5 (默认为1,修改为5增加回收垃圾文件的概率)


    9.将配置好的/opt/lampp/var/mysql/mysql中的user表上传到服务器中


    ehr_user表中的触发器:


    TRI_AFTERUPDATE_ON_ehr_user:
    修改UPDATE user SET  user改成大写USER
    BEGIN
    set @loc=LOCATE('/',NEW.email);
    UPDATE USER SET EMAIL2=substring(NEW.email,@loc+1),NATIONAL_IDENTIFIER=NEW.NATIONAL_IDENTIFIER,REGION=NEW.REGION WHERE remark=substring(NEW.lob_number,2); 
    END


    TRI_AFTERINSERT_ON_ehr_user:
    IF (NOT EXISTS (select REMARK from user where REMARK=@remark)) THEN
    改成:
    IF (NOT EXISTS (select REMARK from USER where REMARK=@remark)) THEN


    10.与门户单点登录文件上传、考试模块文件上传、attendance包含考勤系统文件上传、插件turn文件夹上传、general/010user_status用户状态文件


    12.OA账号自动添加问题修复
    ①OA数据库设置
    TD_OA
    字符集gbk -- GBK Simplified Chinese
    排序规则gbk_chinese_ci
    ②建立编码表
    CREATE TABLE `cs_char2letter` (              
                      `PY` char(1) character set utf8 NOT NULL,  
                      `HZ` char(1) NOT NULL default '',          
                      PRIMARY KEY  (`PY`)                        
                    ) ENGINE=InnoDB DEFAULT CHARSET=gbk;
    ③插入
    truncate table cs_char2letter;
    set names gbk;
    insert into cs_char2letter values
    ('A','骜'),
    ('B','簿'),
    ('C','错'),
    ('D','鵽'),
    ('E','樲'),
    ('F','鳆'),
    ('G','腂'),
    ('H','夻'),
    ('J','攈'),
    ('K','穒'),
    ('L','鱳'),
    ('M','旀'),
    ('N','桛'),
    ('O','沤'),
    ('P','曝'),
    ('Q','囕'),
    ('R','鶸'),
    ('S','蜶'),
    ('T','箨'),
    ('W','鹜'),
    ('X','鑂'),
    ('Y','韵'),
    ('Z','咗');
    ④建立函数
    DELIMITER $$
    DROP FUNCTION IF EXISTS `test`.`func_get_first_letter`$$


    CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_first_letter`(words varchar(255)) RETURNS char(1) CHARSET gbk
    BEGIN
    declare fpy char(1);
    declare pc char(1);
    declare cc char(4);
    set @fpy = UPPER(left(words,1));
    set @pc = (CONVERT(@fpy USING gbk));
    set @cc = hex(@pc);
    if @cc >= "8140" and @cc <="FEA0" then
    begin
    select PY from cs_char2letter where hz>=@pc limit 1 into @fpy;
    end;
    end if;
    Return @fpy;
    END$$
    DELIMITER;


    13.功能增强


    ①修改启动项,让mysql,apache服务随系统启动
    vi /etc/rc.d/rc.local
    在最后加入启动指令
    web服务器设置
    /opt/lampp/lampp startapache
    /opt/lampp/lampp startftp


    mysql数据库服务器
    /opt/lampp/lampp startmysql


    ②看门狗程序(如果服务运行不正常则自动拉起服务)
    每1分钟执行脚本检查apache程序是否正常运行,如果不正常则自动启动服务


    vi /usr/sbin/startpache


    加入如下内容:
    #检查apache服务是否正常运行,如果停止了则拉起服务
    #!/bin/sh
    web=`/usr/bin/pgrep httpd`
    if [ "$web" == "" ]
    then
    echo "the apacheserver not running"
    /opt/lampp/lampp startapache
    else
    echo "the apacheserver is running"
    fi


    3、修改文件属性,使其可执行
    chmod +x /usr/sbin/startpache
     
    4、修改/etc/crontab
    vi /etc/crontab
    #1分钟执行脚本检查程序是否正常运行
    */1 * * * * root /usr/sbin/startpache


    5、重新启动crond
    /etc/rc.d/init.d/crond restart


    ================
    每1分钟执行脚本检查mysql数据库是否正常运行,如果不正常则自动启动mysql服务


    vi /usr/sbin/startmysql


    加入如下内容:
    #检查mysql服务是否正常运行,如果停止了则拉起服务
    #!/bin/sh
    mysql=`/usr/bin/pgrep mysqld`
    if [ "$mysql" == "" ]
    then
    echo "the mysql not running"
    /opt/lampp/lampp startmysql
    else
    echo "the mysql server is running"
    fi


    3、修改文件属性,使其可执行
    chmod +x /usr/sbin/startmysql
     
    4、修改/etc/crontab
    vi /etc/crontab
    #1分钟执行脚本检查程序是否正常运行
    */1 * * * * root /usr/sbin/startmysql


    5、重新启动crond
    /etc/rc.d/init.d/crond restart






    Warning: Cannot modify header information - headers already sent by (output started at D:MYOAwebrootssoconfig.php:1) in D:MYOAwebroot outer.php on line 263
    修改php.ini文件output_buffering选项由off改为on


    添加root用户的权限修改需要重启mysql服务
  • 相关阅读:
    分块的一些题(入门)
    HH的项链
    2019 CCPC-Wannafly Winter Camp Div2 Day1
    2019 CCPC-Wannafly Winter Camp Div2 Day7
    HDU-5672 String(尺取)
    POJ-3104 Drying(二分
    Codeforces
    Java把内存划分为4个部分 1. 代码区 1、栈区 3、堆区 4、静态区域
    二:java语法基础:
    一:java概述:
  • 原文地址:https://www.cnblogs.com/reblue520/p/6239832.html
Copyright © 2020-2023  润新知