kashyappvb
kashyappvb

Reputation: 15

Cannot connect to database [db] MySql Play Frameworks 2.5.10

I am using play framework 2.5.10. i am trying to connect to database, but it is showing Cannot connect to database [db] . I have attached the error that i got in console, plugin.sbt.

build.sbt is as follows:

name := """zooengineer"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayJava)

scalaVersion := "2.11.7"

libraryDependencies ++= Seq(
  javaJdbc,
  cache,
  javaWs
)

application.config is as shown below:

## Database Connection Pool
# https://www.playframework.com/documentation/latest/SettingsJDBC
# ~~~~~
# Play doesn't require a JDBC database to run, but you can easily enable one.
#
# libraryDependencies += jdbc
#
play.db {
  # The combination of these two settings results in "db.default" as the
  # default JDBC pool:
   config = "db"
   default = "default"

  # Play uses HikariCP as the default connection pool.  You can override
  # settings by changing the prototype:
  prototype {
    # Sets a fixed JDBC connection pool size of 50
    #hikaricp.minimumIdle = 50
    #hikaricp.maximumPoolSize = 50
  }
}

## JDBC Datasource
# https://www.playframework.com/documentation/latest/JavaDatabase
# https://www.playframework.com/documentation/latest/ScalaDatabase
# ~~~~~
# Once JDBC datasource is set up, you can work with several different
# database options:
#
# Slick (Scala preferred option): https://www.playframework.com/documentation/latest/PlaySlick
# JPA (Java preferred option): https://playframework.com/documentation/latest/JavaJPA
# EBean: https://playframework.com/documentation/latest/JavaEbean
# Anorm: https://www.playframework.com/documentation/latest/ScalaAnorm
#
db {
    # Default database configuration using MySQL database engine
    # Connect to playdb as playdbuser

  # You can declare as many datasources as you want.
  # By convention, the default datasource is named `default`

# Default database configuration using MySQL database engine
# Connect to playdb as playdbuser
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://localhost/zooengineer"
db.default.username=root
db.default.password="root123"

  # https://www.playframework.com/documentation/latest/Developing-with-the-H2-Database
  #default.driver = org.h2.Driver
  #default.url = "jdbc:h2:mem:play"
  #default.username = sa
  #default.password = ""

  # You can turn on SQL logging for any datasource
  # https://www.playframework.com/documentation/latest/Highlights25#Logging-SQL-statements
  #default.logSql=true
}

Please help to connect to DB.

Thanks in advance.

Upvotes: 0

Views: 1086

Answers (2)

avinashse
avinashse

Reputation: 1460

Add below line in build.sbt

libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.36"

restart your application.

Upvotes: 1

krsna
krsna

Reputation: 4333

Edit this line:

db.default.url="jdbc:mysql://localhost/zooengineer"

to:

db.default.url="jdbc:mysql://localhost:3306/zooengineer"

Note:

Your JDBC URL format should be as follows:

jdbc:mysql://[host1][:port1][/[database]] 

More help: https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html

Upvotes: 1

Related Questions