禅道从windows向linux的迁移记录
迁移环境
原环境 迁移后环境 Windows Server 2012 R2 Datacenter Alibaba Cloud Linux release 3 zentao 12.5.3 xampp一键安装包 zentao 12.5.3 源码安装 Mysql 5.7.19 Mysql 5.7.35 PHP 7.2.33 PHP 7.4.19 apache nginx
迁移步骤
官网下载源码 上传到服务器,解压源码 nignx配置
server {
listen 80;
server_name localhost zentaopms.mywebsite.com;
charset utf-8;
root /data/zentaopms/www;
index index.php index.html;
access_log /var/log/nginx/access.log main;
location / {
root /data/zentaopms/www;
index index.php index.html;
}
location ~ \.php$ {
root /data/zentaopms/www;
fastcgi_pass unix:/var/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 500 502 503 504 /404.html;
location = /404.html {
root html;
}
}
初始化安装,配置数据库,数据库需要使用新数据库,服务成功访问后,修改为迁移数据库 还原原始数据,主要是禅道中上传的文档、文件等等
源数据:
X:\zentao\xampp\zentao\www\data\upload
迁移后:
/data/zentaopms/www/data/upload
迁移过程问题
数据库备份与还原问题 数据库在进行备份与还原时,遇到datatime字段值’0000-00-00 00:00:00’问题、text/blob等字段不能默认值问题,通过修改sql_mode解决
Incorrect datetime value: ‘0000-00-00 00:00:00’ for column ‘createTime’ at row 1
BLOB, TEXT, GEOMETRY or JSON column ‘description’ can’t have a default value
set global sql_mode='';
set global sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
目录不可写问题 禅道源码部署初始化时,需要读写www与data目录权限,设置都已经完成,但是依然无法检测环境通过,因为SELINUX导致,临时关闭即可
setenforce=o