通达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:\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和数据库)的更多相关文章
- Python sphinx-build在Windows系统中生成Html文档
看到前同事发布的“Markdown/reST 文档发布流水线”基于TFS.Docker.Azure等工具和平台进行文档发布的介绍说明,不得不在心中暗暗竖起大拇指.这套模式,实现了文档编写后版本管理.发 ...
- Indri中的动态文档索引技术
Indri中的动态文档索引技术 戴维 译 摘要: Indri 动态文档索引的实现技术,支持在更新索引的同时处理用户在线查询请求. 文本搜索引擎曾被设计为针对固定的文档集合进行查询,对不少应用来说,这种 ...
- CentOS系统中last命令的作用
CentOS系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统. 格式 last [—R] [—n] ...
- 如何在CentOS系统中安装配置SNMP服务
CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,现在有一大部分服务器在使用此操作系统:SNMP(简单网络 ...
- 在Centos系统中基于PowerDNS和Poweradmin自建域名解析服务器替代DnsPod
本文讲述了我在Centos 7系统(其他版本的Centos未尝试)中基于PowerDNS和poweradmin自建域名解析服务器替代DnsPod的过程.通过本文所述方法,可以建立权威域名解析服务器的m ...
- 教你在Kubernetes中快速部署ES集群
摘要:ES集群是进行大数据存储和分析,快速检索的利器,本文简述了ES的集群架构,并提供了在Kubernetes中快速部署ES集群的样例:对ES集群的监控运维工具进行了介绍,并提供了部分问题定位经验,最 ...
- 在 K8S 中快速部署 Redis Cluster & Redisinsight
Redis Cluster 部署 使用 Bitnami helm chart 在 K8S redis 命名空间中一键部署 Redis cluster . helm repo add bitnami h ...
- Redis集群部署文档(Ubuntu15.10系统)
Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如 ...
- 以windows服务方式快速部署免安装版Postgres数据库
目录 以windows服务方式快速部署免安装版Postgres数据库 1.下载Postgresql数据库免安装包 2.安装环境准备及验证 解压文件 测试环境依赖 3.创建并初始化数据目录 创建数据目录 ...
随机推荐
- Android原生(Native)C开发之四:SDL移植笔记
http://www.apkbus.com/forum.php?mod=viewthread&tid=1989 SDL(Simple DirectMedia Layer)是一套开放源码的跨平台 ...
- 【洛谷P2607】骑士 没有上司的舞会+
题目大意:给定一个 N 个点的外向树森林,点有点权.从该树中选出若干顶点组成一个集合,满足任意相邻的两个顶点不同时出现在该集合中,求这样集合中点权和的最大值为多少. 题解:与树相比,该题多了环这个结构 ...
- Android开发属性动画
普通动画效果和属性动画效果区别: 普通动画效果的动画播放后只是产生了视觉欺骗,并没有移动真实的控件. 属性动画直接真实的移动控件 AnimationSet动画: TextView t1 = (Text ...
- 和我一起使用webpack构建react项目
第一步:初始化项目并创建package.json文件 第二步:创建webpack.config.js文件,并写入配置. 第三步:安装webpack以及创建es6语法环境,要将html作为模板文件解析的 ...
- maven中修改可用的版本
一般情况下,我们都是建项目,写代码,然后再部署运行的.到最后因为版本问题无法部署的情况下怎么办?重新建项目,然后导代码,这太麻烦了. 一般的处理情况:在项目的硬盘目录中,找到.setting文件夹下的 ...
- excel自动化翻译2
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- C#怎么调用百度地图Web API
直接上代码: public ActionResult FindMileage() { string s; HttpWebRequest req = (HttpWebRequest)HttpWebReq ...
- RocketMQ之消息幂等
幂等(idempotent.idempotence)是一个数学与计算机学概念,常见于抽象代数中. 在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同. 首先我们了解一下什么是 ...
- PHP7 学习笔记(八)JetBrains PhpStorm 2017.1 x64 MySQL数据库管理工具的使用
填写基本信息 这时候我们可以看到已经连接成功的数据库了 打开一个表,我们可以很清楚的看到数据库表的数据 切换到DDL模式
- 神级程序员通过两句话带你完全掌握Python最难知识点——元类!
千万不要被所谓"元类是99%的python程序员不会用到的特性"这类的说辞吓住.因为 每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生 ...