通达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:\MYOA\webroot\sso\config.php:1) in D:\MYOA\webroot\router.php on line 263

修改php.ini文件output_buffering选项由off改为on





添加root用户的权限修改需要重启mysql服务

通达OA在centos系统中快速部署文档(web和数据库)的更多相关文章

  1. Python sphinx-build在Windows系统中生成Html文档

    看到前同事发布的“Markdown/reST 文档发布流水线”基于TFS.Docker.Azure等工具和平台进行文档发布的介绍说明,不得不在心中暗暗竖起大拇指.这套模式,实现了文档编写后版本管理.发 ...

  2. Indri中的动态文档索引技术

    Indri中的动态文档索引技术 戴维 译 摘要: Indri 动态文档索引的实现技术,支持在更新索引的同时处理用户在线查询请求. 文本搜索引擎曾被设计为针对固定的文档集合进行查询,对不少应用来说,这种 ...

  3. CentOS系统中last命令的作用

    CentOS系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统. 格式 last [—R] [—n] ...

  4. 如何在CentOS系统中安装配置SNMP服务

    CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络 ...

  5. 在Centos系统中基于PowerDNS和Poweradmin自建域名解析服务器替代DnsPod

    本文讲述了我在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.通过本文所述方法,可以建立权威域名解析服务器的m ...

  6. 教你在Kubernetes中快速部署ES集群

    摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...

  7. 在 K8S 中快速部署 Redis Cluster & Redisinsight

    Redis Cluster 部署 使用 Bitnami helm chart 在 K8S redis 命名空间中一键部署 Redis cluster . helm repo add bitnami h ...

  8. Redis集群部署文档(Ubuntu15.10系统)

    Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如 ...

  9. 以windows服务方式快速部署免安装版Postgres数据库

    目录 以windows服务方式快速部署免安装版Postgres数据库 1.下载Postgresql数据库免安装包 2.安装环境准备及验证 解压文件 测试环境依赖 3.创建并初始化数据目录 创建数据目录 ...

随机推荐

  1. 算法入门及其C++实现

    https://github.com/yuwei67/Play-with-Algorithms (nlogn)为最优排序算法 选择排序 整个数组中,先选出最小元素的位置,将该位置与当前的第一位交换:然 ...

  2. 【hihocoder】 Magic Box

    题目1 : Magic Box 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 The circus clown Sunny has a magic box. When ...

  3. C# TextBox猜想输入和历史记录输入

    什么是猜想输入 当我们在使用查询应用时,输入某个关键字后文本框下面就会自动弹出跟此关键字相附的词组供我们选择,为我们节省了输入的时间,这就是猜想输入,例如:百度,谷歌,等等,如下图: 如上图所示,使用 ...

  4. 5G时代的到来,会给生活带来什么改变?

    本文首发于:风云社区. 据百度百科介绍,5G网络是第五代移动通信网络,其峰值理论传输速度可达每秒数十Gb,比4G网络的传输速度快数百倍.举例来说,整部超高画质电影可在1秒之内下载完成.   5G网络已 ...

  5. Prometheus+grafana搭建

    一.简介 1.1 Prometheus Prometheus是一套开源的监控系统,它将所有信息都存储为时间序列数据:因此实现一种Profiling监控方式,实时分析系统运行的状态.执行时间.调用次数等 ...

  6. 【float】与【position】汇总

    代码示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  7. IoC之Spring.Net在Mvc项目中的使用

    MVC中使用Spring.net 前面学习了使用Autofac来实现控制反转,这里简单记录Spring.Net实现IoC和DI的步骤 第一步:安装如下Nuget包 (Spring.Web.Mvc) i ...

  8. js/jquery控制页面动态加载数据 滑动滚动条自动加载事件--转他人的

    js/jquery控制页面动态加载数据 滑动滚动条自动加载事件--转他人的 相信很多人都见过瀑布流图片布局,那些图片是动态加载出来的,效果很好,对服务器的压力相对来说也小了很多 有手机的相信都见过这样 ...

  9. ThinkPHP 3.2公共类库、应用类库ThinkPHP/Library讲解

    一.ThinkPHP的类库主要包括公共类库和应用类库,都是基于命名空间进行定义和扩展的.只要按照规范定义,都可以实现自动加载.        公共类库 公共类库通常是指ThinkPHP/Library ...

  10. Storm Topology 提交 总结---Kettle On Storm 实现

    一,目的 在学习的过程中,需要用到 PDI---一个开源的ETL软件.主要是用它来设计一些转换流程来处理数据.但是,在PDI中设计好的 transformation 是在本地的执行引擎中执行的,(参考 ...