18.1.go连接redis

开发调试

 支持多种格式查看:内置高级文本代码编辑器,支持语法高亮/代码折叠/错误提示

 便捷搜索过滤:使用正则匹配搜索键后,仍可进行二级过滤,组合筛选数据更方便

 

调试分析相关支持:拥有命令行慢日志查询服务器命令实时监控发布/订阅,极大提高Redis开发调试效率

 

一、go连接 Redis  

在进行操作之前,需要确保已经安装 Redis 并启动 Redis 服务器,同时在 Go 项目中导入 go-redis 库(v9版本需要redis大于7.0.)

如果是7.0以下版本使用v8库   go get github.com/go-redis/redis/v8 

go get github.com/redis/go-redis/v9

连接配置

package main

import (
    "context"
    "fmt"
    "github.com/redis/go-redis/v9"
    "time"
)

var ctx = context.Background()

func main() {
    rdb := redis.NewClient(&redis.Options{
        Addr:	  "localhost:6379",
        Password: "", // No password set
        DB:		  0,  // Use default DB
        Protocol: 2,  // Connection protocol
   
### 解决 `io.lettuce.core.RedisCommandExecutionException: NOAUTH Authentication required` 错误 当遇到此错误时,表明应用程序尝试执行命令而未通过身份验证。通常情况下,这表示连接Redis 实例所需的认证信息缺失或配置不当。 #### 配置文件设置 确保在 Spring Boot 的 application.yml 或者 application.properties 文件中正确设置了 Redis 认证信息: 对于 YAML 格式的配置文件 (application.yml),应如下所示指定密码[^3]: ```yaml spring: redis: host: localhost port: 6379 password: your_redis_password_here ``` 如果使用 properties 格式,则应该这样写: ```properties spring.redis.host=localhost spring.redis.port=6379 spring.redis.password=your_redis_password_here ``` #### 检查环境变量 有时密码可能被定义为环境变量而不是硬编码在配置文件里。确认这些环境变量已正确定义并可由应用访问。 #### 测试连接字符串 另一种方法是利用 URI 方式来提供完整的 Redis 连接字符串,在其中包含必要的认证参数: ```yaml spring: redis: url: "redis://default:your_redis_password@localhost:6379" ``` 这里的 `default` 是用户名(取决于 Redis 版本),如果是旧版则可以省略;`your_redis_password` 应替换为你自己的 Redis 密码[^5]。 #### 调试与日志记录 启用更详细的日志可以帮助诊断问题所在。可以在 logging 设置部分增加对 Lettuce 和 Redis 日志级别的调整以便更好地理解通信过程中的任何潜在障碍。 #### 客户端库版本兼容性 考虑到不同版本之间可能存在行为差异,特别是从 Jedis 切换至 Lettuce 后,务必查阅官方文档以获取关于所使用的具体版本的最佳实践指南。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chxii

小小打赏,大大鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值