PCT-637: Query Analytics does not handle MySQL Restart

Done

However, I'm afraid that FileIntervalIter goroutine might access mysqlConn.Connect/Close/Set at the same time as the goroutine with check if mysql was restarted. @daniel-nichter What you think? Should I protect mysql.Connection with mutex?
I don't think there is any problem here. Mostly you want to use those additional helper methods in test where you actually define mock so it has concrete type e.g.:
https://github.com/percona/percona-agent/blob/release/qan/qan_test.go#L678
Where you use nullmysql.Reset().
And in rare cases where you really need to test object of interface type then you can use type assertion to again get the concrete implementation and then you can use helper methods.

In any case, maybe there is a case I'm not aware of but this PR doesn't have need to have multiple connection factories so why bikeshed on this - IMO Keep It Simple