[go lang] api ๋™์‹œ ํ˜ธ์ถœ ์•ˆ๋˜๋Š” ์˜ค๋ฅ˜ ๊ฐœ์„ ํ•˜๊ธฐ :: No database selected error

ํ”„๋ก ํŠธ์—์„œ 2๊ฐ€์ง€ ํ˜ธ์ถœ api๋ฅผ ๊ฐ™์€ ํ•จ์ˆ˜์— ๋‘๊ณ  ๋™์‹œ์— ํ˜ธ์ถœํ•˜์˜€๋”๋‹ˆ, ์„œ๋ฒ„์—์„œ ๋’ท ์ˆœ์„œ๋กœ ํ˜ธ์ถœ๋œ api ์‹คํ–‰ ์‹œ No database selecte error ๊ฐ€ ๋‚œ๋‹ค.

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• : gorm.DB์— ์žˆ๋Š” sql.DB์˜ SetMaxOpenConns ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ, ๋™์‹œ์— ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ ์ตœ๋Œ€ ์ปค๋„ฅ์…˜ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œํ•ด์ฃผ์–ด์•ผํ•œ๋‹ค.

Config.DB, err = gorm.Open(mysql.Open(Config.DBURL(Config.BuildDBConfig())), &gorm.Config{})
if err != nil {
  fmt.Println("Status: ", err)
  return
}
// ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.
db, err := Config.DB.DB()
if err != nil {
  fmt.Println("Status: ", err)
  return
}
db.SetMaxOpenConns(1)
๋ฐ˜์‘ํ˜•