持續集成篇SonarQube 代碼質量管理平臺的安裝

持續集成篇node

SonarQube 代碼質量管理平臺的安裝mysql

--------------------------------linux

一、SonarQube的介紹 SonarQube是一個管理代碼質量的開放平臺。

 

能夠從七個維度檢測代碼質量(爲何要用SonarQube):web

(1) 複雜度分佈(complexity):代碼複雜度太高將難以理解、難以維護sql

(2) 重複代碼(duplications):程序中包含大量複製粘貼的代碼是質量低下的表現數據庫

(3) 單元測試(unit tests):統計並展現單元測試覆蓋率瀏覽器

(4) 編碼規範(coding rules):經過Findbugs,PMD,CheckStyle等規範代碼編緩存

(5) 註釋(comments):少了可讀性差,多了看起來費勁服務器

(6) 潛在的Bug(potential bugs):經過Findbugs,PMD,CheckStyle等檢測潛在的bugtcp

(7) 結構與設計(architecture & design):依賴、耦合等

Sonar 能夠集成不一樣的測試工具、代碼分析工具、持續集成工具、IDE。

Sonar經過對代碼質量分析結果數據進行再加工處理,經過量化的方式來度量代碼質量的變化,

從而能夠方便地對工程進行代碼質量管理。

支持的語言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。 

 

一、SonarQube的介紹

 

SonarQube平臺的組成:
(1) 數據庫:存放SonarQube的配置數據、代碼質量的快照數據

(2) Web服務:用於查看SonarQube的配置數據、代碼質量的快照數據

(3) 分析器:對項目代碼進行分析,生成質量結果數據並存入數據庫中

(分析器有多種,咱們選用 SonarQube Maven Plugin) 

 

 

IP:192.168.103.212
環境:CentOS 6.六、JDK七、MySQL5.1 、SonarQube-4.5.4(LTS) root 用戶操做
準備工做:已安裝 JDK7 並配置好了環境變量

1 、安裝 MySQL5.1
(可參考前面 SVN 管理平臺的 MySQL 安裝步驟,若是已安裝則無需安裝)
# rpm -qa | grep mysql

## 查看該操做系統上是否已經安裝了 mysql 數據庫, 有的話,能夠經過 rpm -e 命令 或者 rpm -e --nodeps 命令來卸載掉
# yum install mysql-server mysql mysql-devel
# service mysqld start

# chkconfig --list | grep mysqld
mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off 用上面的命令查看到 MySQL 並無設置開機啓動,因此須要設置開機啓動
# chkconfig mysqld on

爲了方便遠程管理,防火牆中打開 3306 端口
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 重啓防火牆,使端口配置生效
# service iptables restart

設置 MySQL 數據庫 root 用戶的密碼:
# mysqladmin -u root password 'wusc.123' 登陸數據庫:
# mysql -u root -p

MySQL 受權遠程訪問(先用 root 登陸 mysql)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wusc.321' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

二、配置 MySQL
結合 SonarQube,MySQL 數據庫最好使用 InnoDB 引擎,可提升性能。 看你的 mysql 如今已提供什麼存儲引擎:mysql> show engines;

 

看你的 mysql 當前默認的存儲引擎:
mysql> show variables like '%storage_engine%';

修改 MySQL 存儲引擎爲 InnoDB, 在配置文件/etc/my.cnf 中的 [mysqld] 下面加入 default-storage-engine=INNODB

重啓 mysql 服務器
# service mysqld restart

再次登陸 MySQL 查看默認引擎設置是否生效

innodb_buffer_pool_size 參數值設置得儘量大一點 這個參數主要做用是緩存 innodb 表的索引,數據,

插入數據時的緩衝 默認值:128M,專用 mysql 服務器設置的大小:操做系統內存的 70%-80%最佳。

設置方法:my.cnf 文件[mysqld] 下面加入 innodb_buffer_pool_size 參數

innodb_buffer_pool_size = 256M

(咱們這裏設置爲 256M,由於咱們的不是專用的 MySQL 數據庫服務器,還有不少其餘的服 務須要佔用系統內存)

# vi /etc/my.cnf

[mysqld]

default-storage-engine=INNODB
mysql> show variables like '%storage_engine%';
+----------------+--------+

| Variable_name | Value |

+----------------+--------+
| storage_engine | InnoDB |
+----------------+--------+
# vi /etc/my.cnf

[mysqld]

 

設置 MySQL 的查詢緩存

query_cache_type=1
query_cache_size=32M

重啓 mysql 服務器
# service mysqld restart

驗證緩存設置是否生效:
mysql> show variables like '%query_cache%';

+------------------------------+----------+

| Variable_name | Value |

+------------------------------+----------+

,最少設置 15M

# vi /etc/my.cnf
query_cache_size

[mysqld]

| have_query_cache
| query_cache_limit
| query_cache_min_res_unit
| query_cache_size
| query_cache_type
| query_cache_wlock_invalidate

+------------------------------+----------+

三、建立 sonarqube 數據庫(UTF-8 編碼)

2、安裝 SonarQube 的 Web Server

| YES | | 1048576 | | 4096 | | 33554432 | | ON | | OFF |

下載最新 LTS 版的 SonarQube 安裝包(當前版本爲 sonarqube-4.5.4.zip):

下載地址:http://www.sonarqube.org/downloads/

http://dist.sonar.codehaus.org/sonarqube-4.5.4.zip

 

下載:
# wget http://dist.sonar.codehaus.org/sonarqube-4.5.4.zip 解壓安裝:
# unzip sonarqube-4.5.4.zip
# mv sonarqube-4.5.4 sonarqube

編輯 sonar 配置:
# cd sonarqube/conf/
# vi sonar.properties
sonar.jdbc.username=root
sonar.jdbc.password=wusc.123
#----- MySQL 5.x sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterE ncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance

sonar.web.host=0.0.0.0 sonar.web.context=/sonarqube sonar.web.port=9090

保存以上配置(注意,要看看默認的 9000 端口是否已被佔用)

防火牆中打開 9090 端口:
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9090 -j ACCEPT 重啓防火牆,使端口配置生效
# service iptables restart

啓動 SonarQube Web Server
# /root/sonarqube/bin/linux-x86-64/sonar.sh start (初次啓動會自動建表和作相應的初始化)

瀏覽器中輸入:http://192.168.4.221:9090/sonarqube/

 

登陸,默認用戶名/密碼爲 admin/admin

到此,SonarQube 已安裝完畢,接下來是對 SonarQube 作相應的配置和使用 

相關文章
相關標籤/搜索