首页 > 代码库 > redis安装
redis安装
今天自己安装了下redis。
1:下载redis
下载地址http://code.google.com/p/redis/downloads/list
http://www.redis.cn/download.html
我下载的最新的redis-2.6.14版本号
2:安装redis
下载后解压 tar zxvf redis-2.6.14.tar.gz 到随意文件夹。比如 /birenjie/redis-2.6.14解压后,进入redis文件夹
cd /birenjie/redis-2.6.14
make
make之后,我们会得到下面可运行文件:
redis-server:Redis服务器的daemon启动程序
redis-cli:Redis命令行操作工具。或者通过telnet进行纯文本协议操作
redis-benchmark:Redis性能測试工具,測试Redis在你的系统及你的配置下的读写性能
复制文件
cp redis.conf /etc/ 这个文件时redis启动的配置文件
cp redis-benchmark redis-cli redis-server /usr/bin/ #这个倒是非常实用。这样就不用再运行时加上./了。并且能够在不论什么地方运行,注意这些文件的文件夹在src文件夹下,不熟悉的朋友须要注意下。
3、调优
3.1
设置内存分配策略(可选,依据server的实际情况进行设置)
/proc/sys/vm/overcommit_memory
可选值:0、1、2。
0, 表示内核将检查是否有足够的可用内存供应用进程使用。假设有足够的可用内存。内存申请同意;否则,内存申请失败,并把错误返回给应用进程。
1, 表示内核同意分配全部的物理内存。而无论当前的内存状态怎样。
2, 表示内核同意分配超过全部物理内存和交换空间总和的内存
值得注意的一点是,redis在dump数据的时候。会fork出一个子进程。理论上child进程所占用的内存和parent是一样的。比方parent占用的内存为8G,这个时候也要相同分配8G的内存给child,假设内存无法负担,往往会造成redisserver的down机或者IO负载过高。效率下降。所以这里比較优化的内存分配策略应该设置为 1(表示内核同意分配全部的物理内存。而无论当前的内存状态怎样)
echo 1 > /proc/sys/vm/overcommit_memory
3.2 改动/etc/sysctl.conf文件
vim /etc/sysctl.conf
末尾追加vm.overcommit_memory
= 1
然后运行sysctl vm.overcommit_memory=1,使之生效:
4:启动redis服务
查看进程,确认redis已经启动
root@localhost.localdomain:[/root]ps -ef | grep redis
root 6493 5213 0 14:13 pts/1 00:00:00 more /etc/redis.conf
root 6543 6516 0 14:14 pts/4 00:00:00 redis-cli
root 6692 2221 0 14:27 pts/0 00:00:00 redis-server /etc/redis.conf
root 6697 6606 0 14:28 pts/5 00:00:00 grep redis
这里建议。改动redis.conf,设置redis进程为后台守护进程
# By default Redis does not run as a daemon. Use ‘yes‘ if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize no
改动daemonize 为yes
5:測试redis
root@localhost.localdomain:[/root]redis-cli
redis 127.0.0.1:6379> set name jack
OK
redis 127.0.0.1:6379> get name
"jack"
6:关闭redis服务
redis-cli shutdown
redis 127.0.0.1:6379> shutdown
[6467] 23 Oct 14:15:21.845 # User requested shutdown...
[6467] 23 Oct 14:15:21.845 * Saving the final RDB snapshot before exiting.
[6467] 23 Oct 14:15:21.926 * DB saved on disk
[6467] 23 Oct 14:15:21.926 # Redis is now ready to exit, bye bye...
redis服务关闭后。缓存数据会自己主动dump到硬盘上,硬盘地址为redis.conf中的配置项dbfilename dump.rdb所设定
强制备份数据到磁盘。使用例如以下命令
redis-cli save 或者 redis-cli -p 6380 save(指定port)
7、redisport
redis默认port是6379 ,能够改动redis.conf 改动port
# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.
port 6379
redis安装