您好,登錄后才能下訂單哦!
JIRA是Atlassian公司出品的項(xiàng)目與事務(wù)跟蹤工具,被廣泛應(yīng)用于缺陷跟蹤、客戶服務(wù)、需求收集、流程審批、任務(wù)跟蹤、項(xiàng)目跟蹤和敏捷管理等工作領(lǐng)域。很多企業(yè)與互聯(lián)網(wǎng)公司都在使用Jira作為內(nèi)部流程管理系統(tǒng),進(jìn)行團(tuán)隊(duì)協(xié)作與問(wèn)題單 管理。
JIRA的后臺(tái)數(shù)據(jù)庫(kù)可以選擇使用嵌入式數(shù)據(jù)庫(kù)或MySQL/PGSQL等專業(yè)數(shù)據(jù)庫(kù)。一般來(lái)說(shuō),大部分企業(yè)選擇MySQL作為底層的數(shù)據(jù)存儲(chǔ)。但是,隨著問(wèn)題工單的不斷積累,對(duì)于較大型企業(yè)來(lái)說(shuō)MySQL所支撐的數(shù)據(jù)量可能很快達(dá)到瓶頸。用戶可以選擇使用SequoiaDB分布式數(shù)據(jù)庫(kù)替換MySQL默認(rèn)的InnoDB引擎,在保持對(duì)Jira應(yīng)用程序完整兼容的前提下做到彈性橫向擴(kuò)張。
JIRA 是目前比較流行的基于Java架構(gòu)的管理系統(tǒng),由于Atlassian公司對(duì)很多開(kāi)源項(xiàng)目實(shí)行免費(fèi)提供缺陷跟蹤服務(wù),因此在開(kāi)源領(lǐng)域,其認(rèn)知度比其他的產(chǎn)品要高得多,而且易用性也好一些。同時(shí),開(kāi)源則是其另一特色,在用戶購(gòu)買(mǎi)其軟件的同時(shí),也就將源代碼也購(gòu)置進(jìn)來(lái),方便做二次開(kāi)發(fā)。JIRA功能全面,界面友好,安裝簡(jiǎn)單,配置靈活,權(quán)限管理以及可擴(kuò)展性方面都十分出色。
通過(guò)閱讀本文,用戶可以了解到如何使用SequoiaDB巨杉數(shù)據(jù)庫(kù)的MySQL實(shí)例無(wú)縫替換標(biāo)準(zhǔn)MySQL數(shù)據(jù)庫(kù)。SequoiaDB巨杉數(shù)據(jù)庫(kù)允許用戶在不更改一行代碼的情況下直接對(duì)已有應(yīng)用進(jìn)行后臺(tái)MySQL數(shù)據(jù)庫(kù)遷移。
通過(guò)使用SequoiaDB巨杉數(shù)據(jù)庫(kù),用戶可以得到:
l 水平彈性擴(kuò)張
l MySQL的100%全兼容
l 優(yōu)秀的交易性能
本文使用Linux Ubuntu Server 18.10作為服務(wù)器,SequoiaDB巨杉數(shù)據(jù)庫(kù)版本為3.2.1。
本教程默認(rèn)使用sudo用戶名密碼為“sequoiadb:sequoiadb”,默認(rèn)home路徑為/home/sequoiadb。
對(duì)于使用CentOS等其他Linux版本的用戶,本文所描述的流程可能略有不同,需要根據(jù)實(shí)際情況自行調(diào)整。
下載SequoiaDB標(biāo)準(zhǔn)虛擬機(jī)模板的用戶可以直接跳過(guò)該安裝部署步驟。
1)下載并安裝SequoiaDB巨杉數(shù)據(jù)庫(kù)
$ wget http://cdn.sequoiadb.com/images/sequoiadb/x86_64/sequoiadb-3.2.1-linux_x86_64.tar.gz $ tar -zxvf sequoiadb-3.2.1-linux_x86_64.tar.gz $ cd sequoiadb-3.2.1/ $ sudo ./setup.sh |
之后一直回車(chē)確認(rèn)各個(gè)默認(rèn)參數(shù)即可。
2) 使用數(shù)據(jù)庫(kù)實(shí)例用戶創(chuàng)建默認(rèn)實(shí)例
$ sudo su sdbadmin $ /opt/sequoiadb/tools/deploy/quickDeploy.sh $ exit |
本教程使用JIRA 8.2.1。
1)用戶可以登錄JIRA的官網(wǎng) https://www.atlassian.com/software/jira/download 下載安裝包,或直接通過(guò)wget進(jìn)行下載。
$ wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.2.1-x64.bin |
注: JIRA 官方安裝文檔位于 https://confluence.atlassian.com/adminjiraserver/installing-jira-applications-on-linux-938846841.html |
2)執(zhí)行安裝包
$ chmod 755 atlassian-jira-software-8.2.1-x64.bin $ sudo ./atlassian-jira-software-8.2.1-x64.bin |
3)默認(rèn)情況下,測(cè)試版的JIRA不提供MySQL JDBC驅(qū)動(dòng),因此需要手工下載驅(qū)動(dòng)包。由于當(dāng)前JIRA版本不支持MySQL 8的驅(qū)動(dòng),因此需要下載MySQL 5.1.x的JDBC安裝包。
或直接通過(guò)wget下載
$ wget https://downloads.mysql.com/archives/get/file/mysql-connector-java-5.1.46.tar.gz $ tar -zxvf mysql-connector-java-5.1.46.tar.gz |
4)將JDBC驅(qū)動(dòng)拷貝至JIRA的lib目錄下并重啟JIRA
$ sudo cp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46.jar /opt/atlassian/jira/lib/ $ sudo /opt/atlassian/jira/bin/shutdown.sh $ sudo /opt/atlassian/jira/bin/startup.sh |
5)開(kāi)啟SequoiaDB巨杉數(shù)據(jù)庫(kù)事務(wù)功能并設(shè)置默認(rèn)隔離級(jí)別RC
$ sudo su sdbadmin $ /opt/sequoiadb/bin/sdb > db = new Sdb() ; > db.updateConf ( { transactionon: true, transisolation: 1 } ) ; > quit ; $ /opt/sequoiadb/bin/sdbstop $ /opt/sequoiadb/bin/sdbstart |
6)創(chuàng)建數(shù)據(jù)庫(kù)
$ /opt/sequoiasql/mysql/bin/mysql -S /opt/sequoiasql/mysql/database/3306/mysqld.sock -u root mysql> create user 'sequoiadb'@'localhost' identified by 'sequoiadb'; mysql> create database jira; mysql> grant all on jira.* to 'sequoiadb'@'localhost'; mysql> grant all privileges on *.* to 'sequoiadb'@'%' identified by 'sequoiadb' with grant option; mysql> exit $ exit |
1)使用瀏覽器登錄服務(wù)器IP地址的8080端口,選擇“ I’ll set it up myself ”
2)數(shù)據(jù)庫(kù)設(shè)置頁(yè)面選擇“ My Own Database ”,填入服務(wù)器IP地址、jira數(shù)據(jù)庫(kù)名、以及sequoiadb:sequoiadb作為用戶名密碼
3 )點(diǎn)擊 Test Connection 確認(rèn)數(shù)據(jù)庫(kù)連接正確
4 )點(diǎn)擊 Next 創(chuàng)建數(shù)據(jù)庫(kù),并跟隨導(dǎo)航進(jìn)入注冊(cè)頁(yè)面
5 )作為測(cè)試賬戶,用戶可以點(diǎn)擊“ generate a Jira trial license ”并在官網(wǎng)注冊(cè)申請(qǐng)測(cè)試授權(quán)賬號(hào)
6 )將授權(quán)碼黏貼到安裝界面下并點(diǎn)擊 Next ,用戶名密碼設(shè)置為默認(rèn) sequoiadb:sequoiadb
7 )完成安裝設(shè)置并創(chuàng)建一個(gè)默認(rèn) sequoiadb 的項(xiàng)目
在 JIRA 的安裝部署程序中,默認(rèn)指定了 InnoDB 作為所有表的存儲(chǔ)引擎。因此接下來(lái)用戶可以通過(guò) mydumper 與 myloader 將 InnoDB 的表切換至 SequoiaDB 。
1 )停止 JIRA
$ sudo /opt/atlassian/jira/bin/shutdown.sh |
2)下載mydumper
$ wget https://github.com/maxbube/mydumper/releases/download/v0.9.5/mydumper_0.9.5-2.xenial_amd64.deb $ sudo dpkg -i mydumper_0.9.5-2.xenial_amd64.deb |
3)導(dǎo)出jira數(shù)據(jù)庫(kù)所有表
$ sudo su – sdbadmin $ mkdir temp $ mydumper -h 10.211.55.14 -P 3306 -u sequoiadb -p sequoiadb -t 16 -F 64 -B jira -o ./temp |
4)將所有InnoDB表替換為SequoiaDB引擎
$ sed -i "s/InnoDB/SequoiaDB/g" `grep -R "InnoDB" -rl ./temp` |
5)重新創(chuàng)建jira庫(kù)并使用myloader導(dǎo)入數(shù)據(jù)
$ /opt/sequoiasql/mysql/bin/mysql -S /opt/sequoiasql/mysql/database/3306/mysqld.sock -u root mysql> drop database jira; mysql> create database jira; mysql> grant all on jira.* to 'sequoiadb'@'localhost'; mysql> exit $ myloader -h 10.211.55.14 -u sequoiadb -p sequoiadb -P 3306 -t 32 -d ./temp $ exit |
6)重新啟動(dòng)JIRA服務(wù)
$ sudo /opt/atlassian/jira/bin/startup.sh |
7)重新登錄瀏覽器,如今JIRA后臺(tái)所有的數(shù)據(jù)已經(jīng)由MySQL遷移至SequoiaDB
SequoiaDB巨杉數(shù)據(jù)庫(kù)作為一款分布式數(shù)據(jù)庫(kù),提供包括結(jié)構(gòu)化SQL、與非結(jié)構(gòu)化文件系統(tǒng)和對(duì)象存儲(chǔ)的機(jī)制。
通過(guò)SequoiaDB創(chuàng)建的MySQL實(shí)例,能夠提供與標(biāo)準(zhǔn)MySQL全兼容的SQL與DDL能力,用戶無(wú)需調(diào)整DDL或SQL即可實(shí)現(xiàn)無(wú)縫透明地訪問(wèn)分布式表結(jié)構(gòu)。
本文向讀者展示了如何通過(guò)SequoiaDB的MySQL實(shí)例,實(shí)現(xiàn)與標(biāo)準(zhǔn)MySQL的無(wú)縫遷移。通過(guò)使用SequoiaDB巨杉數(shù)據(jù)庫(kù),用戶可以在滿足標(biāo)準(zhǔn)ACID與MySQL協(xié)議的基礎(chǔ)上,實(shí)現(xiàn)近無(wú)限的彈性擴(kuò)展能力。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。