安装步骤
安装完之后,在bin目录有几个程序
文件名 | 说明 |
---|---|
redis-server | redis服务器 |
redis-cli | redis命令客户端 |
redis-benchmark | redis性能测试工具 |
redis-check-aof | AOF文件修复工具 |
redis-check-dump | RDB文件检查工具 |
redis-sentinel | sentinel服务器 |
启动和停止redis
启动redis
- 直接启动
$ redis-server --port 6380
- 初始化脚本启动
停止redis
$ redis-cli SHUTDOWN
redis命令行工具
发送命令
通过redis-cli向redis发送命令有两种方式
第一种,带参数
$ redis-cli PING
PONG
第二种,不带参数,进入交互模式
$ redis-cli
redis 127.0.0.1:6379> PING
PONG
redis 127.0.0.1:6379>ECHO hi
"hi"
如果要输入多条命令,建议用第二种方式。
命令返回值
redis-cli每执行完一条命令,都会返回对应的结果。
命令返回值有五种类型:
- 状态回复
运行SET命令设置某个键的值后,reids会回复状态OK表示设置成功。
运行PING命令,回复PONG也是状态返回值
- 错误回复
当出现命令不存在或命令格式有误等情况,reids会返回错误回复。
例如:
redis> ERRORCOMMOMEND
(ERROR) ERR unknown command
- 整数回复
reids没有整数类型,却提供了一些整数操作命令。这些命令处理完后,会返回整数。整数回复以(integer)开头
例如
redis> INCR foo
(integer) 1
- 字符串 回复
字符串回复用双引号包住。
例如:
redis> GET foo
"1"
- 多行字符串回复
多行字符串回复每行字符串都以序号开头。
如:
redis> KEYS *
1) "bar"
2) "foo"
配置
配置reids有两种方式
1、 配置文件
启动redis时,把配置文件作为启动参数传递给redis-server,如:
$ redis-server /path/redis.conf
还可以通过后面的参数覆盖配置文件对应的配置,如:
$ redis-server /path/reids.conf --loglevel warning
2、 CONFIG SET命令
通过CONFIG SET命令在不重启redis的情况下修改配置。如:
redis> CONFIG SET loglevel warning
OK
并不是所有的配置都能通过CONFIG SET命令进行设置的,具体参考附录
通过CONFIG GET命令可以获取redis的配置情况,如:
$ CONFIG GET loglevel
1) "loglevel"
2) "warning"
其中第一行是配置项,第二行是配置值
多数据库
实际上一个redis实例提供了多个字典用于存储数据,客户端可以指定将数据存储在哪个字典。这些字典可以理解为多个独立的数据库。
每个数据库对外都是一个以0开始递增的数字命名。redis默认提供16个数据库,可以通过配置参数databases来修改数据库数量。客户端跟redis建立连接后,会自动选择0数据库,可以用SELECT命令切换数据库。例如切换到1数据库:
redis> SELECT 1
OK
redis数据库跟原来的数据库有以下这些区别:
- 这些以数字命名的数据库,不支持自定义数据库名的。只能是用数字命名。
- 其次,不支持为每个数据库设置账号,一个客户端要么能访问所有数据库,要么一个数据都不能访问。
- 最后,多个数据库并不是相互独立的,例如FLUSHALL命令可以清空所有数据库的数据。
所以,redis数据库更像一种命名空间,不适宜用于存放不同应用程序的数据。
比如:可以用0数据库存放某个应用的测试环境数据,用1数据库存放某个应用的正式环境数据。但不适宜用0数据库存放A应用的数据,用1数据库B应用的数据。不同应用要用不同的redis实例存放数据。