Configurar Sonar para que use MySQL

Sonar viene con una base de datos “incrustada”, en la que guarda el historial de análisis de nuestros proyectos. Sin embargo, es posible que prefiramos emplear un servidor de bases de datos propio que tengamos, algo fácil de hacer si sabes cómo. Vamos a ver cómo configurar sonar para que descargue los datos en un servidor MySQL local.

Configuración de la base de datos

En nuestra base de datos, tenemos que crear un esquema vacío y un usuario sonar que tendrá todos los permisos para dicho esquema. Este esquema, además, deberá tener codificación UTF8. Respecto al motor, Sonar funciona mejor con InnoDB que con MyISAM.

La creación del esquema y el usuario, así como su gestión de permisos, puede realizarse fácilmente con este script proporcionado por los chicos de Sonar.

Cuando el servidor esté configurado, en su primera ejecución se conectará a la base de datos y llenará el esquema con las tablas que necesite. Una vez haya hecho eso, quizá quieras ver este artículo sobre optimización de rendimiento de tablas InnoDB.

Configuración del servidor Sonar

El siguiente paso será modificar la configuración del servidor Sonar, algo que haremos con el servidor desactivado. En su directorio de instalación tendrá una carpeta conf, dentro de la cual encontraremos el fichero sonar.properties. Lo editaremos (desde linux habrá que hacerlo con permisos de root), buscaremos la sección “MySQL”, y descomentaremos (eliminamos el signo #) la línea que empieza por “sonar.jdbc.url:                            jdbc:mysql://localhost:3306/sonar”. Tras ello, comentaremos (añadiremos al principio el signo #) la correspondiente a la base de datos incrustada “#sonar.jdbc.url:                            jdbc:h2:tcp://localhost:9092/sonar”.

Tras esto, arrancamos el servidor Sonar y observamos. Si no vemos mensajes de error, podremos entrar en el esquema ‘sonar’ de nuestra base de datos y comprobar que ahora hay tablas que antes no había. Todo va bien.

Configuración del cliente sonar-runner

Por último, tenemos que configurar nuestro cliente. En su directorio, que nosotros tenemos en ~/sonar-runner, hay una carpeta conf con un fichero sonar-runner.properties. Aquí tenemos que hacer algo parecido a lo que hicimos para el servidor.

Iremos a la sección de “MySQL” y descomentaremos la línea “sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8”. Tras ello, probaremos a lanzar el sonar-runner para alguno de nuestros proyectos. Si todo va bien, no deberíamos ver mensajes de error y, además, se deberían actualizar los datos de la interfaz de SonarQube (en nuestro localhost:9000).  Y con esto ya estaría todo listo para seguir usando sonar, con los datos cargándose en nuestro servidor MySQL.

Anuncios
Etiquetas: ,

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: