由於運作三年的JIRA server當初是架在CENT OS 6上面
為了使用BigPicture輸出pdf檔的功能
偏偏CENT OS 6已經不支援該套件會用到的node.js功能
所以只好想辦法移機
但是上面已經有2萬多筆案件紀錄,做起來真的很抖
最後試出來了,先簡單紀錄一下,剩下proxy pass的部份還沒辦法設定
希望到CENTOS 7上面可以解決在reverse proxy後面始終連不上marketplace 的問題@@
1. 備份重要檔案
/opt/atlassian/jira是安裝程式主目錄,基本上全新安裝後,只要複製部份檔案回去就好,千萬不要直接tar還原備份
mysqldump備份資料庫
/var/atlassian/這個是所有案件及前端頁面等等使用的目錄,直接整包tar還原就可以
2. 安裝CENTOS-7設定java JRE及資料庫mariadb等等
2-1. 下載安裝程式
atlassian-jira-software-7.6.1-x64.bin 授權是7.6.1就只能用這個版本的安裝程式
安裝過程選擇[2]custom install 安裝完成會問要不要寫到systemd當作開機服務,先不要,因為要先還原備份檔
2-2.複製mysql-connector
安裝完成後,一定要複製這個到jira安裝目錄下,先到網路下載
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.23.tar.gz
tar zxvf mysql-connector-java-8.0.23.tar.gz
cp mysql-connector-java-8.0.23/mysql-connector-java-8.0.23.jar /opt/atlassian/jira/lib/
2-3.設定mysql
把engine改成INNODB,5.5.5-10.5.9-MariaDB 改成放在server.cnf
vim /etc/my.cnf.d/server.cnf
[mysqld]
default-storage-engine=innodb
systemctl restart mariadb
這邊為了和原本設定相同就不用改jira的dbconfig.xml,直接設定成和原本的一樣
CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'jira'@'localhost' IDENTIFIED BY 'your_password';
grant all privileges on jiradb.* to 'jira'@'%' identified by 'your_password';
到這邊本機CENTOS7準備好了
3.還原備份檔
3-1.還原資料庫
mysql -u root --password=xxxxxx jiradb < /root/jira_mysql_20210319.sql
3-2.還原jira home
tar -xf jira_web_20210319.tgz -C /
再把舊機上的/opt/atlassian/jira目錄包起來,到新機上解壓縮
3-3.還原相關設定檔(/opt/atlassian/jira/)
yes | \cp -Rp /opt/old_jira/opt/atlassian/jira/temp/* /opt/atlassian/jira/temp/
yes | \cp -Rp -f /opt/old_jira/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/* /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/
yes | \cp -Rp -f /opt/old_jira/opt/atlassian/jira/atlassian-jira/WEB-INF/application-installation/* /opt/atlassian/jira/atlassian-jira/WEB-INF/application-installation/
yes | \cp -Rp -f /opt/old_jira/opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/* /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/
yes | \cp -Rp -f /opt/old_jira/opt/atlassian/jira/atlassian-jira/WEB-INF/osgi-framework-bundles/* /opt/atlassian/jira/atlassian-jira/WEB-INF/osgi-framework-bundles/
yes | \cp -Rp -f /opt/old_jira/opt/atlassian/jira/atlassian-jira/WEB-INF/classes/* /opt/atlassian/jira/atlassian-jira/WEB-INF/classes/
基本上在/opt/atlassian/jira/atlassian-jira/WEB-INF/ 目錄下的五個子目錄還原就好
lib/
application-installation/
atlassian-bundled-plugins/
osgi-framework-bundles/
classes/
這邊會遇到一個cp -i的問題,一直問要不要複寫已經存在的檔案
所以可以執行 alias 解除 unalias cp
或是在cp前面加反斜線 \
還有一個重點是在/var/atlassian/application-data/jira/目錄下的 dbconfig.xml
內有舊機上mysql jiradb裡的管理者帳密,如果沒有和舊機設定相同,就要重新改過
MariaDB [(none)]> SET PASSWORD FOR 'jira'@'localhost' = PASSWORD('your_new_password');
做完之後我就可以順利在/opt/atlassian/jira/bin/startup.sh啟動JIRA了
但是add-on有些自己安裝的插件會被取消啟動,不知道為什麼@@
總之要自己手動到cog齒輪->add-ons去一個個啟動enable就正常了
先到這邊