Linux安装Redis
1.Redis简介
1.1 Redis简介
Redis:Remote Dictionary Server(远程字典服务器)
Redis是当前比较热门的NOSQL系统之一,它是一个开源的使用ANSI c语言编写的key-value存储系统(区别于MySQL的二维表格的形式存储。)。和Memcache类似,但很大程度补偿了Memcache的不足。和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用场景适用于缓存无需持久化的数据。而Redis不同的是它会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,实现数据的持久化
1.2 Redis的特点
1.Redis读取的速度是110000次/s,写的速度是81000次/s
2.原子,Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的子性执行。
3.支持多种数据结构:string(字符串);list(列表);hash(哈希),set(集合);zset(有序集合)
4.持久化,主从复制(集群)
5.支持过期时间,支持事务,消息订阅。
6.官方不支持window,但是有第三方版本。
1.3 Redis的应用场景
1. 数据缓存(提高访问性能)
将一些数据在短时间之内不会发生变化,而且它们还要被频繁访问,为了提高用户的请求速度和降低网站的负载,降低数据库的读写次数,就把这些数据放到缓存中。
2. 会话缓存(session cache,保存web会话信息)
3. 排行榜/计数器(NGINX+lua+redis计数器进行IP自动封禁)
4. 消息队列(构建实时消息系统,聊天,群聊)
2.Redis的安装
2.1 下载Redis
redis目前的最新版本是5.X此教程是以4.X为基础来整理的,大家尽量保持一致 Redis下载地址
2.2 使用Xshell6和Xftp6将压缩包拷贝到/root/downloads/目录下
2.3 开始安装
-
安装gcc,目的是编译软件
yum install gcc-c++
-
解压
tar -zxvf redis-4.0.12.tar.gz
-
把解压的文件copy到/usr/local/src里面
cp -r /root/downloads/redis-4.0.12 /usr/local/src/ 重命名 cd /usr/local/src/ mv redis-4.0.12 redis
-
打开/usr/local/src/redis/deps进行编译依赖项
cd /usr/local/src/redis/deps make hiredis lua jemalloc linenoise
-
打开/usr/local/src/redis进行编译
cd /usr/local/src/redis make
-
在上面的Redis目录安装把它安装到/usr/local/redis里面
mkdir /usr/local/redis make install PREFIX=/usr/local/redis
-
验证安装是否成功
cd /usr/local/redis/bin ls 看到如下启动文件就可以了
-
把配置文件移动到/root/myredis目录[目录可以自定义] 可以为/root/myredis
mkdir /root/myredis cp /usr/local/src/redis/redis.conf /root/myredis
-
启动Redis
cd /usr/local/redis/bin ./redis-server /root/myredis/redis.conf
-
默认情况,Redis不是在后台运行,我们需要把redis放在后台运行
vim /root/myredis/redis.conf
-
客户端链接和退出
首先关闭防火墙(Red Head) service iptables status(查看防火墙状态) service iptables stop(关闭防火墙)
#连接 cd /usr/local/redis/bin ./redis-server /usr/myredis/redis.conf ./redis-cli 默认是-h 127.0.0.1 -p 6379(端口号)
#退出 quit
-
停止redis
cd /usr/local/redis/bin ./redis-cli shutdown
-
redis配置
daemonize:如需要在后台运行,把该项的值改为yes
pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址
bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项
port:监听端口,默认为6379
timeout:设置客户端连接时的超时时间,单位为秒
loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice
logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
database:设置数据库的个数,默认使用的数据库是0
save:设置redis进行数据库镜像的频率
rdbcompression:在进行镜像备份时,是否进行压缩
dbfilename:镜像备份文件的文件名
dir:数据库镜像备份的文件放置的路径
slaveof:设置该数据库为其他数据库的从数据库
masterauth:当主数据库连接需要密码验证时,在这里设定
requirepass:设置客户端连接后进行任何其他指定前需要使用的密码
maxclients:限制同时连接的客户端数量
maxmemory:设置redis能够使用的最大内存
appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态
appendfsync:设置appendonly.aof文件进行同步的频率
vm_enabled:是否开启虚拟内存支持
vm_swap_file:设置虚拟内存的交换文件的路径
vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
vm_page_size:设置虚拟内存页的大小
vm_pages:设置交换文件的总的page数量
vm_max_thrrads:设置vm IO同时使用的线程数量
转载:https://blog.csdn.net/qq_43478581/article/details/105779465