美文网首页
Beego注意事项(一)之数据库时区

Beego注意事项(一)之数据库时区

作者: 视掘 | 来源:发表于2019-12-02 11:16 被阅读0次

    之前未设置时间,导致读取时间慢16小时,记个笔记

    时区设置

    *   驱动默认使用 UTC 时间,而非本地时间,所以请指定时区参数或者全部以 UTC 时间存取
    例如:`root:root@/orm_test?charset=utf8&loc=Asia%2FShanghai`
    参见 [loc](https://github.com/go-sql-driver/mysql#loc) / [parseTime](https://github.com/go-sql-driver/mysql#parsetime)
    

    具体代码,用的是mysql

    mysqlHost := beego.AppConfig.String("mysqlHost")
    mysqlPort := beego.AppConfig.String("mysqlPort")
    mysqlUser := beego.AppConfig.String("mysqlUser")
    mysqlPwd := beego.AppConfig.String("mysqlPwd")
    mysqlDb := beego.AppConfig.String("mysqlDb")
    
    //注册mysql Driver
    err := orm.RegisterDriver("mysql", orm.DRMySQL) //用户名:密码@tcp(url地址)/数据库 ,名字对应app.conf配置数据库信息
    if err != nil {
        logs.Error(err.Error())
        return
    }
    conn := mysqlUser + ":" + mysqlPwd + "@tcp(" + mysqlHost + ":" + mysqlPort + ")/" + mysqlDb + "?charset=utf8mb4&loc=Asia%2FShanghai"
    //注册数据库连接
    err = orm.RegisterDataBase("default", "mysql", conn)
    
    //注册数据库连接
    err = orm.RegisterDataBase("default", "mysql", conn)
    if err != nil {
        logs.Error(err.Error())
        return
    }
    

    仅设置时区,无需以下设置

    // 设置为 UTC 时间
    //orm.DefaultTimeLoc = time.UTC

    相关文章

      网友评论

          本文标题:Beego注意事项(一)之数据库时区

          本文链接:https://www.haomeiwen.com/subject/eufdictx.html