巨杉Tech | 使用 SequoiaDB 分散式資料庫搭建JIRA流程管理系統
介紹
JIRA是Atlassian公司出品的專案與事務跟蹤工具,被廣泛應用於缺陷跟蹤、客戶服務、需求收集、流程審批、任務跟蹤、專案跟蹤和敏捷管理等工作領域。很多企業與網際網路公司都在使用Jira作為內部流程管理系統,進行團隊協作與問題單 管理。
JIRA的後臺資料庫可以選擇使用嵌入式資料庫或MySQL/PGSQL等專業資料庫。一般來說,大部分企業選擇MySQL作為底層的資料儲存。但是,隨著問題工單的不斷積累,對於較大型企業來說MySQL所支撐的資料量可能很快達到瓶頸。使用者可以選擇使用SequoiaDB分散式資料庫替換MySQL預設的InnoDB引擎,在保持對Jira應用程式完整相容的前提下做到彈性橫向擴張。
JIRA 是目前比較流行的基於Java架構的管理系統,由於Atlassian公司對很多開源專案實行免費提供缺陷跟蹤服務,因此在開源領域,其認知度比其他的產品要高得多,而且易用性也好一些。同時,開源則是其另一特色,在使用者購買其軟體的同時,也就將原始碼也購置進來,方便做二次開發。JIRA功能全面,介面友好,安裝簡單,配置靈活,許可權管理以及可擴充套件性方面都十分出色。
通過閱讀本文,使用者可以瞭解到如何使用SequoiaDB巨杉資料庫的MySQL例項無縫替換標準MySQL資料庫。SequoiaDB巨杉資料庫允許使用者在不更改一行程式碼的情況下直接對已有應用進行後臺MySQL資料庫遷移。
通過使用SequoiaDB巨杉資料庫,使用者可以得到:
l 水平彈性擴張
l MySQL的100%全相容
l 優秀的交易效能
安裝SequoiaDB
本文使用Linux Ubuntu Server 18.10作為伺服器,SequoiaDB巨杉資料庫版本為3.2.1。
本教程預設使用sudo使用者名稱密碼為“sequoiadb:sequoiadb”,預設home路徑為/home/sequoiadb。
對於使用CentOS等其他Linux版本的使用者,本文所描述的流程可能略有不同,需要根據實際情況自行調整。
下載SequoiaDB標準虛擬機器模板的使用者可以直接跳過該安裝部署步驟。
1)下載並安裝SequoiaDB巨杉資料庫
$ 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 |
之後一直回車確認各個預設引數即可。
2) 使用資料庫例項使用者建立預設例項
$ sudo su sdbadmin $ /opt/sequoiadb/tools/deploy/quickDeploy.sh $ exit |
安裝JIRA
本教程使用JIRA 8.2.1。
1)使用者可以登入JIRA的官網 https://www.atlassian.com/software/jira/download 下載安裝包,或直接通過wget進行下載。
$ wget https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.2.1-x64.bin |
注: JIRA 官方安裝文件位於 |
2)執行安裝包
$ chmod 755 atlassian-jira-software-8.2.1-x64.bin $ sudo ./atlassian-jira-software-8.2.1-x64.bin |
3)預設情況下,測試版的JIRA不提供MySQL JDBC驅動,因此需要手工下載驅動包。由於當前JIRA版本不支援MySQL 8的驅動,因此需要下載MySQL 5.1.x的JDBC安裝包。
或直接通過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驅動拷貝至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)開啟SequoiaDB巨杉資料庫事務功能並設定預設隔離級別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)建立資料庫
$ /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 |
配置JIRA
1)使用瀏覽器登入伺服器IP地址的8080埠,選擇“ I’ll set it up myself ”
2)資料庫設定頁面選擇“ My Own Database ”,填入伺服器IP地址、jira資料庫名、以及sequoiadb:sequoiadb作為使用者名稱密碼
3 )點選 Test Connection 確認資料庫連線正確
4 )點選 Next 建立資料庫,並跟隨導航進入註冊頁面
5 )作為測試賬戶,使用者可以點選“ generate a Jira trial license ”並在官網註冊申請測試授權賬號
6 )將授權碼黏貼到安裝介面下並點選 Next ,使用者名稱密碼設定為預設 sequoiadb:sequoiadb
7 )完成安裝設定並建立一個預設 sequoiadb 的專案
切換資料庫至SequoiaDB
在 JIRA 的安裝部署程式中,預設指定了 InnoDB 作為所有表的儲存引擎。因此接下來使用者可以通過 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)匯出jira資料庫所有表
$ 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)重新建立jira庫並使用myloader匯入資料
$ /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)重新啟動JIRA服務
$ sudo /opt/atlassian/jira/bin/startup.sh |
7)重新登入瀏覽器,如今JIRA後臺所有的資料已經由MySQL遷移至SequoiaDB
結論
SequoiaDB巨杉資料庫作為一款分散式資料庫,提供包括結構化SQL、與非結構化檔案系統和物件儲存的機制。
通過SequoiaDB建立的MySQL例項,能夠提供與標準MySQL全相容的SQL與DDL能力,使用者無需調整DDL或SQL即可實現無縫透明地訪問分散式表結構。
本文向讀者展示瞭如何通過SequoiaDB的MySQL例項,實現與標準MySQL的無縫遷移。通過使用SequoiaDB巨杉資料庫,使用者可以在滿足標準ACID與MySQL協議的基礎上,實現近無限的彈性擴充套件能力。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31534344/viewspace-2647524/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 巨杉Tech|SequoiaDB 巨杉資料庫高可用容災測試資料庫
- SequoiaDB 巨杉資料庫資料庫
- SequoiaDB巨杉資料庫攜手民生銀行分散式資料管理平臺資料庫分散式
- 【巨杉資料庫SequoiaDB】巨杉Tech | 四步走,快速診斷資料庫叢集狀態資料庫
- SequoiaDB巨杉資料庫入門:快速搭建流媒體伺服器資料庫伺服器
- 【巨杉資料庫Sequoiadb】【諮詢】【資料操作】【索引】高併發 insert資料庫索引
- 【巨杉資料庫Sequoiadb】【諮詢】【集合】mysql端刪表卡住資料庫MySql
- 竹雲&巨杉資料庫:基於分散式資料庫打造微服務架構身份管理與訪問控制系統解決方案資料庫分散式微服務架構
- SequoiaDB分散式資料庫2023.2月刊分散式資料庫
- SequoiaDB分散式資料庫2023.1月刊分散式資料庫
- SequoiaDB分散式資料庫2022.11月刊分散式資料庫
- 對話巨杉核心研發團隊:分散式資料庫自研之路分散式資料庫
- 巨杉資料庫入選中國資料管理生態報告資料庫
- 分散式資料庫系統(DDBS) 概述分散式資料庫
- 巨杉資料庫:金融級資料庫未來方向資料庫
- 東華髮思特&巨杉資料庫:打造智慧城市分散式大資料聯合解決方案資料庫分散式大資料
- 巨杉核心筆記(一)| SequoiaDB 會話(session)簡介筆記會話Session
- 巨杉資料庫入選中國資料管理分析平臺格局報告資料庫
- 開源分散式資料庫SequoiaDB在去哪兒網的實踐分散式資料庫
- 【大資料】BigTable分散式資料儲存系統分散式資料庫 | 複習筆記大資料分散式資料庫筆記
- 【系統設計】分散式鍵值資料庫分散式資料庫
- 資料來源管理 | 分散式NoSQL系統,Cassandra叢集管理分散式SQL
- 巨杉資料庫完成C輪數千萬美元融資資料庫
- 分散式系統技術:儲存之資料庫分散式資料庫
- 分散式系統(Distributed System)資料分散式
- 分散式資料庫分散式資料庫
- 杉巖PACS影像系統分散式儲存架構分散式架構
- 巨杉資料庫中標廣州銀行影像內容管理平臺專案資料庫
- 資料庫與資料庫管理系統概述資料庫
- 分散式檔案系統fastdfs_搭建和基本使用分散式AST
- Calvin:分割槽資料庫系統的快速分散式事務資料庫分散式
- 巨杉資料庫入選2022愛分析·資料智慧廠商全景報告資料庫
- MyCat 啟蒙:分散式系統的資料庫架構演變分散式資料庫架構
- 分散式文件儲存資料庫之MongoDB索引管理分散式資料庫MongoDB索引
- Gartner 2018 資料庫系列報告發布巨杉資料庫連續兩年入選資料庫
- 用JIRA管理你的專案——(一)JIRA環境搭建
- 分散式作業管理系統 Asgard分散式
- 大資料 | 分散式檔案系統 HDFS大資料分散式