Fisheye/Crucible with MySQL does not start
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Symptoms
Fisheye/Crucible with MySQL does not start.
The following appears in the atlassian-fisheye-<date>.log
:
1
2
3
4
5
6
7
8
9
10
11
12
13
2012-12-31 07:45:03,914 INFO - Starting database...
2012-12-31 07:45:03,932 ERROR - The Web context could not be started
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbControlFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.cenqua.crucible.hibernate.DBControlFactoryImpl]: Constructor threw exception; nested exception is java.lang.IllegalStateException: Database not available (Unable to connect to MySQL database jdbc:mysql://localhost/fisheye: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver: is the database driver jar file properly installed in the FISHEYE_INST/lib directory?). Current state: NO_DB
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:288)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
...
Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.cenqua.crucible.hibernate.DBControlFactoryImpl]: Constructor threw exception; nested exception is java.lang.IllegalStateException: Database not available (Unable to connect to MySQL database jdbc:mysql://localhost/fisheye: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver: is the database driver jar file properly installed in the FISHEYE_INST/lib directory?). Current state: NO_DB
...
Caused by: java.lang.IllegalStateException: Database not available (Unable to connect to MySQL database jdbc:mysql://localhost/fisheye: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver: is the database driver jar file properly installed in the FISHEYE_INST/lib directory?). Current state: NO_DB
Cause
The JDBC driver for MySQL is not bundled with Fisheye/Crucible 2.9+ (due to licensing restrictions).
Resolution
Download the MySQL Connector/J JDBC driver from the MySQL download website.
Expand the downloaded zip/tar.gz file.
Copy the
.jar
file to yourFISHEYE_INST/lib
directory. If thelib/
directory doesn't already exist, you will need to create it.Restart Fisheye/Crucible.
Was this helpful?