2015-10-07 13:06:14 -07:00
> mysql driver has known timeout issues. See [#257](https://github.com/go-sql-driver/mysql/issues/257).
2015-07-10 01:33:31 -07:00
# MySQL
2015-08-18 21:57:35 -07:00
Drone comes with support for MySQL as an alternate database engine. To enable MySQL, you should specify the following environment variables:
2015-07-10 01:33:31 -07:00
2015-08-08 20:51:12 -07:00
```bash
2015-08-03 22:46:58 -07:00
DATABASE_DRIVER="mysql"
2015-10-20 16:45:24 -07:00
DATABASE_CONFIG="root:pa55word@tcp (localhost:3306)/drone?parseTime=true"
2015-07-10 01:33:31 -07:00
```
2015-08-08 20:51:12 -07:00
## MySQL configuration
2015-07-10 01:33:31 -07:00
The following is the standard URI connection scheme:
```
[username[:password]@][protocol[(address)]]/dbname[?options]
```
The components of this string are:
* `username` optional. Use this username when connecting to the MySQL instance.
* `password` optional. Use this password when connecting to the MySQL instance.
* `protocol` server protocol to connect with.
* `address` server address to connect to.
* `dbname` name of the database to connect to
* `?options` connection specific options
This is an example connection string:
```
2015-10-20 16:45:24 -07:00
root:pa55word@tcp (localhost:3306)/drone?parseTime=true
2015-07-10 01:33:31 -07:00
```
## MySQL options
2015-10-20 16:45:24 -07:00
See the official [driver documentation ](https://github.com/go-sql-driver/mysql#parameters ) for a full list of driver options. Note that the `parseTime=true` is required.
2015-08-24 14:10:30 -07:00
## MySQL Database
Drone does not automatically create the database. You should use the command line utility or your preferred management console to create the database:
```bash
mysql -P 3306 --protocol=tcp -u root -e 'create database if not exists drone;'
```