1.安装Mysql -略
1.1 修改mysql默认的存储引擎
配置
/etc/my.cnf文件中 加入下面一行
[root@izwz91h49n3mj8r232gqwez opt]# vim /etc/my.cnf
default-storage-engine=INNODB
1.2.重启Mysql服务
如果上面做了修改,则需要重启mysql
[root@izwz91h49n3mj8r232gqwez opt]# service mysqld restart
Redirecting to /bin/systemctl restart mysqld.service
登录mysql查看引擎
mysql> show variables like '%storage_engine%';
+----------------------------+--------+
| Variable_name | Value |
+----------------------------+--------+
| default_storage_engine | InnoDB |
| default_tmp_storage_engine | InnoDB |
| storage_engine | InnoDB |
+----------------------------+--------+
3 rows in set (0.02 sec)
mysql>
1.3. innodb_buffer_pool_size 参数值设置得尽可能大一点
修改 [root@izwz91h49n3mj8r232gqwez opt]# vim /etc/my.cnf
[mysqld]
innodb_buffer_pool_size = 256M
(我们这里设置为 256M, 因为我们的不是专用的 MySQL 数据库服务器,还有很多其他的服
务需要占用系统内存)
1.4. 设置 MySQL 的查询缓存 query_cache_size ,最少设置 15M
修改 [root@izwz91h49n3mj8r232gqwez opt]# vim /etc/my.cnf
[mysqld]
query_cache_type=1
query_cache_size=32M
重启mysql服务
[root@izwz91h49n3mj8r232gqwez opt]# service mysqld restart
Redirecting to /bin/systemctl restart mysqld.service
[root@izwz91h49n3mj8r232gqwez opt]#
1.5.mysql库中创建sonar数据库
2.安装sonarQube
2.1 上传文件到linux服务器上/opt 目录下
2.2 解压文件
[root@izwz91h49n3mj8r232gqwez opt]# unzip sonarqube-4.5.4.zip
2.3.重命名文件夹名字
[root@izwz91h49n3mj8r232gqwez opt]# mv sonarqube-4.5.4 sonarqube
2.4 修改配置
[root@izwz91h49n3mj8r232gqwez sonarqube]# pwd
/opt/sonarqube
[root@izwz91h49n3mj8r232gqwez sonarqube]# ll
total 40
drwxr-xr-x 12 root root 4096 Feb 26 2015 bin
drwxr-xr-x 2 root root 4096 Feb 26 2015 conf
-rw-r--r-- 1 root root 7651 Feb 26 2015 COPYING
drwxr-xr-x 2 root root 4096 Feb 26 2015 data
drwxr-xr-x 4 root root 4096 Feb 26 2015 extensions
drwxr-xr-x 10 root root 4096 Feb 26 2015 lib
drwxr-xr-x 2 root root 4096 Feb 26 2015 logs
drwxr-xr-x 2 root root 4096 Feb 26 2015 temp
drwxr-xr-x 10 root root 4096 Feb 26 2015 web
[root@izwz91h49n3mj8r232gqwez sonarqube]#
2.4.1. 修改数据库的配置
sonar.properties
2.4.1.1 修改为你的mysql 用户名和密码
(我这里用的是mysql)
如下
2.4.1.2 打开mysql的库连接
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useConfigs=maxPerformance&rewriteBatchedStatements=true&characterEncoding=utf8&useUnicode=true&serverTimezone=GMT%2B08:00
2.4.1.3 配置可访问的ip以及端口 以及项目名
sonar.web.host=0.0.0.0
sonar.web.context=/sonarqube
sonar.web.port=9090
2.4.1.4 打开防火墙
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT
重启防火墙, 使端口配置生效
# service iptables restart
3.启动sonarqube
我系统是64位所以用了/linux-x86-64目录下
[root@izwz91h49n3mj8r232gqwez bin]# pwd
/opt/sonarqube/bin
[root@izwz91h49n3mj8r232gqwez bin]# ll
total 40
drwxr-xr-x 2 root root 4096 Feb 26 2015 jsw-license
drwxr-xr-x 3 root root 4096 Dec 9 2010 linux-ppc-64
drwxr-xr-x 3 root root 4096 Dec 9 2010 linux-x86-32
drwxr-xr-x 3 root root 4096 Dec 9 2010 linux-x86-64
drwxr-xr-x 3 root root 4096 Dec 9 2010 macosx-universal-64
drwxr-xr-x 3 root root 4096 Dec 9 2010 solaris-sparc-32
drwxr-xr-x 3 root root 4096 Dec 9 2010 solaris-sparc-64
drwxr-xr-x 3 root root 4096 Dec 9 2010 solaris-x86-32
drwxr-xr-x 3 root root 4096 Dec 9 2010 windows-x86-32
drwxr-xr-x 3 root root 4096 Dec 9 2010 windows-x86-64
[root@izwz91h49n3mj8r232gqwez bin]# ./linux-x86-64/sonar.sh start
Starting SonarQube...
Started SonarQube.
[root@izwz91h49n3mj8r232gqwez bin]# cd ..
查看启动日志
[root@izwz91h49n3mj8r232gqwez logs]# pwd
/opt/sonarqube/logs
[root@izwz91h49n3mj8r232gqwez logs]# ll
total 4
-rw-r--r-- 1 root root 2974 Dec 13 00:32 sonar.log
[root@izwz91h49n3mj8r232gqwez logs]# tail -f sonar.log
Launching a JVM...
Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
Copyright 1999-2006 Tanuki Software, Inc. All Rights Reserved.
2018.12.13 00:31:05 INFO app[o.s.p.m.JavaProcessLauncher] Launch process[search]: /opt/jdk1.8.0_172/jre/bin/java -Djava.awt.headless=true -Xmx256m -Xms256m -Xss256k -Djava.net.preferIPv4Stack=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/opt/sonarqube/temp -cp ./lib/common/*:./lib/search/* org.sonar.search.SearchServer /tmp/sq-process3158931311906048183properties
2018.12.13 00:31:18 WARN sea[o.s.p.ProcessEntryPoint] Starting search
2018.12.13 00:31:19 INFO sea[o.s.s.SearchServer] Starting ES[sonarqube] on port: 9001
2018.12.13 00:31:23 INFO sea[o.elasticsearch.node] [sonar-1544632257928] version[1.1.2], pid[1649], build[e511f7b/2014-05-22T12:27:39Z]
2018.12.13 00:31:23 INFO sea[o.elasticsearch.node] [sonar-1544632257928] initializing ...
2018.12.13 00:31:23 INFO sea[o.e.plugins] [sonar-1544632257928] loaded [], sites []
2018.12.13 00:32:15 INFO sea[o.elasticsearch.node] [sonar-1544632257928] initialized
2018.12.13 00:32:15 INFO sea[o.elasticsearch.node] [sonar-1544632257928] starting ...
2018.12.13 00:32:17 INFO sea[o.e.transport] [sonar-1544632257928] bound_address {inet[/0.0.0.0:9001]}, publish_address {inet[/172.16.252.139:9001]}
2018.12.13 00:32:20 WARN sea[o.e.monitor.jvm] [sonar-1544632257928] [gc][young][4][2] duration [1.5s], collections [1]/[2.4s], total [1.5s]/[2.1s], memory [79.5mb]->[21.7mb]/[247.6mb], all_pools {[young] [66.5mb]->[1mb]/[66.5mb]}{[survivor] [8.3mb]->[8.3mb]/[8.3mb]}{[old] [4.7mb]->[12.3mb]/[172.8mb]}
2018.12.13 00:32:22 INFO sea[o.e.cluster.service] [sonar-1544632257928] new_master [sonar-1544632257928][4sh_FW2USniv1KQl87OJyQ][localhost][inet[/172.16.252.139:9001]]{rack_id=sonar-1544632257928}, reason: zen-disco-join (elected_as_master)
2018.12.13 00:32:25 INFO sea[o.e.discovery] [sonar-1544632257928] sonarqube/4sh_FW2USniv1KQl87OJyQ
2018.12.13 00:32:26 INFO sea[o.e.gateway] [sonar-1544632257928] recovered [0] indices into cluster_state
2018.12.13 00:32:26 INFO sea[o.elasticsearch.node] [sonar-1544632257928] started
2018.12.13 00:32:28 INFO app[o.s.p.m.Monitor] Process[search] is up
2018.12.13 00:32:28 INFO app[o.s.p.m.JavaProcessLauncher] Launch process[web]: /opt/jdk1.8.0_172/jre/bin/java -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djruby.management.enabled=false -Djruby.compile.invokedynamic=false -Xmx768m -XX:MaxPermSize=160m -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/opt/sonarqube/temp -cp ./lib/common/*:./lib/server/*:/opt/sonarqube/lib/jdbc/mysql/mysql-connector-java-5.1.27.jar org.sonar.server.app.WebServer /tmp/sq-process2655494928997596183properties
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=160m; support was removed in 8.0
4.浏览器中浏览
http://xx.xxx.xxx.xxx:9000/sonarqube
账户密码默认 admin/admin
第一次启动会初始换sonar数据库的数据
如果上面的地址一致打不开,可以尝试下面的步骤,执行完成之后,再次登录上面地址试试
5.首先打开安装更新数据库
浏览地址
http://xx.xxx.xxx.xxx:9000/sonarqube/setup
点击 upgrade