1.认识Redis
Redis是什么?
开源 ,多种数据结构 ,基于键值的存储服务系统 , 高性能 功能丰富
特性: 速度快 持久化 多种数据结构 支持多种编辑语言,功能丰富 ,简单 ,主从复制,高可用 分布式
1,redis的特点
1.高性能Key-Value服务器
2.多种数据结构
3.丰富的功能
4.高可用分布式支持。
Redis典型应用场景
1.缓存系统 2.计数器 3.消息对列系统
4.排行榜 , 5.设交网络, 6.实时系统
1.缓存系统
2、Redis的安装
Linux安装命令
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
tar -xzf redis-3.0.7.tar.gz
In -s redis-3.0.7 redis //建立连接
cd redis
make && make install
修改配置redis
vim redis.conf 找到 daemonize 修改其属性:yes(表明需要在后台运行) daemonize yes
#注释掉 bind 127.0.0.1 -::1
开启远程访问:projected-mode no
(默认是yes的,禁止远程访问)
修改redis密码:(密码为:ssssss)
requirepass ssssss
然后 Esc + :wq! 进行保存
后台程序启动
进入redis根目录直接启动
nohup redis-server &
根据指定配置文件启动
可以为redis服务启动指定配置文件,例如配置为 /etc/redis/6379.conf
进入redis 根目录,输入命令:
./redis-server /etc/redis/6379.conf
#如果更好了端口,使用'redis-cli' 客户端连接时,也需要指定端口,例如:
redis-cli -p 6380
使用redis启动脚本设备开机自启动
启动脚本 redis_init_script 位于位于Redis的 /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 #redis服务器监听的端口 REDISPORT=6379
#服务端所处位置
EXEC=/usr/local/bin/redis-server
#客户端位置 CLIEXEC=/usr/local/bin/redis-cli #redis的PID文件位置,需要修改 PIDFILE=/var/run/redis_${REDISPORT}.pid
#redis的配置文件位置,需将${REDISPORT}修改为文件名 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
根据启动脚本,将修改好的配置文件复制到指定目录下,用root用户进行操作:
-
mkdir /etc/redis
-
cp redis.conf /etc/redis/6379.conf
将启动脚本复制到/etc/init.d目录下,本例将启动脚本命名为redisd(通常都以d结尾表示是后台自启动服务)。
cp redis_init_script /etc/init.d/redisd
设置为开机自启动,直接配置开启自启动 chkconfig redisd on 发现错误: service redisd does not support chkconfig
解决办法,在启动脚本开头添加如下注释来修改运行级别:
# chkconfig: 2345 90 10
再设置即可
-
#设置为开机自启动服务器
-
chkconfig redisd on
-
#打开服务
-
service redisd start
-
#关闭服务
-
service redisd stop
redis 可执行文件说明
redis-server => Redis 服务器
redis-cli ==> Redis 命令行客户端
redis-benchmark ==> Redis性能测试工具
redis-check-aof => AOF文件修复工具
redis-check-dump => RDB文件检查工具
redis-sentinel => Sentinel 服务器(2.8以后)
启动方式
1.最简启动Redis
redis-server
查看进程方式验证
ps -ef | grep redis
查看端口方式验证
netstat -antpl | grep redis
//Redis客户端连接
redis-cli -h ip -p port ping
//连接一个服务器地址是:10.10.79.150 端口号是: 6384
# redis-cli -h 10.10.79.150 -p 6384
备注:Redis报错 : (error) NOAUTH Authentication required.
解答:这个错误是因为没有用密码登陆认证 , 先输入密码试试 .
# auth password
2.配置文件启动
redis-server configPath
3.动态参数启动
redis-server --port 6380
//6380 是端口号
三种启动方式比较
生产环境 选择配置启动
单机多实例配置文件可以用端口区分开
Redis 常用配置
daemonize ==== 是否是守护进程(no|yes) 一般选择yes
port ====>redis 对外端口号
logfile ===> Redis 系统日志
dir ======> redis 工作目录