redis安装和部署访问(linux)
redis安装
最新版本:http://download.redis.io/redis-stable.tar.gz
下载安装:
$ wget http://download.redis.io/redis-stable.tar.gz
$ tar xzf redis-stable.tar.gz
$ cd redis-stable
$ make
$ make install PREFIX=/usr/local/redis
安装完毕后,需要将配置文件拷贝到安装目录下:
cp /root/redis-stable/redis.conf /usr/local/redis/
注:也可以无需配置直接编译使用,如果没有执行make install则不会拷贝文件至/usr/local/bin目录
,会直接在当前目录,可以通过prefix指定安装目录;
调试配置文件与运行
启动服务端
这里直接执行redis-server
启动的redis服务,是在前台直接运行的,如果Lunix关闭当前会话,则Redis服务也随即关闭。
正常情况下,启动Redis服务需要从后台启动,并且指定启动配置文件。
首先编辑/usr/local/redis/redis.conf
文件,将daemonize属性改为yes(表明需要在后台运行)
再次启动redis服务,并指定启动服务配置文件
/usr/local/bin/redis-server /usr/local/redis/redis.conf
启动客户端
服务端启动成功后,执行redis-cli启动redis 客户端,查看端口号。
$ redis-cli
linux下设置redis开机启动(重要)
创建服务文件/usr/lib/systemd/system/redis.service
,内容如下:
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重新载入配置:sudo systemctl daemon-reload
然后设置开机启动:sudo systemctl enable redis.service
启动服务:sudo systemctl start redis.service
产生软链接:ln -s /usr/local/redis/bin/redis-cli /usr/local/bin/redis-cli
搞定!
还有一种比较古老的方法:
新建一个 /etc/init.d/redis脚本,设置开机启动时会去加载执行该脚本。
脚本内容如下(模板# cat utils/redis_init_script):
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
### BEGIN INIT INFO
# Provides: redis_6379
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Redis data structure server
# Description: Redis data structure server. See https://redis.io
### END INIT INFO
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.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
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
设置可执行权限:chmod 777 /etc/init.d/redis`或 chmod u+x /etc/init.d/redis
将配置文件放到/etc/redis/6379.conf,然后启动redis:
# cp /root/redis-6.0.6/redis.conf /etc/redis/6379.conf
# /etc/init.d/redis start
设置开机启动,把脚本添加到系统服务列表:
#chkconfig --add redis
#chkconfig redis on
//查看所有注册的脚本文件
#chkconfig --list
最后
执行结束之后用redis-cli 或者 ps aux|grep redis 查看redis是否成功启动.
关机重启测试:reboot
其他配置
需要永久配置密码的话就去redis.conf的配置文件中找到requirepass这个参数,如下配置:
修改redis.conf配置文件,指定密码123456
# requirepass foobared
requirepass 123456
如果出现telnet: connect to address 172.18.8.8: Connection refused
除了127.0.0.1之外,其它同个交换机的内网机器都无法访问,需要注释掉conf的bind 127.0.0.1
然后通过防火墙和实例的安全组联合控制权限即可。
附redis Windows的下载地址:https://github.com/microsoftarchive/redis/releases
卸载与关闭
关闭redis直接执行 redis-cli shutdown
如果卸载,直接停止服务后,删除上述的压缩包,然后删除对应的文件即可
附windows用bat批处理链接redis-cli.exe
在windows下,如果安装了redis-cli.exe(一般用phpstudy可以快捷安装)用以下bat脚本可以实现快速连接redis数据库
新建一个redisConn.bat
文件,编辑输入以下内容。
D:
cd D:\phpstudy_pro\Extensions\redis3.0.504
redis-cli.exe -h 192.168.0.177 -p 6379
保存后双击运行即可。