ubuntu部署sonar与windows下使用sonar-scanner

ubuntu部署sonar与windows下使用sonar-scanner

sonar部署

使用的是sonarqube-7.5,支持的java环境是jdk8,且MySQL版本 >=5.6 && <8.0

java安装

  1. 打开终端,更新Ubuntu系统:
cmd 复制代码
sudo apt-get update
  1. 安装OpenJDK 8:
cmd 复制代码
sudo apt-get install openjdk-8-jdk

安装期间,可能需要输入管理员密码以确认安装。

  1. 安装完成后,同样可以通过java -version命令来验证Java是否安装成功。

mysql安装

  1. 下载mysql5.7的deb文件源码包,创建独立文件夹保存
cmd 复制代码
cd /opt
cmd 复制代码
mkdir mysql
cmd 复制代码
cd mysql
cmd 复制代码
sudo wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-server_5.7.35-1ubuntu18.04_amd64.deb-bundle.tar
  1. 解压源码包
cmd 复制代码
sudo tar -xvf mysql-server_5.7.42-1ubuntu18.04_amd64.deb-bundle.tar
  1. 删除名称带有test相关包,无用
cmd 复制代码
sudo rm -f mysql-community-test_5.7.42-1ubuntu18.04_amd64.deb 
sudo rm -f mysql-testsuite_5.7.42-1ubuntu18.04_amd64.deb
  1. 安装支持环境,密码为数据库root用户密码(输入2次):
cmd 复制代码
sudo apt install libtinfo5 libmecab2
  1. 使用dpkg命令安装
cmd 复制代码
sudo dpkg -i mysql-*.deb
  1. 查看版本
cmd 复制代码
mysql -V
  1. 查看mysql的状态
cmd 复制代码
systemctl status mysql
  1. 启动mysql
cmd 复制代码
systemctl start mysql
  1. 停止mysql服务
cmd 复制代码
systemctl stop mysql
  1. 重启mysql服务
cmd 复制代码
systemctl restart mysql
  1. 自启动
cmd 复制代码
systemctl enable mysql

编辑MySQL配置文件 (通常是/etc/mysql/mysql.conf.d/mysqld.cnf/etc/my.cnf):

bash 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

至少配置如下项:

cmd 复制代码
expire_logs_days        = 10
max_binlog_size         = 100M
query_cache_limit       = 1M
query_cache_size        = 16M
myisam-recover-options  = BACKUP
key_buffer_size         = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8

新建一个名为sonar的数据库:

配置sonarqube

复制sonarqube-7.5到系统中,编辑conf目录下的sonar.properties文件,其中

复制代码
# 语句中sonar就是上面新建的数据库
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false 
# 数据库用户
sonar.jdbc.username=root    
# 数据库密码
sonar.jdbc.password=123456
sonar.sorceEncoding=UTF-8 
# 默认sonar登录用户名
sonar.login=admin 
# 默认sonar登录密码
sonar.password=admin
sonar.jdbc.driverClassName=org.gjt.mm.mysql.Driver

# 检查一下web默认端口
sonar.web.port=9000


应用不能使用root运行,需要修改当前用户权限

cmd 复制代码
//新建用户
useradd name
//赋权
chown -R name.name sonar的目录
//修改密码
passwd sonar
//切换到sonar用户
su sonar
//启动: 进入到sonar目录下,即bin的同级目录,执行下边的命令
./bin/linux-x86-64/sonar.sh console

出现如下提示表示启动成功:

如果sonar.sh、wrapper还有elasticsearch/bin路径下的elasticsearch没有可执行权限使用chmod赋上可执行权限即可。

在浏览器访问http://服务器ip地址:9000就能打开网页:

插件安装

下载jar包,放到如下路径:

然后重启sonar即可。

sonar-scanner使用

下载sonar-scanner-cli

编辑sonar-scanner.properties配置文件:

复制代码
# 3306默认端口
sonar.jdbc.url=jdbc:mysql://数据库所在ip:3306/sonar
# 数据库用户名
sonar.jdbc.username=root
#数据库密码
sonar.jdbc.password=123456
sonar.sorceEncoding=UTF-8
# sonar登录用户名和密码
sonar.host.url=http://服务器ip:9000
sonar.login=admin
sonar.password=admin
sonar.projectVersion=1.0
sonar.sourceEncoding=UTF-8

# 检查语言类型
sonar.language=c
# sonar定义的任务唯一标识
sonar.projectKey=test_project
sonar.projectName=test_project
# 需要检查的工程根目录
sonar.sources=C:/test_project

然后将bin目录设置到系统环境变量中:

简单使用

输入一个令牌,名字随意:

我使用的是C语言,就选这个:

里面的任务唯一标识需要和sonar-scanner.propertiessonar.projectKey、sonar.projectName一致,配置好后点完成,先定义这里的任务唯一标识,再去修改sonar-scanner.propertiessonar.projectKey、sonar.projectName

桌面新建一个文件夹,里面建一个main.c文件

c 复制代码
#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("hellow");
    return 0;
}

命令行到c文件同级目录:

输入命令<>开始扫描并打印日志

最后输出如下表示检查完成:

浏览器访问http://服务器ip地址:9000即可看到分析结果

安装了pdf插件这里也可以导出pdf报告:

相关推荐
白云coy32 分钟前
如何在 Ubuntu 24.04 LTS 上安装 Docker
ubuntu·docker·eureka
小孙姐2 小时前
Linux-Day12.DNS服务
linux·运维·服务器
小孙姐2 小时前
Linux-Day07.磁盘空间管理
linux·运维·服务器
鹿鸣天涯3 小时前
Kali Linux 2025.2基于MITRE ATT&CK框架
linux·运维·网络
杜子不疼.3 小时前
《Linux编译器:gcc/g++食用指南》
linux·服务器·开发语言
jie*3 小时前
小杰数据结构——题库——拂衣便欲沧海去,但许明月随吾身
数据结构·windows·python
专注VB编程开发20年5 小时前
用ADO操作EXCEL文件创建表格,删除表格CREATE TABLE,DROP TABLE
服务器·windows·excel·ado·创建表格·删除表格·读写xlsx
水冗水孚6 小时前
😱😱😱CPU和内存飙到100%——我的火山引擎服务器被印度的ip恶意植入挖矿程序了!😡😡😡
服务器·ubuntu·centos
gnawkhhkwang6 小时前
Linux 调度器函数sched_*系统调用及示例
linux·服务器