Redis服务搭建及操作Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。 以下是安装测试步骤: 1,redis安装: [html] view plaincopy [root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget http://redis.googlecode.com/files/redis-2.2.12.tar.gz [root@localhost src]# tar zxf redis-2.2.12.tar.gz [root@localhost src]# cd redis-2.2.12 [root@localhost redis-2.2.12]# make PREFIX=/usr/local/redis install 2,配置redis: [html] view plaincopy [root@localhost redis-2.2.12]# mkdir -p /usr/local/redis/etc [root@localhost redis-2.2.12]# mkdir -p /usr/local/redis/var [root@localhost redis-2.2.12]# cd /usr/local/redis/etc [root@localhost etc]# vi redis.conf(重新建立conf文件,需要复制下面的配置) [html] view plaincopy daemonize yes pidfile /usr/local/redis/redis.pid port 6379 bind 127.0.0.1 timeout 300 loglevel verbose logfile stdout databases 16 save 900 1 save 300 10 save 60 10000 rdbcompression yes dbfilename dump.rdb dir /usr/local/redis/var/ slave-serve-stale-data yes maxclients 12800 appendonly no appendfsync everysec no-appendfsync-on-rewrite no slowlog-log-slower-than 10000 slowlog-max-len 1024 vm-enabled no vm-swap-file /tmp/redis.swap vm-max-memory 0 vm-page-size 32 vm-pages 134217728 vm-max-threads 4 hash-max-zipmap-entries 512 hash-max-zipmap-value 64 list-max-ziplist-entries 512 list-max-ziplist-value 64 set-max-intset-entries 512 activerehashing yes 3,启动关闭redis: [html] view plaincopy [root@localhost ~]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf [root@localhost ~]# ps -ef|grep redis root 3891 1 0 18:11 ? 00:00:00 /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf [root@localhost redis-2.2.12]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown 如果配置使用默认的127.0.0.1和6379端口,可执行命令时可省略以上参数。 4,测试redis: [html] view plaincopy [root@localhost ~]# telnet 127.0.0.1 6379 Trying 127.0.0.1... Connected to localhost (127.0.0.1). Escape character is '^]'. ^] telnet> quit Connection closed. 5,/usr/local/redis/bin目录下执行文件功能说明: redis-server:Redis服务器的daemon启动程序 redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作 redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能 --------------------------满意的分割线----------------------------------- 实例: 1)登陆,输入数据: [html] view plaincopy [root@localhost ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 redis 127.0.0.1:6379> set name csdn OK redis 127.0.0.1:6379> get name "csdn" redis 127.0.0.1:6379> quit 2)查看redis统计信息: [html] view plaincopy [root@localhost ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 info 3)测试性能: 向redis服务器发送10个请求,每个请求附带50个并发客户端,-n 接请求数,-c 接并发数 [html] view plaincopy [root@localhost ~]# /usr/local/redis/bin/redis-benchmark -h 127.0.0.1 -p 6379 -n 10 -c 50 自参文档redis源码安装:redis-3.2.9.tar.gz下载:wget http://source.goyun.org:8000/source/Redis/redis-3.2.9.tar.gz解压:tar -vxf redis-3.2.9.tar.gz编译安装:cd redis-3.2.9 # make MALLOC=jemalloc #make PREFIX=/home/application/redis-3.2.9 install cd /home/application/ #ln -s redis-3.2.9 /home/application/redis 配置环境变量: #vim /etc/profile 最后一行添加:export PATH=/home/application/redis/bin/:$PATH #./etc/profile # which redis-server /home/application/redis/bin/redis-server 表示生效 规范配置文件; #mkdir /etc/redis cp /home/application/redis-3.2.9/redis.conf /etc/redis 开机启动: redis-server /etc/redis/redis.conf & 启动时发现有vm.overcommit_memory = 1(说明内存低) 后要将这条添加到vim /etc/sysctl.conf的配置文件里面 或者直接执行sysctl vm.overcommit_memory=1 临时立即生效 首先将redis关掉 :killall redis-server 然后sysctl vm.overcommit_memory=1 当前生效 这时重启:redis-server /etc/redis/redis.conf #lsof -i :6379 检查服务有没有起来 redis的正确关闭方法:redis-cli shutdownredis启动服务及客户端测试命令 客户端命令:redis-cli redis-cli -h 192.168.1.158 -p 6379 也可以用telnet去连接 Redis 3.2.9版本启动时出现警告的解决办法: 错误类型:7283:M 12 Mar 12:13:33.749 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 解决方法1: 临时设置生效: sysctl -w net.core.somaxconn = 1024 方法2: 永久生效: 修改/etc/sysctl.conf文件,增加一行 net.core.somaxconn= 1024 然后执行命令 sysctl -p 错误类型2:WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 解决方法1: 临时设置生效: sysctl -w vm.overcommit_memory = 1 方法2: 永久生效: 修改/etc/sysctl.conf文件,增加一行 vm.overcommit_memory = 1 然后执行命令 sysctl -p
posted @ 2017-06-27 23:41抚琴煮酒
阅读(...) 评论(...)编辑 收藏
来源: http://www.cnblogs.com/bbs123-logs/p/7087689.html