您的位置:首页 > 数据库 > Redis

[Redis]Windows下Redis的安装、权限设置和在Python中使用

2017-04-04 18:32 531 查看

Windows下Redis的安装、权限设置和在Python中使用

最近赶项目赶得整个人有点懵,现在一看到IDEA就有点发怵,所以想着搞点没接触过的东西放松下心情。刚刚好之前一直对NOSQL很感兴趣,所以试着玩了一下Redis。

安装

Redis官方并不支持Windows平台,不过微软的开源团队维护了一个64位的版本。下载地址是:https://github.com/MSOpenTech/redis/releases

个人推荐下载其中的MSI版本,因为这个版本会顺便安装一个redis服务和添加Path路径,使用起来比较方便。

安装完在控制台中输入
redis-cli
就可以开启Redis客户端了。(记得开启服务)

C:\>redis-cli
127.0.0.1:6379> auth ******
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> quit


如果想手动开启Redis服务器,在控制台中使用
redis-server
命令。

在Python中使用Redis

使用第三方包redis就可以在Python里操作Redis了。包不大,直接用pip安装:
pip install redis


import redis
r = redis.Redis('127.0.0.1', port=6379, password='******')
r.ping()


连接正常的话ping函数会返回True。

需要注意的地方:

如果Redis服务器没设置密码的话(默认),在初始化的时候不需要加上password参数。

Redis类里面的函数和Redis命令基本一致。但是del命令因为和Python关键字冲突,所以在Redis类中改为delete函数。

Redis查询的数据都是以字节包的形式返回的。在Python中要经过decode解码和类型转换才可以使用。

解码Redis返回的数据:

>>> import redis
>>> r = redis.Redis('127.0.0.1', port=6379, password='******')
>>> r.ping()
True
>>> r.set('hello', '你好')
True
>>> hello = r.get('hello')
>>> hello
b'\xe4\xbd\xa0\xe5\xa5\xbd'
>>> hello.decode('utf-8') # 解码
'你好'


权限

Redis根目录下有两个配置文件。redis.windows.conf和redis.windows-service.conf。这两个文件分别对应手动开启Redis服务器和以服务形式开启服务器的配置。

如果想给redis加上一个密码,修改配置文件中的requirepass字段就行了。不过因为redis运行起来实在是太快了,容易被暴力破解,所以密码太简单的话防不住贼。下面是配置文件里面的内容,你们自己感受一下…

# Require clients to issue AUTH <PASSWORD> before processing any other

# commands. This might be useful in environments in which you do not trust

# others with access to the host running redis-server.

#

# This should stay commented out for backward compatibility and because most

# people do not need auth (e.g. they run their own servers).

#

# Warning: since Redis is pretty fast an outside user can try up to

# 150k passwords per second against a good box. This means that you should

# use a very strong password otherwise it will be very easy to break.

#

# requirepass foobared

修改配置文件的时候可能会遇到权限不足的问题,右键->属性->安全->编辑,给当前用户加上写入权限就可以正常修改了。

总结

Redis使用起来非常方便,建议有兴趣学习redis的读者直奔菜鸟教程就可以,基础部分看个一两个小时其实就差不多了,没必要再在博客中赘述。博主目前正在一步步完善自己的技术栈中,后面如果遇到什么坑再继续跟进。

编程之路漫漫其修远兮,吾将上下而求索。

照例感谢开源软件和免费内容的贡献者,感谢:Redis、微软OpenTech和菜鸟教程提供的内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python redis nosql