環境:

root@ubuntu:~#?uname?-a
Linux?ubuntu?4.4.0-21-generic?#37-Ubuntu?SMP?Mon?Apr?18?18:33:37?UTC?2016?x86_64?x86_64?x86_64?GNU/Linux
root@ubuntu:~#?
root@ubuntu:~#?cat?/etc/issue
Ubuntu?16.04?LTS?\n?\lroot@ubuntu:~#

安裝配置mysql:

1、更新源

root@ubuntu:~#?apt-get??update

2、安裝MySQL

root@ubuntu:~#?apt-get?install?-y?mysql-server?mysql-client
#中間會有一個為root用戶添加密碼的,可以添加也可以忽略

3、啟動MySQL

root@ubuntu:~#?systemctl?start?mysql
root@ubuntu:~#?ps?-ef|grep?mysql
mysql????11268?????1??0?15:58??????????00:00:00?/usr/sbin/mysqld
root?????11362??4143??0?16:00?pts/0????00:00:00?grep?--color=auto?mysql
root@ubuntu:~#?netstat?-lntup|grep?mysql
tcp????????0??????0?127.0.0.1:3306??????????0.0.0.0:*???????????????LISTEN??????11268/mysqld????
root@ubuntu:~#

4、安裝PHP支持MySQL模塊

root@ubuntu:~#?apt-get?install?php5-mysql

出現錯誤:

root@ubuntu:~#?apt-get?install?php5-mysql
Reading?package?lists...?Done
Building?dependency?tree???????
Reading?state?information...?Done
Package?php5-mysql?is?not?available,?but?is?referred?to?by?another?package.
This?may?mean?that?the?package?is?missing,?has?been?obsoleted,?or
is?only?available?from?another?sourceE:?Package?'php5-mysql'?has?no?installation?candidate
root@ubuntu:~#

解決方法一:

root@ubuntu:~#?apt-get?update???#更新源
root@ubuntu:~#?apt-get?upgrade???#升級包

如果還是不能解決,嘗試添加第三方地址。

解決方法二:

root@ubuntu:~#?add-apt-repository?"deb?http://archive.canonical.com/?lucid?partner"
root@ubuntu:~#?apt-get?update

解決方法三:

root@ubuntu:~#?tail?-3?/etc/apt/sources.list
deb?http://mirrors.163.com/ubuntu/?hardy?main?universe
deb?http://tw.archive.ubuntu.com/ubuntu/?hardy?main?universe
root@ubuntu:~#?apt-get?update

安裝sonarqube

1、登陸MySQL創建sonar數據庫和用戶

mysql>?CREATE?DATABASE?sonar?DEFAULT?CHARACTER?SET?utf8?COLLATE?utf8_general_ci;
Query?OK,?1?row?affected?(0.00?sec)mysql>
mysql>?CREATE?USER?'sonar'?IDENTIFIED?BY?'sonar';??
Query?OK,?0?rows?affected?(0.10?sec)mysql>?GRANT?ALL?ON?sonar.*?TO?'sonar'@'%'?IDENTIFIED?BY?'sonar';??
Query?OK,?0?rows?affected,?1?warning?(0.00?sec)mysql>?GRANT?ALL?ON?sonar.*?TO?'sonar'@'localhost'?IDENTIFIED?BY?'sonar';??
Query?OK,?0?rows?affected,?1?warning?(0.00?sec)mysql>?FLUSH?PRIVILEGES;?
Query?OK,?0?rows?affected?(0.00?sec)mysql>

2、下載sonarqube-5.3和sonar-scanner

root@ubuntu:~#?cd?/etc
root@ubuntu:/etc#?wget?#在此地下載Scanner,然后上傳
root@ubuntu:/etc#?apt-get?install?lrzsz??#沒有上傳下載工具的可以用此命令安裝
root@ubuntu:/etc#?ll?*.zip???#查看下載好的兩個包
-rw-r--r--?1?root?root?111318629?Jan??8??2016?sonarqube-5.3.zip
-rw-r--r--?1?root?root????499181?Mar?20?19:44?sonar-scanner-cli-2.9.0.670.zip
root@ubuntu:/etc#

3、解壓到指定目錄

root@ubuntu:/etc#?mkdir?/usr/sonar
root@ubuntu:/etc#?cd?/usr/sonar
root@ubuntu:/usr/sonar#?unzip??/etc/sonarqube-5.3.zip
root@ubuntu:/usr/sonar#?unzip?/etc/sonar-scanner-cli-2.9.0.670.zip
root@ubuntu:/usr/sonar#?ls
sonarqube-5.3??sonar-scanner-2.9.0.670
root@ubuntu:/usr/sonar#
root@ubuntu:/usr/sonar#?apt-get?install?unzip??#有的人沒有這個解壓工具,可以用此命令安裝

4、配置環境變量,同時將SONAR_RUNNER_HOME變量加入PATH

root@ubuntu:/usr/sonar#?sudo?tail?-2?/etc/profile
export?SONAR_HOME="/usr/sonar/sonarqube-5.3/"
export?SONAR_RUNNER_HOME="/usr/sonar/sonar-scanner-2.9/"
root@ubuntu:/usr/sonar#?.?/etc/profile
root@ubuntu:/usr/sonar#

5、修改配置文件

root@ubuntu:/usr/sonar#?pwd
/usr/sonar
root@ubuntu:/usr/sonar#?grep?"^[a-z]"??sonarqube-5.3/conf/sonar.properties?
sonar.jdbc.username=sonar??#數據庫名
sonar.jdbc.password=sonar??#密碼
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
root@ubuntu:/usr/sonar#
root@ubuntu:/usr/sonar#?grep?"^[a-z]"?sonar-scanner-2.9/conf/sonar-scanner.properties?
sonar.jdbc.username=sonar??
sonar.jdbc.password=sonar??
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
root@ubuntu:/usr/sonar#

6、運行

root@ubuntu:/usr/sonar#?cd?sonarqube-5.3/bin/linux-x86-64/
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?./sonar.sh?start
Starting?SonarQube...
Failed?to?start?SonarQube.
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?./sonar.sh?status
SonarQube?is?not?running.
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#

可以看到出錯了,原因是少了Java,即沒有安裝jdk1.8

安裝Java

1、下載

root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?cd?/usr/local/src/
root@ubuntu:/usr/local/src#?ls
jdk-8u121-linux-x64.tar.gz
root@ubuntu:/usr/local/src#

2、解壓

root@ubuntu:/usr/local/src#?tar?xf?jdk-8u121-linux-x64.tar.gz
root@ubuntu:/usr/local/src#?mkdir?../java
root@ubuntu:/usr/local/src#?mv?jdk1.8.0_121?../java/

3、設置jdk環境變量

root@ubuntu:/usr/local/src#?tail?-4?/etc/bash.bashrc
export?JAVA_HOME=/usr/local/java/jdk1.8.0_121
export?JRE_HOME=${JAVA_HOME}/jre
export?CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib??
export?PATH=${JAVA_HOME}/bin:$PATH
root@ubuntu:/usr/local/src#?.?/etc/bash.bashrc
root@ubuntu:/usr/local/src#

4、檢驗是否成功

root@ubuntu:/usr/local/src#?java?-version
java?version?"1.8.0_121"
Java(TM)?SE?Runtime?Environment?(build?1.8.0_121-b13)
Java?HotSpot(TM)?64-Bit?Server?VM?(build?25.121-b13,?mixed?mode)
root@ubuntu:/usr/local/src#

5、繼續運行sonar

root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?pwd
/usr/sonar/sonarqube-5.3/bin/linux-x86-64
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?./sonar.sh?start
Starting?SonarQube...
Started?SonarQube.
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?./sonar.sh?status
SonarQube?is?running?(14033).
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#?ps?-ef|grep?sonar
root?????14033?????1??0?13:13??????????00:00:00?/usr/sonar/sonarqube-5.3/bin/linux-x86-64/./wrapper?/usr/sonar/sonarqube-5.3/bin/linux-x86-64/../../conf/wrapper.conf?wrapper.syslog.ident=SonarQube?wrapper.pidfile=/usr/sonar/sonarqube-5.3/bin/linux-x86-64/./SonarQube.pid?wrapper.daemonize=TRUE?wrapper.lockfile=/var/lock/subsys/SonarQube
root?????14035?14033??6?13:13??????????00:00:01?java?-Djava.awt.headless=true?-Xms3m?-Xmx3m?-Djava.library.path=./lib?-classpath?../../lib/jsw/wrapper-3.2.3.jar:../../lib/sonar-application-5.3.jar?-Dwrapper.key=RLD1zL2ZQ9qqdiSt?-Dwrapper.port=32000?-Dwrapper.jvm.port.min=31000?-Dwrapper.jvm.port.max=31999?-Dwrapper.pid=14033?-Dwrapper.version=3.2.3?-Dwrapper.native_library=wrapper?-Dwrapper.service=TRUE?-Dwrapper.cpu.timeout=10?-Dwrapper.jvmid=1?org.tanukisoftware.wrapper.WrapperSimpleApp?org.sonar.application.App
root?????14060?14035?45?13:13??????????00:00:12?/usr/local/java/jdk1.8.0_121/jre/bin/java?-Djava.awt.headless=true?-Xmx1G?-Xms256m?-Xss256k?-Djava.net.preferIPv4Stack=true?-XX:+UseParNewGC?-XX:+UseConcMarkSweepGC?-XX:CMSInitiatingOccupancyFraction=75?-XX:+UseCMSInitiatingOccupancyOnly?-XX:+HeapDumpOnOutOfMemoryError?-Djava.io.tmpdir=/usr/sonar/sonarqube-5.3/temp?-cp?./lib/common/*:./lib/search/*?org.sonar.search.SearchServer?/tmp/sq-process4748582369994525447properties
root?????14164?14035?99?13:13??????????00:00:36?/usr/local/java/jdk1.8.0_121/jre/bin/java?-Djava.awt.headless=true?-Dfile.encoding=UTF-8?-Djruby.management.enabled=false?-Djruby.compile.invokedynamic=false?-Xmx768m?-Xms256m?-XX:MaxPermSize=160m?-XX:+HeapDumpOnOutOfMemoryError?-Djava.net.preferIPv4Stack=true?-Djava.io.tmpdir=/usr/sonar/sonarqube-5.3/temp?-cp?./lib/common/*:./lib/server/*:/usr/sonar/sonarqube-5.3/lib/jdbc/mysql/mysql-connector-java-5.1.35.jar?org.sonar.server.app.WebServer?/tmp/sq-process8773907296141005182properties
root?????14206?13703??0?13:14?pts/3????00:00:00?grep?--color=auto?sonar
root@ubuntu:/usr/sonar/sonarqube-5.3/bin/linux-x86-64#

6、瀏覽器查看

http://localhost:9000/


wKioL1jQuGyBI_qFAACiR220agg144.png-wh_50