Redis 3.0.1
1.下载编译安装
cd /usr/local/src
wget -c http://redis.googlecode.com/files/redis-3.0.1.tar.gz
或
wget http://download.redis.io/releases/redis-3.0.1.tar.gz
tar zxvf redis-3.0.1.tar.gz
cd redis-3.0.1
make
配置文件位置: /etc/redis/redis.conf
命令:
关闭使用kill命令
启动:
./redis-server /etc/redis/redis.conf
2.yum安装方式(推荐使用,控制命令使用方便一点)
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
sudo rpm -ivh epel-release-7-10.noarch.rpm
sudo yum -y update
sudo yum install redis -y
启动
sudo systemctl start redis.service
sudo systemctl status redis.service
测试
redis-cli ping
redis-benchmark -q -n 1000 -c 10 -P 5
配置
sudo vi /etc/redis.conf
sudo systemctl restart redis.service
//默认bind 127.0.0.1是无法远程连接的,如果要远程连接,要改为bind 0.0.0.0
//在配置文件可以找到数据库文件位置:
//dbfilename dump.rdb
//dir /var/lib/redis/
//下面安装redis-stat 需要ruby支持,下面是安装ruby的
sudo yum install ruby
sudo yum install gcc g++ make automake autoconf curl-devel openssl-devel zlib-devel httpd-devel apr-devel apr-util-devel sqlite-devel
sudo yum install ruby-rdoc ruby-devel
//也行需要运行下面几句,更换源
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l
sudo gem install redis-stat
sudo chmod go-w /usr/local
sudo chmod go-w /usr/sbin
sudo chmod go-w /usr/bin
sudo chmod go-w /usr/java
如果g++提示没有安装成功,可执行:
yum -y update gcc
yum -y install gcc+ gcc-c++
如果提示 ERROR: While executing gem ... (OpenSSL::SSL::SSLError)
可执行:
gem update --system
如果提示: /usr/local/share/ruby/site_ruby/rubygems/dependency.rb:308:in `to_specs': Could not find 'eventmachine' (>= 0.12.6) among 30 total gem(s) (Gem::MissingSpecError)
可执行
gem install eventmachine
3.使用
查看版本
redis-server --version
Redis-benchmark
Redis基准信息,redis服务器性能检测
redis-benchmark -h localhost -p 6379 -c 100 -n 100000
100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能
停止
redis-cli shutdown
监控
redis-cli -h localhost -p 6380 monitor
统计信息
redis-cli -h localhost -p 6380 info
带密码连接
redis-cli -h ... -a 密码
总体信息
redis-stat host localhost port 6380 overview
本机可直接运行redis-stat
请求时长
redis-stat host localhost port 6380 overview
可以在redis-cli下输入下列命令:
- info
- monitor
参考:http://redis.io/commands/INFO
4.配置启动脚本
新建文件,放在/etc/init.d下,命名为redis
###########################
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis.pid
CONF="/etc/redis.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x ${PIDFILE} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac
##############################
赋予可执行权限
chmod +x /etc/init.d/redis
设置开机启动
sudo chkconfig redis on
启动关闭
service redis start #或者 /etc/init.d/redis start
service redis stop #或者 /etc/init.d/redis stop
参考:
https://www.digitalocean.com/community/tutorials/how-to-configure-a-redis-cluster-on-centos-7
5.常用操作
获得符合规则的键名列表:
KEYS patter : pattern
Redis 5.0.0
源码安装
wget http://download.redis.io/releases/redis-5.0.0.tar.gz
tar xzf redis-5.0.0.tar.gz
cd reids-5.0.0
yum -y install gcc
yum -y install tcl
make MALLOC=libc
make install PREFIX=/root/redis-5.0.0/
make test
make
vi redis.conf
一些问题处理:
24845:M 25 Mar 2019 08:51:40.611 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to th
e lower value of 128.
24845:M 25 Mar 2019 08:51:40.611 # Server initialized
24845:M 25 Mar 2019 08:51:40.611 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issu
e 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
.
24845:M 25 Mar 2019 08:51:40.611 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and m
emory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it
to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
1.
vim /etc/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/enabled
且运行此命令