折腾COMPIERE开源ERP花了我整整两天时间,无结果,后来又见别人攒文说这个泊来品在中国有点水土不服。尤其是中国的那个所谓全权代理机构更是无耻,不但中文文档要钱,而且一些脚本故意插入一些不可见字符,在linux下安装时根本没法执行,需要参考里面的内容重新编辑一个同名脚本,然后覆盖老的才行。作为一家充其量只是代理的机构,目光就是这木短浅,否则它就不是一个小小的代理了!最后还是放弃了这个东东,转向了大陆的恩信erp,不但有完整的安装和操作文档,而且非常详细,图例丰富,脉络清晰,很容易上手。参照其安装文档,安装只花了一个下午全部搞定。
一、安装ubuntu server 7.10:
选择中文,加装mysql 5.0,openssh-server。配置mysql:
密码为空
把下面一行插入到[client]和[mysqld]节中:
default-character-set=utf8
ln -sv /etc/mysql/my.cnf /etc
重启动数据库:invoke-rc.d mysql restart
# apt-get install phpmyadmin ---安装mysql管理工具(http://localhost/phpmyadmin)
# mysql -uroot
sql> show variables like '%character\_%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
--表明字符集兼容中文,符合要求,如果上面出现拉丁语言,那么很可能会导致网页出现乱码。
sql> show datavases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
sql>quit;
二、安装JDK:
下载jdk-1_5_0_14-linux-i586.bin到/tmp/下;cd /usr/local; /tmp/jdk-1_5_0_14-linux-i586.bin
把下面三行加到/etc/profile的末尾:
export JAVA_HOME=/usr/local/jdk1.5.0_14
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
三、安装tomcat:
从恩信网站下载tomcat:
cd /tmp/
wget http://downloads.nseer.com/downloadfile/erpv6.30/jakarta-tomcat-5.0.28.tar.gz
cd /usr/local
tar zxvf /tmp/jakarta-tomcat-5.0.28.tar.gz
四、安装恩信ERP并导入基础数据:
从恩信网站下载ERPV6.30ForLinuxTomcat5MySQL5.tar.gz到/tmp下
# tar zxvf ERPV6.30ForLinuxTomcat5MySQL5.tar.gz
# cp -rp /root/ERPV6.30ForLinuxTomcat5MySQL5/erp /usr/local/jakarta-tomcat-5.0.28/webapps/
# cd /root/ERPV6.30ForLinuxTomcat5MySQL5/erp
# grep -l -R "www.nseer.com" ./* | xargs -i -t sed -i 's|www.nseer.com|www.vochi.com|g' {}
# grep -l -R "nseer" ./* | xargs -i -t sed -i 's|nseer|rely|g' {}
# cp ERPV6.30ForLinuxTomcat5MySQL5/ondemand1.sql /var/lib/mysqlnew/
# sed -i 's|www.nseer.com|www.relysz.com|g' /var/lib/mysqlnew/ondemand1.sql
# sed -i 's|nseer|rely|g' /var/lib/mysqlnew/ondemand1.sql
# mysql -uroot
sql> source /var/lib/mysqlnew/ondemand1.sql;
----时间较长,清耐心等待。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| ondemand1 |
+--------------------+
---新的数据库ondemand1已经创建了。
mysq1> quit;
# reboot
五、启动服务并登录:
数据库是随系统自动启动的,机器启动之后手工启动tomcat
# cd /usr/local/jakarta-tomcat-5.0.28/bin
# ./catalina.sh run
--这个窗口需要保留。
# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 3988/mysqld
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 4080/smbd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 4080/smbd
tcp6 0 0 ::ffff:127.0.0.1:8005 :::* LISTEN 4170/java
tcp6 0 0 :::8009 :::* LISTEN 4170/java
tcp6 0 0 :::8080 :::* LISTEN 4170/java
tcp6 0 0 :::22 :::* LISTEN 3894/sshd
--表明端口8080 / 8009 /18005处于监听状态,这时可以从其他机器上的浏览器登录了,输入网址:
http://192.168.0.238:8080/erp/home/login.jsp
点击右边的蓝色区域出现登录画面,输入用户nseer_admin和密码admin,选择中文,然后点击“登录”按钮。
设置tomcat随机器启动而自动启动,在/etc/rc.local中的exit 0行前加入下面列行即可:
export JAVA_HOME=/usr/local/jdk1.5.0_14
export JDK_HOME=$JAVA_HOME
/bin/sleep 5
/usr/local/jakarta-tomcat-5.0.28/bin/startup.sh&
---注意延时5秒是为了等mysql数据库启动完成。
六、美化界面:
点击左下角“恩信科技ERP”-->“时尚界面”,建议安装微软雅黑字体(linux下请参照我的博文“精彩的ubuntu安装、配置和管理之旅”安装雅黑字体),然后配置firefox网页浏览器:“编辑”-->“首选项”-->“内容”夹-->"默认字体“改为微软雅黑。
或直接修改文件/erp/home/login.jsp:
<input type="hidden" name="ui" value="2">改为<input type="hidden" name="ui" value="1">
七、备份数据库:
数据库由于是跑在虚拟机上,而且是ubuntu系统,这样一方面可以非常快地给客户实施,另一方面也存在不方便之处,其中备份就是一个,一般客户都是windows机器。我的思路是采用定时备份到某个目录,而这个目录通过samba对外输出,这样其他的windwos机器据可以以文件夹共享的方式访问ubuntu上的数据文件了——把备份出来的文件拷走。
# mkdir -p /var/lib/backup
# cat >> /etc/samba/smb.conf <<EOF
[nseer-data]
comment = 恩信ERP数据备份目录
path = /var/lib/backup
browserable = yes
public = yes
writable = no
EOF
同时把文中的security项并改成security = share
# invoke-rc.d samba restart
# cat >> /var/lib/backup/backup.sh <<EOF
#!/bin/bash
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/jdk1.5.0_14/
bin
JAVA_HOME=/usr/local/jdk1.5.0_14
LANG=C
LANGUAGE=C
CLASSPATH=.:/usr/local/jdk1.5.0_14/lib/dt.jar:/usr/local/jdk1.5.0_14/lib/tools.jar
n=`ls -1A /var/lib/backup/ondemand*|wc -l`
m=`expr $n - 4`
ls -1A /var/lib/backup/ondemand*|head -n $m|xargs -i -t rm -rf {}
/usr/bin/mysqldump --default-character-set=utf8 ondemand1 | gzip >/var/lib/backup/ondemand1-$(/bin/date +%F).gz
EOF
加一个任务:
0 17 * * * /var/lib/backup/backup.sh 1>/dev/null 2>&1
八、恢复数据库:
# mysql -uroot
mysql> drop database ondemand1;
mysql> create database ondemand1;
mysql> use ondemand1;
mysql> source /var/lib/backup/ondemand1-2008-02....
九、初始化
员工部分-->授权-->产品初始化:产品档案录入(所有产品和物料档案)
十、问题处理
update finance_config_file_first_kind
set details_yes_or_no='无'
where details_yes_or_no='有' and first_kind_id not in (select distinct first_kind_id from finance_config_file_second_kind where second_kind_name!='')
update finance_config_file_second_kind
set details_yes_or_no='无'
where details_yes_or_no='有' and concat(first_kind_id,second_kind_id) not in (select distinct concat(first_kind_id,second_kind_id) from finance_config_file_third_kind where third_kind_name!='' )
附录:
配置putty.exe-->SSH-->X11(勾选Enable X11 Forwarding)|-->windows-->Appearance:Font used in the terminal window=Font:fixedsys,12-point|-->Translation:Received data assumed to in which character set=UTF-8