通達OA2008從windows環境移植到linux部署手冊

通達OA2008從windows環境移植到linux中(centos5.5及以上版本)php

OA系統拓撲圖:


環境搭建(安裝lamp環境)

1.安裝xampp集成lamp包xampp-linux-1.6.8a.tar.gz

①安裝:

tar xvfz xampp-linux-1.6.8a.tar.gz -C /opt html


將服務器添加代理(方便上網安裝軟件)前端

vi /etc/yum.confmysql

在最後一行加入linux

proxy=http://192.168.3.139:808web


安裝vlock工具(安全須要)sql

yum install -y vlock數據庫


安裝zip工具apache

yum install -y unzip zipvim


注意:

在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目錄下便可


發現無方法訪問,原來是開啓了防火牆

查看防火牆信息:

#/etc/init.d/iptables status

關閉防火牆服務:

#/etc/init.d/iptables stop


服務器時間調整

date -s 06/21/2014  將當前系統時間調整爲2014年6月21日

date -s 18:39 將當前系統時間調整爲18:39

hwclock -w 將系統時間寫入硬件


②經過/opt/lampp/lampp security設置服務密碼


a.修改php.ini文件運行上傳最大文件大小(/opt/lampp/etc/php.ini)(若是不經過phpmyadmin本地執行sql文件,不須要設置該項)

①/opt/lampp/etc目錄下的php.ini文件

upload_max_filesize
post_max_size
include_path = ".:/opt/lampp/htdocs/td"
.:/opt/lampp/htdocs/MYOA/webroot
upload_tmp_dir = /tmp

②/opt/lampp/phpmyadmin目錄下的import.php文件

$memory_limit = 8 * 1024 * 1024;

b.修改apache的httpd.conf文件(/opt/lampp/etc/http.conf)將根目錄指向OA的web目錄

DocumentRoot "/opt/lampp/htdocs/MYOA/webroot"

修改容許經過非ssl通道訪問

<Directory />
    Options FollowSymLinks
    AllowOverride None
    #XAMPP
    #Order deny,allow
    Allow from all
</Directory>

c.編輯/opt/lampp/etc/my.cnf文件容許網絡訪問mysql

#skip-networking     //註釋掉該選項

2.準備通達OA2008 PHP程序

在windows中安裝好通達OA,MYOA整個文件打包(2008不支持linux下的註冊,因此要先破解)

修改MYOA/webroot/general/mytable下的文件名爲英文避免亂碼(一併修改mytable表中的MODULE_FILE字段文件名爲對應的英文文件名)

打包myoa/webroot下的全部文件成webroot.zip,上傳到/opt/lampp/htdocs/td目錄中並解壓

unzip webroot.zip

3.將td_oa數據庫導出成sql文件(或者直接將整個數據庫拷貝過去放在/opt/lampp/var/mysql目錄下)

①/opt/lampp/bin/mysql -u root -p

建立數據庫TD_OA;

use TD_OA;

source /opt/td_oa.sql;

②將表名全修改成大寫,運行後拷貝生成的sql腳本語句在phpmyadmin中運行便可,修改全部TD_OA數據庫表文件爲777的權限(chmod 777 /opt/lampp/var/TD_OA/*.*)

==================================================

<?php
header('content-type:text/html;charset=utf-8');
//將數據庫表名所有轉換成大寫
//鏈接數據庫
$conn=mysql_connect('localhost:3336','root','myoa888');
if(!$conn) {

   print_r(mysql_error());

}
//選庫
$sql='use td_oa';
mysql_query($sql) or die('select database error');
//設置字符集
$sql='set names utf8';
mysql_query($sql);
$sql = 'show tables';
$res = mysql_query($sql);
$tables = array();
while($row = mysql_fetch_row($res)){
    $up = strtoupper($row[0]);
    $sql = "alter table `".$row[0]."` rename `".$up."`";
    echo $sql,'<br />';
}
?>

==================================================

③修改MYOA/inc/oa_config.php

if($ROOT_PATH=="")

$ROOT_PATH="/opt/lampp/htdocs/MYOA/webroot/";

//-- 附件路徑配置(Unix/Linux) --

//$ATTACH_PATH="/myoa/attachment/";

//$ATTACH_PATH2="/myoa/attach/";

$ATTACH_PATH="/opt/lampp/htdocs/MYOA/attachment/";

$ATTACH_PATH2="/opt/lampp/htdocs/MYOA/attach/";

//-- MYOA數據庫配置 --

$MYSQL_SERVER="localhost:3336";
$MYSQL_USER="root";
$MYSQL_DB="TD_OA";
$MYSQL_PASS="pass";

4.安裝ZendOptimizer

上傳ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz到/opt目錄

解壓並安裝

gzip -d ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz

tar xvf ZendOptimizer-3.3.0a-linux-glibc21-i386.tar

cd ZendOptimizer-3.3.0a-linux-glibc21-i386

sh install.sh

配置其中php.ini文件路徑,如圖


若是是64位的centos須要指定apache路徑

mysql修改數據庫名稱直接能夠用phpmyadmin

訪問公告報錯There is no 'root'@'127.0.0.1' registered,開啓my.cnf文件網絡訪問便可

編輯/opt/lampp/etc/my.cnf文件容許網絡訪問mysql

#skip-networking     //註釋掉該選項

mysql修改數據庫名稱直接能夠用phpmyadmin

功能增強:

①修改啓動項,讓mysql,apache服務隨系統啓動

方法一

vi /etc/rc.d/rc.local

在最後加入啓動指令

web服務器設置

/opt/lampp/lampp startapache

/opt/lampp/lampp startftp

mysql數據庫服務器

/opt/lampp/lampp startmysql

方法二

egrep :initdefault: /etc/inittab  #查看系統默認啓動級別

cd /etc/rc.d/rc3.d 

ln -s /opt/lampp/lampp S99lampp

ln -s /opt/lampp/lampp K01lampp

後續工做

1、二次開發文件上傳

1.JS文件上傳(webroot\inc\js\custom文件上傳)

2.自動計劃任務上傳(webroot\widget)

3.PHP插件上傳(F:\23620131125\webroot\general\workflow\plugin\turn)

***4.會議室和車輛申請附件頁面關閉(信息安全)


2、修改目錄權限

chmod -R 777 /opt/lampp/htdocs/MYOA/attach


3、附件同步主要是針對發文(web1和web2)

MYOA\attach

4、單點登陸文件同步

SSO文件夾

5、全部的視圖都要從新建(表名改成了大寫 考勤、運營平臺)

alter table rtx_user rename RTX_USER

alter table ehr_user rename EHR_USER

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"

②在web和mysql數據庫中分別添加計劃任務檢測mysql和apache服務是否正常運行若是沒有正常運行則啓動服務

③天天備份mysql數據庫並刪除15天之前備份

#關閉mysql數據庫服務
service mysqld stop
#建立以當前日期爲名稱的目錄
cd /backup/mysqlbak
time=$(date '+%Y%m%d')
mkdir $time
cp /data/mydata/TD_OA/*.* /backup/mysqlbak/$time
#備份完成後開啓mysql數據庫服務
service mysqld start
service vsftpd start
#刪除15天之前的備份
find /backup/mysqlbak -type d -mtime +15 -exec rm -rf {} \;
#設置備份目錄的權限,方便其餘服務器備份
chmod -R 777 /backup/mysqlbak/

計劃任務:
# vim /etc/crontab
01 3 * * * mysql /usr/sbin/bakmysql

④/opt/lampp/etc/my.cnf文件修改優化(優化mysql)

====================================================================================================

OA系統由windows切換linux系統計劃

1.發送郵件通知

各位同事:

       你們好!6月21日晚上8點至6月22日下午3點OA系統將進行切割以改善性能,期間將暫停訪問,請你們相互轉告!

      週六15:00前、週日15:00後正常服務,請週末加班的同事儘量在服務時間使用,帶來不便敬請諒解!

                                                                                                                       IT部

   XX年-XX月-XX日

2.部署好linux web和linux mysql數據庫

3.中止OA系統訪問(關閉前端apache和數據庫Mysql服務)

拷貝TD_OA成另一份

4.切換數據庫系統(前提是部署好linux web1和linux web2)

5.內網和外網IP切換:

6.測試

①局域網IP可否訪問

②經過域名可否訪問

③可否經過門戶訪問

④測試方案中的功能點

相關文章
相關標籤/搜索