开发者社区> 问答> 正文

python如何选择redis数据库?

选择redis数据库,select 1,select 2

但是在python中是怎么操作的?我只知道r = redis.Redis(host='localhost',port=6379,db=0)

这个db如何切换,难道每次都要redis.Redis(host='localhost',port=6379,db=1),redis.Redis(host='localhost',port=6379,db=2)吗

展开
收起
李博 bluemind 2019-04-08 17:07:10 5695 0
1 条回答
写回答
取消 提交回答
  • 云栖社区Java、Redis、MongoDB运营小编,有意合作请联系钉钉:15810436147

    是的,目前只能这样。
    原因是redis-py为了保证Redis实例的线程安全,没有实现SELECT指令

    Redis 客户端实例可以安全地在线程间共享。从内部实现来说,只有在命令执行时才获取连接实例,完成后直接返回连接池,命令永不修改客户端实例的状态。但是,有一点需要注意:SELECT 命令。SELECT 命令允许切换当前连接使用的数据库。新的数据库保持被选中状态,直到选中另一个数据库或连接关闭。这会导致在返回连接池时,连接可能指定了别的数据库。因此,redis-py 没有在客户端实例中实现 SELECT 命令。如果要在同一个应用中使用多个 Redis 数据库,应该给第一个数据库创建独立的客户端实例(可能也需要独立的连接池)。

    2019-07-17 23:32:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载