当前位置: 首页 > news >正文

麒麟操作系统-Redis5二进制安装

1、安装依赖

yum -y install gcc gcc-c++

2、解压Redis文件包

tar -zxf redis-5.0.9.tar.gz

3、进入Redis文件

cd redis-5.0.9

4、安装编译

make install PREFIX=/usr/local/redis

5、复制文件

cp redis.conf /usr/local/redis/bin/

6、进入Redis文件bin目录中

cd /usr/local/redis/bin

7、复制启动工具到/usr/local/bin目录下

cp redis-cli /usr/local/bin/

8、修改配置

vi /usr/local/redis/bin/redis.conf
bind 192.168.31.214 127.0.0.1
pidfile /data/redis/6379.pid
logfile /data/redis/6379.log
dbfilename 6379.rdb
dir /data/redis/
daemonize yes
databases 128
save 3600 1
save 300 100
save 60 10000
masterauth 123456
requirepass 123456
maxclients 60000  最大客户端数量
maxmemory <bytes> 最大内存限制 一般采用的是内存的40%
maxmemory-policy allkeys-lru # 内存达到限制值的处理策略 1、volatile-lru:只对设置了过期时间的key进行LRU(默认值) 2、allkeys-lru : 删除lru算法的key 3、volatile-random:**随机删除即将过期key 4、allkeys-random:**随机删除 5、volatile-ttl : 删除即将过期的 6、noeviction : 永不过期,返回错误
appendonly yes #默认不开启aof 使用rdb方式持久化的,改成yes
appendfilename "appendonly.aof" #改成6379.aof
appendfsync everysec #改成每秒执行一次同步
notify-keyspace-events Ex
slowlog-log-slower-than 100
slowlog-max-len 500
client-output-buffer-limit
client-output-buffer-limit slave 256mb 64mb 60
lazyfree-lazy-eviction:表示当 Redis 运行内存超过 maxmeory 时,是否开启 lazy free 机制删除;
lazyfree-lazy-expire:表示设置了过期时间的键值,当过期之后是否开启 lazy free 机制删除;
lazyfree-lazy-server-del:有些指令在处理已存在的键时,会带有一个隐式的 del 键的操作,比如 rename 命令,当目标键已存在,Redis 会先删除目标键,如果这些目标键是一个 big key,就会造成阻塞删除的问题,此配置表示在这种场景中是否开启 lazy free 机制删除;
slave-lazy-flush:针对 slave(从节点) 进行全量数据同步,slave 在加载 master 的 RDB 文件前,会运行 flushall 来清理自己的数据,它表示此时是否开启 lazy free 机制删除。
建议开启其中的 lazyfree-lazy-eviction、lazyfree-lazy-expire、lazyfree-lazy-server-del 等配置,这样就可以有效的提高主线程的执行效率。

9、让redis开机自启

vi /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
将服务加入开机自启 systemctl enable redis.service
systemctl start redis.service #启动redis服务 
systemctl disable redis.service #停止开机自启动 
systemctl stop redis.service #停止redis服务 
systemctl status redis.service #查看服务当前状态 
systemctl restart redis.service  #重新启动服务 
systemctl list-units --type=service #查看所有已启动的服务

10、开发防火墙

firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload

相关文章:

  • fatal: unable to access ‘https://github.com/xxx/‘: SSL peer certificat
  • 单片机之基本元器件的工作原理
  • pytest测试专题 - 1.2 如何获得美观的测试报告
  • 《OpenCV》——特征提取与匹配方法
  • SQL-leetcode—1407. 排名靠前的旅行者
  • 3.3 学习UVM中的uvm_driver 类分为几步?
  • override 关键字的作用
  • nodejs 037: Js Worker线程消息传递 Worker.postMessage() Worker.postMessage()
  • Unity Dots理论学习-4.ECS有关的模块(3)
  • 厘米和磅的转换关系
  • AI-Engine-Direct-Helper 快速上手及环境配置
  • FPGA简介|结构、组成和应用
  • C++、Dijkstra实现导航系统设计——课设
  • JavaScript 发起网络请求
  • AN 433:源同步接口的约束与分析
  • 【前端】自己从头实现一个gpt聊天页面
  • AI向量数据库之LanceDB快速介绍
  • 数据仓库与数据挖掘记录 三
  • stm32小白成长为高手的学习步骤和方法
  • 在C++的DLL文件中定义的结构体,在DLL外可以使用吗,如何使用?
  • 小耳朵等来了春天:公益义诊筛查专家走进安徽安庆
  • 外交部:反对美方人士发表不负责任谬论
  • 汤加附近海域发生6.4级地震
  • 沧州制造展现硬核实力:管道装备支撑大国基建,核电锚栓实现国产
  • 气候多米诺:厄尔尼诺与东南亚跨境害虫或威胁中国粮食安全
  • 广东省原省长卢瑞华逝世,享年88岁