一 安装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.bat
与StartSonar.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之后还有一个在运行)。