Centos7部署redis6

1、前置环境

服务器版本:CentOS Linux release 7.9.2009 (Core)

配置:2核2G

关闭防火墙和selinux

redis6的下载的地址:https://download.redis.io/releases/redis-6.2.9.tar.gz

1.1、安装依赖项

[root@docker ~]# yum install -y vim lrzsz gcc gcc-c++ make cmake tar openssl openssl-devel

2、redis编译安装

2.1、下载redis6

[root@redis ~]# wget https://download.redis.io/releases/redis-6.2.9.tar.gz

2.2、编译和安装

# 解压至/usr/local/src/
[root@redis ~]# tar -zxf redis-6.2.9.tar.gz -C /usr/local/src/

# 进入/usr/local/src/redis-6.2.9
[root@redis ~]# cd /usr/local/src/redis-6.2.9/

# 编译和安装redis
[root@redis redis-6.2.9]# make && make install

# 复制redis的配置文件redis.conf到/etc目录
[root@redis redis-6.2.9]# cp redis.conf /etc/

2.3、检查是否安装完成

# 查看redis的执行文件
[root@redis redis-6.2.9]# ls /usr/local/bin/redis-*

# 查看redis的版本信息
[root@redis redis-6.2.9]# redis-server -v

 如图:

3、redis配置和参数调优

3.1、redis.conf配置更改

# 备份配置文件
[root@redis redis-6.2.9]# cp /etc/redis.conf /etc/redis.conf.bak

# 去掉配置文件内容的空格和注释
[root@redis redis-6.2.9]# sed -i '/^#/d;/^$/d' /etc/redis.conf

# 修改redis.conf
[root@redis redis-6.2.9]# vim /etc/redis.conf

# 更改以下内容
bind 0.0.0.0    #绑定服务器的所有网卡
port 6379
dir /data/redis
requirepass 666666  #添加
pidfile "redis.pid"
logfile "redis.log"
daemonize no  # 这个设置为yes,会跟systemd守护进程冲突

3.2、设置systemd管理redis

# 创建和添加内容
[root@redis redis-6.2.9]# vim /etc/systemd/system/redis.service


# 添加以下内容
[Unit]
Description=redis-server
After=network.target
 
[Service]
# ExecStart需要按照实际情况修改成自己的地址
ExecStart=/usr/local/bin/redis-server /etc/redis.conf
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

# 重新加载
[root@redis redis-6.2.9]# systemctl daemon-reload

# 启动redis和设置开机启动
[root@redis redis-6.2.9]# systemctl start redis
[root@redis redis-6.2.9]# systemctl enable redis

查看redis的运行状态,如图:

 3.3、参数调优

可以通过查看redis.log日志,进行修改相应的参数。

[root@redis redis-6.2.9]# cat /data/redis/redis.log 
[root@docker redis]#  vim /etc/security/limits.conf 
* - nofile 65535  //添加

[root@docker redis]#  vim /etc/sysctl.conf
net.core.somaxconn = 10240
vm.overcommit_memory = 1 

[root@docker redis]#  sysctl -p  //使上述配置生效

3.4、连接redis

# 666666为在redis.conf设置的redis密码
[root@redis redis-6.2.9]# redis-cli -a 666666

效果如图: 

4、redis常用的数据类型和基本操作

4.1、客户端redis-cli登录redis

  • redis-cli        # 默认为127.0.0.1:6379
  • redis-cli -h redis的IP地址
  • redis0cli -h xxx -p  xxx

4.2、redis登录认证

  • 登录后再认证

  • 登录的时候直接认证

4.3、redis的常用数据类型

字符串

redis的string可以包含任何数据。

命令:

  • set (key) (value):设置键值对
  • get(key):获取key对应的value
  • del (key):删除key
  • keys * :显示所有的key

列表

列表是有顺序的,可写入重复的数据。

命令:

  • Rpush key value        # 从列表的右侧依次写入
  • Lpush key value         #从列表的左侧依次写入
  • Lrange key start stop #获取列表的值,start为开始的序号,stop为结束的序号
  • Llen key                      #获取列表的长度
  • Lrem key num value   #删除列表里对应的值

集合

集合是无顺序的,没有重复的值。

命令:

  • Sadd key value        #在集合里写入
  • Smembers num       #获取集合里的所有值
  • Srem key value       #删除集合里的值

哈希

哈希的值是以k-v形式储存。

命令:

  • hset key field value      # 创建hash
  • hgetall key                   #获取hash里所有的键值对
  • hget key                       #获取单个键值对里的value
  • hdel key field                #删除单个键值对
  • del key                          #删除整个hash

5、redis切换库和运维监控命令

5.1、通过select切换数据库

redis的数据库默认是16个,通过select命令来进行切换,默认数据库是第0个数据库,每个数据库是独立的 。

5.2、redis运维监控命令

查看key命令

randomkey : 随机获得一个key

keys * : 查看所有key值,如果key数量特别大的时候,容易卡死阻塞

scan 0 : 每次获取11个key,循环获取,直到获取所有key。

监控命令

1、redis-cli -a redis密码 --stat     #监控redis状态

keys : redis的key总数量

men : 占用内存

clients : 客户端的数量

blocked :

requests : 请求数量

connections :连接数

2、redis-cli -a 666666 monitor        #监控redis操作,增加、删除等操作记录

3、 redis-cli -a 666666 info        #获取redis的info数据

 4、 redis-cli -a 666666 info  CPU       #获取redis的info数据的单独模块

6、redis配置的动态更新

查看所有配置:config get *

 获取某个配置:config get 配置项

更新某个配置:config set 配置项 

 永久写入配置:config rewrite

不执行此语句的话,已更改的配置会在redis服务重启的时候失效。

7、redis的慢日志和key的有效期

config get slow*        #查看慢日志的配置

        slowlog-max-len : 最多记录多少条数

        slowlog-log-slower-than : 默认超过10毫秒就会记录

slowlog get        #查询慢日志 ,默认查询10条

slowlog get 5        #获取5条

slowlog len           #查看慢日志的条数

slowlog reset        #清空慢日志

8、redis禁用危险命令和压测工具介绍

禁用危险命令

[root@redis redis-6.2.9]# vim /etc/redis.conf

# 添加以下内容,禁用危险命令
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command KEYS ""
rename-command CONFIG ""

压测工具

 1、redis-benchmark

redis-benchmark是redis自带的测压工具,通过命令进行模拟测试,命令格式:

redis-benchmark -h host -p port -c connections -n requests

 host为redis服务器的IP,port为redis的端口,connections为并发连接数,requests为请求数量。

redis-benchmark会基本对redis里的每一个命令都进行压测一遍。

可以通过把测试结果输出到一个文件里,方便查看:redis-benchmark | tee redis-chk.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值