Hola:
Para saber si existe la base de datos, basta con ver si te puedes conectar o no, ya que en la cadena de conexión va la base de datos.
Una vez que tengas la conexión, puedes pedirle a esta el getDataBaseMetaData() y con el DataBaseMetaData que obtienes preguntar si existen o no las tablas, etc.
Para restaurar a partir del fichero sql tienes dos opciones. Una es ir leyendo desde java y ejecutando las sentencias sql. Otra es
llamar desde java al comando de mysql y redirigirle el fichero. En el enlace tiens cómo.
Se bueno.