title: Sonar Installation on Ubuntu and Windows
body: <p>I am trying to install Sonar on ubuntu but there is always an error coming up. I couldnt find any installation guide explaining the installation step by step completely. Is there any?</p>
  
  <p>Here is the latest log output.</p>
  
  <pre><code>INFO   | jvm 1    | 2013/03/30 10:30:31 | 2013-03-30 10:30:31.075:INFO::Stopped SelectChannelConnector@0.0.0.0:9000
  INFO   | jvm 1    | 2013/03/30 10:30:31 | 2013-03-30 10:30:31.192:INFO::Shutdown hook complete
  STATUS | wrapper  | 2013/03/30 10:30:32 | &lt;-- Wrapper Stopped
  STATUS | wrapper  | 2013/03/30 10:30:32 | --&gt; Wrapper Started as Daemon
  STATUS | wrapper  | 2013/03/30 10:30:32 | Launching a JVM...
  INFO   | jvm 1    | 2013/03/30 10:30:32 | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
  INFO   | jvm 1    | 2013/03/30 10:30:32 |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
  INFO   | jvm 1    | 2013/03/30 10:30:32 | 
  INFO   | jvm 1    | 2013/03/30 10:30:32 | 2013-03-30 10:30:32.957:INFO::Logging to STDERR via org.mortbay.log.StdErrLog
  INFO   | jvm 1    | 2013/03/30 10:30:33 | 2013-03-30 10:30:33.012:INFO::jetty-6.1.25
  INFO   | jvm 1    | 2013/03/30 10:30:33 | 2013-03-30 10:30:33.204:INFO::NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet
  2013.03.30 10:30:34 INFO  o.s.c.p.Database  Create JDBC datasource
  2013.03.30 10:30:34 ERROR o.s.s.p.Platform  
  ### Error opening session.  Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
  ### The error may exist in org/sonar/core/dashboard/WidgetPropertyMapper.java (best guess)
  ### The error occurred while processing mapper_resultMap[resourceResultMap]
  ### Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
  org.apache.ibatis.exceptions.PersistenceException: 
  ### Error opening session.  Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
  ### The error may exist in org/sonar/core/dashboard/WidgetPropertyMapper.java (best guess)
  ### The error occurred while processing mapper_resultMap[resourceResultMap]
  ### Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
      at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8) ~[mybatis-3.0.6.jar:3.0.6]
      at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromDataSource(DefaultSqlSessionFactory.java:83) ~[mybatis-3.0.6.jar:3.0.6]
      at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSession(DefaultSqlSessionFactory.java:40) ~[mybatis-3.0.6.jar:3.0.6]
      at org.sonar.core.persistence.MyBatis.openSession(MyBatis.java:142) ~[sonar-core-3.1.jar:na]
      at org.sonar.core.persistence.DatabaseVersion.getVersion(DatabaseVersion.java:51) ~[sonar-core-3.1.jar:na]
      at org.sonar.server.platform.DefaultServerUpgradeStatus.start(DefaultServerUpgradeStatus.java:40) ~[classes/:na]
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_15]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_15]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_15]
      at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_15]
      at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.invokeMethod(ReflectionLifecycleStrategy.java:110) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.start(ReflectionLifecycleStrategy.java:89) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.start(AbstractInjectionFactory.java:84) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.behaviors.AbstractBehavior.start(AbstractBehavior.java:169) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.behaviors.Stored$RealComponentLifecycle.start(Stored.java:132) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.behaviors.Stored.start(Stored.java:110) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.DefaultPicoContainer.potentiallyStartAdapter(DefaultPicoContainer.java:1009) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1002) ~[picocontainer-2.14.1.jar:na]
      at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:760) ~[picocontainer-2.14.1.jar:na]
      at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:70) ~[sonar-plugin-api-3.1.jar:na]
      at org.sonar.server.platform.Platform.startDatabaseConnectors(Platform.java:153) ~[classes/:na]
      at org.sonar.server.platform.Platform.init(Platform.java:102) ~[classes/:na]
      at org.sonar.server.platform.PlatformLifecycleListener.contextInitialized(PlatformLifecycleListener.java:33) [classes/:na]
      at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1272) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) [jetty-util-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.jetty.Server.doStart(Server.java:224) [jetty-6.1.25.jar:6.1.25]
      at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) [jetty-util-6.1.25.jar:6.1.25]
      at org.sonar.application.JettyEmbedder.start(JettyEmbedder.java:72) [sonar-application-3.1.jar:na]
      at org.sonar.application.StartServer.main(StartServer.java:48) [sonar-application-3.1.jar:na]
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_15]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_15]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_15]
      at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_15]
      at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240) [wrapper-3.2.3.jar:3.2.3]
      at java.lang.Thread.run(Thread.java:722) [na:1.7.0_15]
  Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
      at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromDataSource(DefaultSqlSessionFactory.java:73) ~[mybatis-3.0.6.jar:3.0.6]
      ... 38 common frames omitted
  Caused by: java.sql.SQLException: Access denied for user 'sonar'@'localhost' (using password: YES)
      at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:943) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4113) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1308) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2336) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:792) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.JDBC4Connection.&lt;init&gt;(JDBC4Connection.java:47) ~[mysql-connector-java-5.1.18.jar:na]
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.7.0_15]
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) ~[na:1.7.0_15]
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_15]
      at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_15]
      at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381) ~[mysql-connector-java-5.1.18.jar:na]
      at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) ~[mysql-connector-java-5.1.18.jar:na]
      at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) ~[commons-dbcp-1.3.jar:1.3]
      at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545) ~[commons-dbcp-1.3.jar:1.3]
      ... 41 common frames omitted
  INFO   | jvm 1    | 2013/03/30 10:30:34 | 2013-03-30 10:30:34.963:WARN::Failed startup of context org.mortbay.jetty.webapp.WebAppContext@7bf194a7{/,file:/usr/local/sonar-3.1/war/sonar-server}
  INFO   | jvm 1    | 2013/03/30 10:30:34 | org.apache.ibatis.exceptions.PersistenceException: |### Error opening session.  Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))|### The error may exist in org/sonar/core/dashboard/WidgetPropertyMapper.java (best guess)|### The error occurred while processing mapper_resultMap[resourceResultMap]|### Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'sonar'@'localhost' (using password: YES))
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:8)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSessionFromDataSource(DefaultSqlSessionFactory.java:83)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.openSession(DefaultSqlSessionFactory.java:40)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.core.persistence.MyBatis.openSession(MyBatis.java:142)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.core.persistence.DatabaseVersion.getVersion(DatabaseVersion.java:51)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.server.platform.DefaultServerUpgradeStatus.start(DefaultServerUpgradeStatus.java:40)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at java.lang.reflect.Method.invoke(Method.java:601)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.invokeMethod(ReflectionLifecycleStrategy.java:110)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.start(ReflectionLifecycleStrategy.java:89)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.start(AbstractInjectionFactory.java:84)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.behaviors.AbstractBehavior.start(AbstractBehavior.java:169)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.behaviors.Stored$RealComponentLifecycle.start(Stored.java:132)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.behaviors.Stored.start(Stored.java:110)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.DefaultPicoContainer.potentiallyStartAdapter(DefaultPicoContainer.java:1009)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1002)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:760)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:70)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.server.platform.Platform.startDatabaseConnectors(Platform.java:153)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.server.platform.Platform.init(Platform.java:102)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.server.platform.PlatformLifecycleListener.contextInitialized(PlatformLifecycleListener.java:33)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1272)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.jetty.Server.doStart(Server.java:224)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.application.JettyEmbedder.start(JettyEmbedder.java:72)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.sonar.application.StartServer.main(StartServer.java:48)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at java.lang.reflect.Method.invoke(Method.java:601)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
  INFO   | jvm 1    | 2013/03/30 10:30:34 |   at java.lang.Thread.run(Thread.java:722)
  INFO   | jvm 1    | 2013/03/30 10:30:34 | 2013-03-30 10:30:34.985:INFO::Started SelectChannelConnector@0.0.0.0:9000
  </code></pre>