grafana/pkg/services/sqlstore
Jason Stangroome 632a5e9b97 Support Azure MySQL (#8618)
Azure's MySQL implementation appears to always respond with an Authentication Method Switch Request Packet requesting `mysql_native_password` auth even though the client's initial Handshake Response already included the native password credentials.

Most MySQL client libraries support this but Golang's go-sql-driver/mysql requires the `allowNativePasswords` DSN parameter set to enable it. Without this parameter, Grafana fails to authenticate to the database with the error message "this user requires mysql native password authentication."

References:

* https://web.archive.org/web/20160814002743/http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::AuthSwitchRequest
* https://web.archive.org/web/20160814002743/http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::HandshakeResponse
* https://github.com/go-sql-driver/mysql#user-content-allownativepasswords
2017-08-24 10:24:10 +02:00
..
migrations feat: store last seen date for users and present in stats and user lists, closes #9007 2017-08-09 10:36:41 +02:00
migrator utf8mb4 encoding (#7959) 2017-03-28 14:34:53 +02:00
sqlutil utf8mb4 encoding (#7959) 2017-03-28 14:34:53 +02:00
alert.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
alert_notification.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
alert_notification_test.go tech(notifications): splitt into 3 queries 2016-09-06 08:43:15 +02:00
alert_test.go tech(alerting): renames pause all method 2016-12-19 15:17:49 +01:00
annotation.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
apikey.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
apikey_test.go
dashboard.go dashboard_history: SQL did not work when using MySQL, fixes to dashboard version numbering, so inserts start at 1, added migration to fix old dashboards with version 0 2017-06-06 15:40:10 +02:00
dashboard_snapshot.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
dashboard_snapshot_test.go feat(plugins): dashboard import for data sources is working! #4298 2016-03-12 10:13:49 +01:00
dashboard_test.go test(dashboard): add failing test for deleting dashboards 2016-04-25 08:46:15 +02:00
dashboard_version.go fix: fixed failing sql unit test 2017-06-07 15:42:48 +02:00
dashboard_version_test.go fix: fixed failing sql unit test 2017-06-07 15:42:48 +02:00
datasource.go dataproxy: added caching of datasources when doing data proxy requests, #9078 2017-08-23 13:31:26 +02:00
datasource_test.go signup: fix email sent logic for tempuser 2017-06-30 20:21:08 +02:00
health.go feat: added api health endpoint that does not require auth and never creates sessions, returns db status as well. #3302 2017-04-25 17:17:45 +02:00
logger.go dasboard_history: security fix, added orgId filter to dashboard version lookup 2017-06-07 14:21:40 +02:00
org.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
org_test.go admin: adds paging to global user list 2017-02-13 12:59:36 +01:00
org_users.go feat: store last seen date for users and present in stats and user lists, closes #9007 2017-08-09 10:36:41 +02:00
playlist.go playlist: fixed dashboard play ordering, fixes #7688 2017-05-24 13:21:43 +02:00
playlist_test.go chore(playlist): remove commented code 2016-01-29 20:33:01 +01:00
plugin_setting.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
preferences.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
quota.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
quota_test.go
shared.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
sql_test_data.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
sqlstore.go Support Azure MySQL (#8618) 2017-08-24 10:24:10 +02:00
sqlstore.goconvey
star.go refactor: sqlstore inTransaction consolidated to one version, fixes #8376 2017-05-23 10:56:23 +02:00
stars_test.go
stats.go feat: store last seen date for users and present in stats and user lists, closes #9007 2017-08-09 10:36:41 +02:00
tables.go
temp_user.go signup: fix email sent logic for tempuser 2017-06-30 20:21:08 +02:00
temp_user_test.go signup: fix email sent logic for tempuser 2017-06-30 20:21:08 +02:00
tls_mysql.go generalized database connection cert support and added to postgres 2016-11-22 15:29:22 -08:00
user.go feat: store last seen date for users and present in stats and user lists, closes #9007 2017-08-09 10:36:41 +02:00
user_test.go users: adds search and pagination (#7753) 2017-03-07 16:03:54 +01:00