package utils
import (
"fmt"
"gin-vue-admin/global"
"github.com/ClickHouse/clickhouse-go/v2"
"time"
)
func GetCh() error {
if global.GVA_CH == nil {
chConf := global.GVA_CONFIG.Clickhouse
conn, err := clickhouse.Open(&clickhouse.Options{
Addr: []string{chConf.Host},
Auth: clickhouse.Auth{
Database: chConf.Database,
Username: chConf.Username,
Password: chConf.Password,
},
Debug: chConf.Debug,
DialTimeout: 2 * time.Second,
MaxOpenConns: 10,
MaxIdleConns: 5,
ConnMaxLifetime: time.Hour,
Compression: &clickhouse.Compression{Method: clickhouse.CompressionLZ4},
})
if err != nil {
fmt.Println(err)
return err
}
global.GVA_CH = conn
}
return nil
}
-
haoyanbin authored9bf9e037