1 linux下安装mantis
1.1 系统由windows平台转换到linux平台
1.1.1 备份mysql数据库
#####################打开DOS窗口##########################
【开始】-【运行】-【cmd】
#####################在mysql bin文件夹中将bugtracker数据库备份到.sql文件中############################
C:/mysql/bin> mysqldump -u[mysql用户名] -p[mysql数据库] bugtracker> D:/mantis.sql
1.1.2 备份windows下mantis文件夹中所有文件
注意不要改变原有mantis文件夹得名称
1.1.3 准备linux服务器
使用的版本CentOS
1.1.4 更改mysql root的密码
# mysql -p
Enter password:[默认为空]
mysql> update user set password=password('新密码') where User='root';
mysql> flush privileges
退出重新登陆
# mysql -p
Enter password:[新密码]
1.1.5 创建数据库
mysql> create datebase bugtracker;
use bugtracker
1.1.6 导入原有数据【mantis.sql】
#####################例如mantis.sql文件放在linux系统的/home/目录下
mysql> source /home/mantis.sql
1.1.7 将备份的mantis文件夹放入/var/www/html/中
注:我是先将其放入linux的ftp资源中然后通过如下命令导入
scp -r mantis-1.0.0a3 [linux服务器]:/var/www/html/
1.1.8 httpd.conf文件配置
vi /etc/httpd/conf/httpd.conf
找到DocumentRoot "/var/www/html" 更改为DocumentRoot "/var/www/html/mantis-1.0.0a3" 目的:输入ip地址后直接弹出登陆页面
找到 AddDefaultCharset UTF-8 更改为#AddDefaultCharset UTF-8 目的:解决mantis中文显示为乱码问题
1.1.9 更改mantis配置文件
vi /var/www/html/mantis-1.0.0a3/config_inc.php
找到$g_db_password 更改为$g_db_password = "步骤1.1.4中修改后的新密码"
找到$g_jpgraph_path = 'c:/mantis-1.0.0a3/jpgraph-2.1.1/src/'更改为$g_jpgraph_path = '/var/www/html/mantis-1.0.0a3/jpgraph-2.1.1/src/';
找到$g_log_destination = 'file:c:/mantis-1.0.0a3/upload/mantis.log' 并注释掉
1.1.10 修改jpgraph的配置文件
vi /var/www/html/mantis-1.0.0a3/jpgraph-2.1.1/src/jpg-config.inc.php
找到DEFINE("TTF_DIR","c:/windows/fonts/"); 更改为DEFINE("TTF_DIR","/var/www/html/mantis-1.0.0a3/font/")
1.1.11 在windows系统中拷贝simhei.ttf simsun.ttc
在windows系统中的c:/windows/fonts/复制simhei.ttf simsun.ttc 到linux系统/var/www/html/mantis-1.0.0a3/font/目录下
1.1.12 转换完成 IP地址栏输入http://linux系统IP/ 即可进入mantis登陆页面
问题点汇总:
【问题】移植后mantis无法打开并下载附件
【问题原因】数据库中保存的项目的路径中存在"/"及"/",而linux下只认"/"
【解决方法】
登陆mysql数据库,进入数据库bugtracker,执行如下命令:
-------------------------------------------------------------------------------
update mantis_bug_file_table a set folder=replace(a.folder,'//','/'),diskfile=replace(a.diskfile,'//','/');
update mantis_project_table a set file_path=replace(a.file_path,'//','/');
update mantis_project_file_table a set folder=replace(a.folder,'//','/'),diskfile=replace(a.diskfile,'//','/');