mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
MySQL Performance when using GF_DATABASE_URL
Set MaxIdleConn and MaxOpenConn when using the GF_DATABASE_URL configuration. Also added GF_DATABASE_DEBUG flag to print SQL statements and SQL execution times. See #9784 for the details.
This commit is contained in:
parent
bf85735a36
commit
5fdfa3ff7e
@ -82,6 +82,9 @@ max_idle_conn = 2
|
|||||||
# Max conn setting default is 0 (mean not set)
|
# Max conn setting default is 0 (mean not set)
|
||||||
max_open_conn =
|
max_open_conn =
|
||||||
|
|
||||||
|
# Set to true to log the sql calls and execution times.
|
||||||
|
debug =
|
||||||
|
|
||||||
# For "postgres", use either "disable", "require" or "verify-full"
|
# For "postgres", use either "disable", "require" or "verify-full"
|
||||||
# For "mysql", use either "true", "false", or "skip-verify".
|
# For "mysql", use either "true", "false", or "skip-verify".
|
||||||
ssl_mode = disable
|
ssl_mode = disable
|
||||||
|
@ -91,6 +91,8 @@
|
|||||||
# Max conn setting default is 0 (mean not set)
|
# Max conn setting default is 0 (mean not set)
|
||||||
;max_open_conn =
|
;max_open_conn =
|
||||||
|
|
||||||
|
# Set to true to log the sql calls and execution times.
|
||||||
|
debug =
|
||||||
|
|
||||||
#################################### Session ####################################
|
#################################### Session ####################################
|
||||||
[session]
|
[session]
|
||||||
|
@ -224,6 +224,9 @@ The maximum number of connections in the idle connection pool.
|
|||||||
### max_open_conn
|
### max_open_conn
|
||||||
The maximum number of open connections to the database.
|
The maximum number of open connections to the database.
|
||||||
|
|
||||||
|
### debug
|
||||||
|
Set to `true` to log the sql calls and execution times.
|
||||||
|
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
## [security]
|
## [security]
|
||||||
|
@ -158,10 +158,14 @@ func getEngine() (*xorm.Engine, error) {
|
|||||||
} else {
|
} else {
|
||||||
engine.SetMaxOpenConns(DbCfg.MaxOpenConn)
|
engine.SetMaxOpenConns(DbCfg.MaxOpenConn)
|
||||||
engine.SetMaxIdleConns(DbCfg.MaxIdleConn)
|
engine.SetMaxIdleConns(DbCfg.MaxIdleConn)
|
||||||
|
debugSql := setting.Cfg.Section("database").Key("debug").MustBool(false)
|
||||||
|
if !debugSql {
|
||||||
engine.SetLogger(&xorm.DiscardLogger{})
|
engine.SetLogger(&xorm.DiscardLogger{})
|
||||||
// engine.SetLogger(NewXormLogger(log.LvlInfo, log.New("sqlstore.xorm")))
|
} else {
|
||||||
// engine.ShowSQL = true
|
engine.SetLogger(NewXormLogger(log.LvlInfo, log.New("sqlstore.xorm")))
|
||||||
// engine.ShowInfo = true
|
engine.ShowSQL(true)
|
||||||
|
engine.ShowExecTime(true)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return engine, nil
|
return engine, nil
|
||||||
}
|
}
|
||||||
@ -190,12 +194,12 @@ func LoadConfig() {
|
|||||||
DbCfg.Host = sec.Key("host").String()
|
DbCfg.Host = sec.Key("host").String()
|
||||||
DbCfg.Name = sec.Key("name").String()
|
DbCfg.Name = sec.Key("name").String()
|
||||||
DbCfg.User = sec.Key("user").String()
|
DbCfg.User = sec.Key("user").String()
|
||||||
DbCfg.MaxOpenConn = sec.Key("max_open_conn").MustInt(0)
|
|
||||||
DbCfg.MaxIdleConn = sec.Key("max_idle_conn").MustInt(0)
|
|
||||||
if len(DbCfg.Pwd) == 0 {
|
if len(DbCfg.Pwd) == 0 {
|
||||||
DbCfg.Pwd = sec.Key("password").String()
|
DbCfg.Pwd = sec.Key("password").String()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
DbCfg.MaxOpenConn = sec.Key("max_open_conn").MustInt(0)
|
||||||
|
DbCfg.MaxIdleConn = sec.Key("max_idle_conn").MustInt(0)
|
||||||
|
|
||||||
if DbCfg.Type == "sqlite3" {
|
if DbCfg.Type == "sqlite3" {
|
||||||
UseSQLite3 = true
|
UseSQLite3 = true
|
||||||
|
Loading…
Reference in New Issue
Block a user