应用程序连接开启了ACL认证的Redis时与原先的方式有差别,本文介绍几种连接开启ACL认证的Redis的Redis的方法。
1. Python 程序
如果你想使用python通过用户名密码连接开启ACL的Redis,你可以参考以下的方法:首先,需要安装redis-py库,这是一个python的Redis客户端,可以方便地操作Redis。可以使用pip或者conda来安装redis-py库。
其次,需要创建一个Redis对象,用来连接Redis服务器。可以使用Redis的构造函数来指定host,port,username和password。例如,Redis服务器的地址是localhost,端口是6379,用户名是admin,密码是123456,对应连接方式如下:
import redis
r = redis.Redis(host='localhost', port=6379, username='admin', password='123456')
r.set('test1','1111')
v=r.get('test1')
print(v)
运行结果如下:
2. java程序
(1)jedis
如果使用的是java程序,且通过jedis连接Redis6,可以参考以下的方法:
• 首先,需要引入jedis的依赖包,jedis是一个java的Redis客户端,可以方便地操作Redis。可以从这里https://blog.csdn.net/H1455483319/article/details/109036679下载jedis.jar,或者使用maven或gradle来管理你的依赖。• 其次,需要创建一个Jedis对象,用来连接Redis服务器。可以使用Jedis的构造函数来指定host,port,user和password。例如,Redis服务器的地址是localhost,端口是6379,用户名是admin,密码是123456,可以这样创建Jedis对象:
Jedis jedis = new Jedis("localhost", 6379, "admin", "123456");
• 最后,就可以使用jedis对象来执行各种Redis命令,比如set,get,lpush等。你可以参考jedis的官方文档https://www.runoob.com/redis/redis-java.html来了解更多的用法。
(2)lettuce
如果你想使用Lettuce处理,可以参考以下的方法:
- 首先,你需要创建一个RedisURI对象,用来指定连接的地址,端口,数据库,用户和密码。你可以使用RedisURI的静态方法create来从一个URI字符串创建一个RedisURI对象。例如,如果你的Redis服务器的地址是localhost,端口是6379,数据库是0,用户名是admin,密码是123456,你可以这样创建RedisURI对象:
RedisURI redisURI = RedisURI.create("redis://admin:123456@localhost:6379/0");
- 然后,需要创建一个RedisClient对象,用来创建和管理Redis连接。可以使用RedisClient的静态方法create来从一个RedisURI对象创建一个RedisClient对象。
RedisClient redisClient = RedisClient.create(redisURI);
- 从RedisClient对象获取一个StatefulRedisConnection对象,用来执行Redis命令。可以使用RedisClient的connect方法来获取一个StatefulRedisConnection对象。
StatefulRedisConnection connection = redisClient.connect();
- 完成后就可以使用connection对象来执行各种Redis命令,比如set,get,lpush等。参考Lettuce的官方文档https://github.com/lettuce-io/lettuce-core/wiki/Redis-URI-and-connection-details 可以了解更多的用法。