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报告:

相关推荐
2401_869769597 分钟前
linux 权限 指令与权限(重启之后)
linux
码农客栈13 分钟前
Linux CAN 驱动
linux·驱动开发
2601_962364971 小时前
红外活体模组,Windows 设备安全身份入口解析
windows·安全·电脑
GeW2 小时前
红帽RHCE从挂科边缘到一次过,我做对了什么
linux
时空自由民.2 小时前
WSL解决USB 串口连接问题与linux串口权限问题
linux·单片机
OpenPomeloxCommunity2 小时前
Linux驱动基础(三):firmware的声明与加载
linux·操作系统
易点云徐源2 小时前
(已解决)Photoshop 2020 点击“选择主体”闪退:不用重装,1 个配置切回旧算法解决
windows·photoshop
云计算练习生2 小时前
什么是系统调用?为什么程序访问硬件必须经过它
linux·windows·操作系统·系统调用·操作系统原理
玄芯散人3 小时前
【筑基·059】Linux命令行入门:工程师的操作系统
linux·操作系统·命令行
半仙白桑3 小时前
内核篇第二讲:Linux exec 函数族详解
linux·linux驱动