博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
win10部署sonar代码扫描工具
阅读量:6813 次
发布时间:2019-06-26

本文共 6016 字,大约阅读时间需要 20 分钟。

hot3.png

一 安装MySQL解压版

此部分参看

1、下载MySQL

解压之后生成 mysql-5.7.26-winx64 文件夹。

2、部署MySQL到D盘

在D盘创建Mysql目录 D:\MySQL 将刚才解压得到的 mysql-5.7.26-winx64 文件夹放到D:\MySQL目录下。此时D:\MySQL\mysql-5.7.26-winx64目录下没有data文件夹。

3、新建my.ini文件

D:\MySQL\mysql-5.7.26-winx64目录下新建my.ini文件,复制如下内容到my.ini文件中。

[mysqld]port = 3306basedir=D:\MySQL\mysql-5.7.26-winx64datadir=D:\MySQL\mysql-5.7.26-winx64\datamax_connections=200character-set-server=utf8default-storage-engine=INNODBsql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES[mysql]default-character-set=utf8

4、配置环境变量:

电脑属性-》高级系统设置-》

在系统变量部分新建一个变量名:MYSQL_HOME,变量值:D:\MySQL\mysql-5.7.26-winx64

5、MySQL安装过程:

管理员身份运行cmd

进入如下目录:D:\MySQL\mysql-5.7.26-winx64\bin

运行命令:mysqld --initialize (此时会生成data目录)

运行mysqld -install (安装)

运行net start mysql (启动mysql服务)

此时可以在 任务管理器——服务 中看到MySQL服务

6.设置root账户密码:

my.ini文件(MySQL的配置文件)的[mysqld]下加一行skip-grant-tables

然后在任务管理器中重启MySQL服务

重启MqSQL服务后,运行mysql -u root -p,可以成功登入mysql

然后更新root账户的密码为'root'

命令:update mysql.user set authentication_string=password("root") where user="root";

然后输入flush privileges;(刷新账户信息)

执行quit或ctrl+Z退出

然后将my.ini文件中刚才加的skip-grant-tables这一行删掉,保存后再重启MySQL服务

然后运行mysql -u root -p root就可以用root用户名和root密码登陆了

7.重装的问题:我在第一次装的mysql的时候,文件放在C盘,提示权限的问题比较烦人,在尝试重装的过程中遇到问题,提示mysql已经安装,在网上看到一篇帖子可以解决问题:https://jingyan.baidu.com/article/5d368d1eaf46ea3f61c0576f.html基本步骤包括停掉MySQL服务,删除注册表,删除之前的my.ini文件,运行几个命令进行删除,最后最好再重启一下电脑就可以重新安装了

二 安装sonar服务端

1. MySQL安装,参见前面第一部分。

2. 创建sonar用户和数据库.txt

这里是直接用命令行执行sql文件内容,实际执行时可以进入MySQL命令行单条执行。

E:\sonar_work\sonarqube-6.0\conf>mysql -u root -p < create_database.sqlEnter password: *******E:\sonar_work\sonarqube-6.0\conf>

以下是create_database.sql文件内容:

create database sonar character set utf8 collate utf8_general_ci;create user 'sonar' identified by 'sonar';grant all on sonar.* to 'sonar'@'%' identified by 'sonar';grant all on sonar.* to 'sonar'@'localhost' identified by 'sonar';flush privileges;

3. 配置root远程访问.txt:

(这里实际上是把mysql数据库的user表中root用户的host字段设置为%,从而不限制root用户的远程访问。不过sonar服务好像只需要前面create_database.sql中创建的sonar用户,所以此步骤是否必要需要后面再研究一下。)

Enter password: *******Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 9Server version: 5.7.22-log MySQL Community Server (GPL)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> select user from user;ERROR 1046 (3D000): No database selectedmysql> use mysql;Database changedmysql> select user from user;+---------------+| user          |+---------------+| mysql.session || mysql.sys     || root          |+---------------+3 rows in set (0.00 sec)mysql> select user,host from user;+---------------+-----------+| user          | host      |+---------------+-----------+| mysql.session | localhost || mysql.sys     | localhost || root          | localhost |+---------------+-----------+3 rows in set (0.00 sec)mysql> update user set host='%' where user='root';Query OK, 1 row affected (0.00 sec)Rows matched: 1  Changed: 1  Warnings: 0mysql> select user,host from user;+---------------+-----------+| user          | host      |+---------------+-----------+| root          | %         || mysql.session | localhost || mysql.sys     | localhost |+---------------+-----------+3 rows in set (0.00 sec)mysql> flush;ERROR 1064 (42000): You have an error in your SQL syntax; check the manual thatcorresponds to your MySQL server version for the right syntax to use near '' atline 1mysql> flush privileges;Query OK, 0 rows affected (0.02 sec)mysql>

4. sonar服务器内存要求,总共需要申请8G内存

sonar-ce	4Gsonar-web	1Gsonar-es	1Gos		2G

5. 安装jdk8

D:\Java\jdk1.8.0_112 配置环境变量。

变量名	变量值【需要根据自己安装的目录进行修改】	操作类型sonar_home	E:\sonarqube-6.0	新增JRE_HOME8	D:\Java\jdk1.8.0_112\jre	新增JAVA_HOME8	D:\Java\jdk1.8.0_112	新增path	在path环境变量之前加上%sonar_home%\bin;	修改

6. 解压:

将《sonarqube-6.0-内存参数修改后.zip》解压到某盘符根目录下,例如E盘,解压后效果如下所示:

7. 设置IP:

下面为上图中sonar.properties文件的内容:

sonar.jdbc.username=sonarsonar.jdbc.password=sonarsonar.web.javaOpts=-Xmx1024m -Xms256m -XX:+HeapDumpOnOutOfMemoryErrorsonar.ce.javaOpts=-Xmx1024m -Xms256m -XX:+HeapDumpOnOutOfMemoryError# sonar.jdbc.url=jdbc:mysql://192.168.102.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformancesonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance#sonar.web.host=192.168.102.93sonar.web.host=127.0.0.1sonar.web.port=9000# sonar.jdbc.username=sonar# sonar.jdbc.password=sonar# sonar.jdbc.url=jdbc:mysql://192.168.102.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance# sonar.web.javaOpts=-Xmx1024m -Xms1024m -XX:+HeapDumpOnOutOfMemoryError# sonar.ce.javaOpts=-Xmx4096m -Xms4096m -XX:+HeapDumpOnOutOfMemoryError# sonar.web.host=192.168.102.1# sonar.web.port=9000

8. 服务启动

双击E:\sonarqube-6.0\bin\windows-x86-64\StartSonar.bat

启动后显示的信息:

9. 服务关闭

E:\sonarqube-6.0\bin\windows-x86-64目录下并没有一个StopSonar.batStartSonar.bat对应。 所以关闭时需要通过直接关闭进程来实现。

首先命令行运行netstat -ano命令查看占用9000端口的进程的PID(参见下方,此次启动对应的进程PID为7528)。

Microsoft Windows [版本 10.0.17134.765](c) 2018 Microsoft Corporation。保留所有权利。C:\Users\zlcp>netstat -ano活动连接  协议  本地地址          外部地址        状态           PID  TCP    0.0.0.0:22             0.0.0.0:0              LISTENING       4812  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       928  TCP    127.0.0.1:9000         0.0.0.0:0              LISTENING       7528  TCP    127.0.0.1:9001         0.0.0.0:0              LISTENING       6112  TCP    127.0.0.1:9001         127.0.0.1:64641        ESTABLISHED     6112  TCP    127.0.0.1:9001         127.0.0.1:64642        ESTABLISHED     6112  ······C:\Users\zlcp>

打开任务管理器,在‘详细信息’页签可以看到启动sonar服务对应的四个进程:下图中java.exe对应的四个。其中PID为7528的直接影响浏览器可否查看服务。

两个javaw.exe对应的进程应该是eclipse启动tomcat对应的(关闭eclipse之后还有一个在运行)。

转载于:https://my.oschina.net/songguangqi/blog/3052616

你可能感兴趣的文章
思考与知识
查看>>
访问日志不记录静态文件 访问日志切割 静态元素过期时间
查看>>
idea中复制module和module中的蓝色tag出现的方法
查看>>
python中的面相对象
查看>>
Spring缓存注解@Cache使用
查看>>
去除wordpress的category各方法对比
查看>>
traceroute
查看>>
精通汇编语言,有兴趣一起搞破解的请进!
查看>>
C#缺省参数可以让代码变得更加简洁明了与时俱进心里敞亮了很多了
查看>>
【自然框架】js版的QuickPager分页控件 V2.0
查看>>
poj-2049 Finding Nemo *
查看>>
模块化编程本质探讨
查看>>
利用博客与视频分享和交流知识和经验
查看>>
js操作dom对象
查看>>
Windows2003服务器安全配置:先关闭不需要的端口(转自)
查看>>
HDU1247 Hat’s Words 【trie树】
查看>>
iOS开发--动画篇之layout动画深入
查看>>
WorldWind源码剖析系列:视景体类Frustum
查看>>
(转)完整java开发中JDBC连接数据库代码和步骤
查看>>
Redis Lua脚本原理
查看>>