安装运行redis
-
在Linux系统上安装Redis
环境准备
Redis是C语言开发,建议在Linux上运行,本人系统centos-6.5。
安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum -y install gcc-c++
版本说明:使用redis3.0版本。3.0版本主要增加了redis集群功能。
源码下载
从官网下载http://download.redis.io/releases/redis-3.0.0.tar.gz
安装步骤:
第一步:redis的源码包上传到linux系统。
第二步:解压缩redis。
第三步:编译。make
[root@localhost redis]# cd redis-3.0.0 [root@localhost redis]# make
第四步:安装。make install PREFIX=/usr/local/redis
[root@localhost redis-3.0.0]# make install PREFIX=/usr/local/redis [root@localhost redis-3.0.0]# cd /usr/local/redis/ [root@localhost redis]# ls
[root@localhost redis]# cd bin/ [root@localhost bin]# ll
-
启动redis
redis前端启动:
[root@localhost bin]# ./redis-server
redis后台启动:
把解压后的redis-3.0.0/redis.conf复制到/usr/local/redis/bin目录下
[root@localhost redis-3.0.0]# cp redis.conf /usr/local/redis/bin/
修改配置文件:
保存退出,启动redis
[root@localhost bin]# ./redis-server redis.conf
查看redis进程:[root@localhost bin]# ps aux|grep redis
启动多个redis进程
方法1:
启动时指定端口可在一台服务器启动多个redis进程。
[root@localhost bin]# cd /usr/local/redis/bin [root@localhost bin]# ./redis-server ./redis.conf --port 6380
方法2(推荐此方法):
创建多个redis目录,以端口号命名,比如:创建6379、6380两个目录,将redis的安装文件bin和conf拷贝至这两个目录。
修改6379目录下的redis.conf设置端口号为6379
修改6380目录下的redis.conf设置端口号为6380
启动6379和6380目录下的redis-server程序:
[root@localhost multiredis]# ./6379/bin/redis-server ./6379/bin/redis.conf [root@localhost multiredis]# ./6380/bin/redis-server ./6380/bin/redis.conf
redis-cli连接redis
[root@localhost bin]# ./redis-cli
默认连接localhost运行在6379端口的redis服务。
[root@localhost bin]# ./redis-cli -h 192.168.25.153 -p 6379 -h:连接的服务器的地址 -p:服务的端口号
redis向服务端发送命令
ping
Redis提供了PING命令来测试客户端与Redis的连接是否正常,如果连接正常会收到回复PONG
set/get
使用set和get可以向redis设置数据、获取数据.
-
redis多数据库
redis实例
一个redis进程就是一个redis实例,一台服务器可以同时有多个redis实例,不同的redis实例提供不同的服务端口对外提供服务,每个redis实例之间互不影响。每个redis实例都包括自己的数据库,数据库中可以存储自己的数据。
多数据库测试
一个Redis实例可以包括多个数据库,客户端可以指定连接某个redis实例的哪个数据库,就好比一个mysql中创建多个数据库,客户端连接时指定连接哪个数据库。
一个redis实例最多可提供16个数据库,下标从0到15,客户端默认连接第0号数据库,也可以通过select选择连接哪个数据库,如下连接1号库:
在1号库中查询上节设置的数据,结果查询不到:
重新选择第0号数据库,查询数据:
如果选择一个不存在数据库则会报错:
注意:redis不支持修改数据库的名称,只能通过select 0、select 1...选择数据库。
注意问题
在0号数据库存储数据,在1号数据库执行清空数据命令却把0号数据库的数据给清空了:
建议:不同的应用系统要使用不同的redis实例而不是使用同一个redis实例下的不同数据库。