Linux下Redis服务器安装配置
说明:
操作系统:CentOS
1、安装编译工具
yuminstallwgetmakegccgcc-c++zlib-developensslopenssl-develpcre-develkernelkeyutilspatchperl
2、安装tcl组件包(安装Redis需要tcl支持)
下载:http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
上传tcl8.6.1-src.tar.gz到/usr/local/src目录
cd/usr/local/src#进入软件包存放目录
tarzxvftcl8.6.1-src.tar.gz#解压
cdtcl8.6.1#进入安装目录
cdunix
./configure--prefix=/usr--without-tzdata--mandir=/usr/share/man$([$(uname-m)=x86_64]&&echo--enable-64bit)#配置
make#编译
sed-e"s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@"-e"/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@"-itclConfig.sh
makeinstall#安装
makeinstall-private-headers
ln-v-sftclsh8.6/usr/bin/tclsh
chmod-v755/usr/lib/libtcl8.6.so
3、安装Redis
下载:http://download.redis.io/redis-stable.tar.gz
上传redis-stable到/usr/local/src目录
cd/usr/local/src
tar-zxvfredis-stable.tar.gz#解压
mvredis-stable/usr/local/redis#移动文件到安装目录
cd/usr/local/redis#进入安装目录
make#编译
makeinstall#安装
cd/usr/local/bin#查看是否有下面文件,如果没有,拷贝下面文件到/usr/local/bin目录
cd/usr/local/redis
mkdir-p/usr/local/bin
cp-predis-server/usr/local/bin
cp-predis-benchmark/usr/local/bin
cp-predis-cli/usr/local/bin
cp-predis-check-dump/usr/local/bin
cp-predis-check-aof/usr/local/bin
ln-s/usr/local/redis/redis.conf/etc/redis.conf#添加配置文件软连接
vi/etc/redis.conf#编辑
daemonizeyes#设置后台启动redis
:wq!#保存退出
redis-server/etc/redis.conf#启动redis服务
redis-clishutdown#关闭redis
vi/etc/sysctl.conf#编辑,在最后一行添加下面代码
vm.overcommit_memory=1
:wq!#保存退出
sysctl-p#使设置立即生效
4、设置redis开机启动
vi/etc/init.d/redis#编辑,添加以下代码
#!/bin/sh
#chkconfig:23459010
#description:Redisisapersistentkey-valuedatabase
#redisStartupscriptforredisprocesses
#processname:redis
redis_path="/usr/local/bin/redis-server"
redis_conf="/etc/redis.conf"
redis_pid="/var/run/redis.pid"
#Sourcefunctionlibrary.
./etc/rc.d/init.d/functions
[-x$redis_path]||exit0
RETVAL=0
prog="redis"
#Startdaemons.
start(){
if[-e$redis_pid-a!-z$redis_pid];then
echo$prog"alreadyrunning...."
exit1
fi
echo-n$"Starting$prog"
#Singleinstanceforallcaches
$redis_path$redis_conf
RETVAL=$?
[$RETVAL-eq0]&&{
touch/var/lock/subsys/$prog
success$"$prog"
}
echo
return$RETVAL
}
#Stopdaemons.
stop(){
echo-n$"Stopping$prog"
killproc-d10$redis_path
echo
[$RETVAL=0]&&rm-f$redis_pid/var/lock/subsys/$prog
RETVAL=$?
return$RETVAL
}
#Seehowwewerecalled.
case"$1"in
start)
start
;;
stop)
stop
;;
status)
status$prog
RETVAL=$?
;;
restart)
stop
start
;;
condrestart)
iftest"x`pidofredis`"!=x;then
stop
start
fi
;;
*)
echo$"Usage:$0{start|stop|status|restart|condrestart}"
exit1
esac
exit$RETVAL
:wq!#保存退出
chmod755/etc/init.d/redis#添加脚本执行权限
chkconfig--addredis#添加开启启动
chkconfig--level2345redison#设置启动级别
chkconfig--listredis#查看启动级别
serviceredisrestart#重新启动redis
系统运维www.osyunwei.com温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接
5、设置redis配置文件参数
mkdir-p/usr/local/redis/var#创建redis数据库存放目录
vi/etc/redis.conf#编辑
daemonizeyes#以后台daemon方式运行redis
pidfile"/var/run/redis.pid"#redis以后台运行,默认pid文件路径/var/run/redis.pid
port6379#默认端口
bind127.0.0.1#默认绑定本机所有ip地址,为了安全,可以只监听内网ip
timeout300#客户端超时设置,单位为秒
loglevelverbose#设置日志级别,支持四个级别:debug、notice、verbose、warning
logfilestdout#日志记录方式,默认为标准输出,logs不写文件,输出到空设备/deb/null
logfile"/usr/local/redis/var/redis.log"#可以指定日志文件路径
databases16#开启数据库的数量
save9001
save30010
save6010000
创建本地数据库快照,格式:save**
900秒内,执行1次写操作
300秒内,执行10次写操作
60秒内,执行10000次写操作
rdbcompressionyes#启用数据库lzf压缩,也可以设置为no
dbfilenamedump.rdb#本地快照数据库名称
dir"/usr/local/redis/var/"#本地快照数据库存放目录
requirepass123456#设置redis数据库连接密码
maxclients10000#同一时间最大客户端连接数,0为无限制
maxmemory1024MB#设定redis最大使用内存,值要小于物理内存,必须设置
appendonlyyes#开启日志记录,相当于MySQL的binlog
appendfilename"appendonly.aof"#日志文件名,注意:不是目录路径
appendfsynceverysec#每秒执行同步,还有两个参数always、no一般设置为everysec,相当于MySQL事物日志的写方式
:wq!#保存退出
serviceredisrestart#重启
6、测试redis数据库
redis-cli-a123456#连接redis数据库,注意:-a后面跟redis数据库密码
setnameosyunwei.com#写数据
getname#读取数据
exit#退出redis数据库控制台
redis-benchmark-h127.0.0.1-p6379-c1000-n100000#1000个并发连接,100000个请求,测试127.0.0.1端口为6379的redis服务器性能
7、通过php程序连接redis数据库#php必须先安装Redis扩展
redis数据库IP:192.168.21.128
端口:6379
密码:123456
测试代码:
<?php
$redis=newRedis();
$redis->connect('192.168.21.128',6379);
$redis->auth('123456');
$redis->select(1);
$ret=$redis->set('www.osyunwei.com','osyunwei');
var_dump($ret);
$allKeys=$redis->keys('*');
print_r($allKeys);
?>
把上面代码保存为test.php,打开之后会出现如下页面
bool(true)Array([0]=>www.osyunwei.com)
至此,Linux下Redis服务器安装配置完成。