You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Go语言redigo库连接Redis DB1失败,报错ERR invalid DB index求助

解决Redis切换数据库时的ERR invalid DB index错误

嘿,我知道这个问题的症结在哪!你现在遇到的ERR invalid DB index错误,是因为Redis的数据库索引根本不是字符串格式的db1,而是纯数字哦~

问题根源

Redis的数据库是通过数字索引来区分的,默认从0开始(db0是默认连接的数据库),你传入字符串"db1"会被Redis判定为无效索引,自然就抛出错误了。要切换到第一个非默认数据库,直接用数字1作为参数就行。

修正后的完整代码

我给你调整了代码,不仅修复了切换数据库的参数问题,还加上了错误检查的完善逻辑:

package main
import (
 "fmt"
 "redigo-master"
)
func main() {
 conn, err := redis.Dial("tcp", "qacd:6410")
 defer conn.Close()
 if err != nil {
  fmt.Println("连接Redis失败:", err)
  return // 连接失败时直接退出,避免后续操作出错
 }
 // 用数字1作为SELECT命令的参数,切换到DB1
 _, err = conn.Do("SELECT", 1)
 if err != nil {
  fmt.Println("切换数据库失败:", err)
  return
 }
 fmt.Println("成功切换到DB1啦!")
}

额外小提示

  • 如果你想确认自己的Redis实例配置了多少个数据库,可以执行CONFIG GET databases命令查询,默认是16个(索引范围0到15)。
  • 切换数据库后,后续所有操作都会在这个选中的库执行,如果需要切回默认库,执行SELECT 0就可以了。

内容的提问来源于stack exchange,提问作者shuki shtein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:50:03