Don't drop pre-existing database before tests

1. The database name is a random string, so shouldn't already exist.
2. If it *does* already exist, we quite likely want to throw an error
   rather than just delete it.
3. "drop database if exists non_existant_database" throws an error with
   mysqlconnector and a noisy-but-harmless warning with others.

(We could fix (3), if it was important)

For consistency, this also makes drop_database raise an error if the
database doesn't exist (or has been already deleted).

Closes-Bug: #1341906
Change-Id: I0c4a460088ffb7eb79cbf8594d2ff37fd70cf157
Merge "Don't drop pre-existing database before tests"