瀏覽代碼

Merge pull request #1045 from tomcatzh/master

Add mysql unix socket support.
无闻 10 年之前
父節點
當前提交
8238c28c31
共有 1 個文件被更改,包括 7 次插入2 次删除
  1. 7 2
      models/models.go

+ 7 - 2
models/models.go

@@ -89,8 +89,13 @@ func getEngine() (*xorm.Engine, error) {
 	cnnstr := ""
 	switch DbCfg.Type {
 	case "mysql":
-		cnnstr = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8",
-			DbCfg.User, DbCfg.Passwd, DbCfg.Host, DbCfg.Name)
+		if DbCfg.Host[0] == '/' { // looks like a unix socket
+			cnnstr = fmt.Sprintf("%s:%s@unix(%s)/%s?charset=utf8",
+				DbCfg.User, DbCfg.Passwd, DbCfg.Host, DbCfg.Name)
+		} else {
+			cnnstr = fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8",
+				DbCfg.User, DbCfg.Passwd, DbCfg.Host, DbCfg.Name)
+		}
 	case "postgres":
 		var host, port = "127.0.0.1", "5432"
 		fields := strings.Split(DbCfg.Host, ":")