持续集成篇 SonarQube代码质量管理平台的安装

IP:192.168.4.221

环境:CentOS 6.6、JDK7、MySQL5.1 、SonarQube-4.5.4(LTS)

root用户操作
准备工作:已安装JDK7并配置好了环境变量

1 、安装MySQL5.1
可参考前面SVN管理平台的MySQL安装步骤,如果已安装则无需安装
# rpm -qa | grepmysql      ## 查看该操作系统上是否已经安装了mysql数据库,
有的话,可以通过 rpm -e 命令 或者rpm -e –nodeps 命令来卸载掉
# yum installmysql-server mysql mysql-devel
# service mysqldstart

# chkconfig –list| grep mysqld
mysqld          0:off   1:off  2:off   3:off   4:off  5:off   6:off
用上面的命令查看到MySQL并没有设置开机启动,所以需要设置开机启动
# chkconfig mysqldon

为了方便远程管理,防火墙中打开3306端口
# vi/etc/sysconfig/iptables
-A INPUT -m state –state NEW-m tcp -p tcp –dport 3306 -j ACCEPT
重启防火墙,使端口配置生效
# service iptablesrestart

设置MySQL数据库root用户的密码:
# mysqladmin -uroot password 'wusc.123'
登录数据库:
# mysql -u root -p

MySQL授权远程访问(先用root登录mysql)
mysql> GRANT ALLPRIVILEGES ON *.* TO 'root'@\'%\' IDENTIFIED BY 'wusc.321' WITH GRANT OPTION;
mysql> FLUSHPRIVILEGES;

2、配置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
# vi /etc/my.cnf
[mysqld]
default-storage-engine=INNODB

重启mysql服务器
# service mysqld restart

再次登录MySQL查看默认引擎设置是否生效
mysql> show variables like'%storage_engine%';
+—————-+——–+
| Variable_name  |Value  |
+—————-+——–+
| storage_engine | InnoDB |
+—————-+——–+

innodb_buffer_pool_size参数值设置得尽可能大一点
这个参数主要作用是缓存innodb表的索引,数据,插入数据时的缓冲
默认值:128M,专用mysql服务器设置的大小:操作系统内存的70%-80%最佳。
设置方法:my.cnf文件[mysqld] 下面加入innodb_buffer_pool_size参数
# vi /etc/my.cnf
[mysqld]
innodb_buffer_pool_size =256M
我们这里设置为256M,因为我们的不是专用的MySQL数据库服务器,还有很多其他的服务需要占用系统内存

设置MySQL的查询缓存query_cache_size,最少设置15M
# vi /etc/my.cnf
[mysqld]
query_cache_type=1
query_cache_size=32M

重启mysql服务器
# service mysqld restart

验证缓存设置是否生效:
mysql> show variableslike '%query_cache%';
+——————————+———-+
| Variable_name                | Value    |
+——————————+———-+
| have_query_cache             | YES      |
| query_cache_limit            | 1048576  |
| query_cache_min_res_unit     | 4096    |
| query_cache_size             | 33554432 |
| query_cache_type             | ON       |
| query_cache_wlock_invalidate | OFF      |
+——————————+———-+

3、创建sonarqube数据库(UTF-8编码)

二、安装SonarQube的WebServer
下载最新LTS版的SonarQube安装包(当前版本为sonarqube-4.5.4.zip):
下载地址:http://www.sonarqube.org/downloads/

http://dist.sonar.codehaus.org/sonarqube-4.5.4.zip
下载:
# wgethttp://dist.sonar.codehaus.org/sonarqube-4.5.4.zip
解压安装:
# unzipsonarqube-4.5.4.zip
# mvsonarqube-4.5.4 sonarqube

编辑sonar配置:
# cdsonarqube/conf/
# visonar.properties
sonar.jdbc.username=root
sonar.jdbc.password=wusc.123
#—– MySQL 5.x
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube
useUnicode=true&characterEncoding=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 iptablesrestart

启动 SonarQube Web Server
# /root/sonarqube/bin/linux-x86-64/sonar.shstart
初次启动会自动建表和做相应的初始化

浏览器中输入:http://192.168.4.221:9090/sonarqube/

登录,默认用户名

/

密码为

admin/admin

到此,SonarQube已安装完毕,接下来是对SonarQube做相应的配置和使用

Posted in 介绍及安装说明, 使用说明.