原文地址:http://www.thisuc.com/redis.html
一、何为Redis?
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
详情:http://baike.baidu.com/view/4595959.htm
二、Linux下如何安装?
安装步骤如下:(为尽量简化,只作少许说明)
~$ wget http://redis.googlecode.com/files/redis-2.4.10.tar.gz
~$ tar -zxvf redis-2.4.10.tar.gz
~$ cd redis-2.4.10/src
~$ make
待执行完之后你会看到redis-benchmark,redis-cli,redis-server文件,证明已经成功了;
为了方便调用,在自己的空间下新建一个目录来存放执行文件以及日志配置文件
~$ cd ~
~$ mkdir redis
~$ mkdir redis/bin
~$ mkdir redis/etc
~$ mkdir redis/var
拷贝执行文件和配置文件到相应目录
~$ cp redis-2.4.10/src/redis-benchmark redis/bin
~$ cp redis-2.4.10/src/redis-cli redis/bin
~$ cp redis-2.4.10/src/redis-server redis/bin
~$ cp redis-2.4.10/redis.conf redis/etc
接着修改配置文件准备启动redis,激动人心的时刻即将来临了
~$ vi redis/etc/redis.conf
配置如下:
daemonize yes #支持后台运行
pidfile /home/gaoxc/redis/var/redis.pid #运行pid文件的位置
port 6400 #端口号,默认是6379
timeout 300 #超时时间
loglevel debug #记录日志级别
logfile /home/gaoxc/redis/var/redis.log #日志位置
databases 16 #支持数据库个数
rdbcompression yes
dbfilename dump.rdb #持久化缓存文件
dir /home/gaoxc/redis/var/ #持久化缓存文件目录
slave-server-stale-data yes
appendonly no
appendfsync always
……其余的均为默认值
启动服务:
~$ cd ~/redis/bin
~$ ./redis-server ../etc/redis.conf
可能没有任何输出,你可以查看进程
~$ ps -x | grep redis
或者去var目录下查看日志文件观察运行情况
~$ vi ~/redis/var/redis.log
OK,这些都是简单的查看服务情况,要想真实确定,就连上去试下手
~$ cd ~/redis/bin
~$ ./redis-cli -p 6400 #多端口连接方法,如果想关闭哪个redis,使用./redis-cli -p 6400
shutdown
你会看到
redis 127.0.0.1:6400>
我们来简单试验下
redis 127.0.0.1:6400> set name thisuc
redis 127.0.0.1:6400> get name
输出”thisuc”
over,一个redis服务安装配置完成,接下来就是代码实现。
三、Redis主从配置
考虑到数据并发,减少服务器压力及容灾处理,一般会用到主从配置,下面也大要介绍了下,只是用不同的端口作模拟。
1.复制一份配置出来为从机所用
~$ cp redis/etc/redis.conf redis/etc/redis_slave.conf
~$ vi redis/etc/redis_slave.conf
主机配置无需修改,从机配置如下(只记录修改到的地方):
pidfile /home/gaoxc/redis/var/redis_slave.pid
port 6401
logfile /home/gaoxc/redis/var/redis_slave.log
dbfilename dump_slave.rdb
slaveof 127.0.0.1 6400 #新增配置,代表是who的从机
2.启动从机
~$ ./redis/bin/redis-server ./redis/etc/redis_slave.conf
连接不同端口号的redis
~$ ./redis/bin/redis-cli -p 6401
redis 127.0.0.1:6400> get name
输出“thisuc”
说明该从机已经与主机同步,成功!
关于Redis的更多命令,请查看:http://redis.readthedocs.org/en/latest/index.html
一、何为Redis?
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
详情:http://baike.baidu.com/view/4595959.htm
二、Linux下如何安装?
安装步骤如下:(为尽量简化,只作少许说明)
~$ wget http://redis.googlecode.com/files/redis-2.4.10.tar.gz
~$ tar -zxvf redis-2.4.10.tar.gz
~$ cd redis-2.4.10/src
~$ make
待执行完之后你会看到redis-benchmark,redis-cli,redis-server文件,证明已经成功了;
为了方便调用,在自己的空间下新建一个目录来存放执行文件以及日志配置文件
~$ cd ~
~$ mkdir redis
~$ mkdir redis/bin
~$ mkdir redis/etc
~$ mkdir redis/var
拷贝执行文件和配置文件到相应目录
~$ cp redis-2.4.10/src/redis-benchmark redis/bin
~$ cp redis-2.4.10/src/redis-cli redis/bin
~$ cp redis-2.4.10/src/redis-server redis/bin
~$ cp redis-2.4.10/redis.conf redis/etc
接着修改配置文件准备启动redis,激动人心的时刻即将来临了
~$ vi redis/etc/redis.conf
配置如下:
daemonize yes #支持后台运行
pidfile /home/gaoxc/redis/var/redis.pid #运行pid文件的位置
port 6400 #端口号,默认是6379
timeout 300 #超时时间
loglevel debug #记录日志级别
logfile /home/gaoxc/redis/var/redis.log #日志位置
databases 16 #支持数据库个数
rdbcompression yes
dbfilename dump.rdb #持久化缓存文件
dir /home/gaoxc/redis/var/ #持久化缓存文件目录
slave-server-stale-data yes
appendonly no
appendfsync always
……其余的均为默认值
启动服务:
~$ cd ~/redis/bin
~$ ./redis-server ../etc/redis.conf
可能没有任何输出,你可以查看进程
~$ ps -x | grep redis
或者去var目录下查看日志文件观察运行情况
~$ vi ~/redis/var/redis.log
OK,这些都是简单的查看服务情况,要想真实确定,就连上去试下手
~$ cd ~/redis/bin
~$ ./redis-cli -p 6400 #多端口连接方法,如果想关闭哪个redis,使用./redis-cli -p 6400
shutdown
你会看到
redis 127.0.0.1:6400>
我们来简单试验下
redis 127.0.0.1:6400> set name thisuc
redis 127.0.0.1:6400> get name
输出”thisuc”
over,一个redis服务安装配置完成,接下来就是代码实现。
三、Redis主从配置
考虑到数据并发,减少服务器压力及容灾处理,一般会用到主从配置,下面也大要介绍了下,只是用不同的端口作模拟。
1.复制一份配置出来为从机所用
~$ cp redis/etc/redis.conf redis/etc/redis_slave.conf
~$ vi redis/etc/redis_slave.conf
主机配置无需修改,从机配置如下(只记录修改到的地方):
pidfile /home/gaoxc/redis/var/redis_slave.pid
port 6401
logfile /home/gaoxc/redis/var/redis_slave.log
dbfilename dump_slave.rdb
slaveof 127.0.0.1 6400 #新增配置,代表是who的从机
2.启动从机
~$ ./redis/bin/redis-server ./redis/etc/redis_slave.conf
连接不同端口号的redis
~$ ./redis/bin/redis-cli -p 6401
redis 127.0.0.1:6400> get name
输出“thisuc”
说明该从机已经与主机同步,成功!
关于Redis的更多命令,请查看:http://redis.readthedocs.org/en/latest/index.html