乐趣区

关于redis:那些年我们用过的RedisLinux下Redis安装与使用

一款由 C 编写的开源、基于内存、单线程、可长久化的 NoSql 数据库。

环境与版本

linux 环境为腾讯云 单核`CentOS7.2.1511`。
redis 版本为5.0.9。Redis 官网下载地址.

为什么不装置 redis6 版本?

CentOS7,原装的 gcc 版本为4.8.5。装置 redis6 须要降级 gcc 版本,目前最新的 gcc 版本为 gcc10,辣条君尝试装置 gcc9 版本,发现编译 2 个多小时都没有完结。网上说,编译时能够应用make -j4,能够开启多过程编译,but 辣条君的服务器是单核的,遂放弃降级 gcc,乖乖的装置 redis5。redis5 诞生于 2018 年底,基本功能蛮弱小了。

装置

能够应用 wget 命令下载 redis 安装包,或者从官网上下载安装包 copy 到你的环境中。

# 下载
cd /usr/local/
wget http://download.redis.io/releases/redis-5.0.9.tar.gz 
# 解压
tar -zxvf redis-5.0.9.tar.gz 

编译

cd /redis-5.0.9
make
make install PREFIX=/usr/local/redis

此时,查看 /usr/local/redis/bin 门路会发现 redis 可执行文件。将罕用的可执行文件放到环境变量中。

cd ..
cd redis/bin/
# 个别都具备超级权限,sudo 能够去掉
sudo cp redis-cli redis-server redis-sentinel /usr/local/bin

此时,你的 redis 就能够启动应用了,为了便于管理文件,咱们把配置文件放到适合的地位,并批改下配置文件。

cd /usr/local/redis-5.0.9/
# 咱们应用的配置文件在 /usr/local/redis.conf
cp redis.conf /usr/local/
cd..
# 应用 vim 查看并批改 redis.conf
vim redis.conf

批改配置文件

咱们应用 vim 批改局部参数,其余默认就好。

# 主机地址,默认是 127.0.0.1,批改成 0.0.0.0
bind 0.0.0.0
# 端口 默认就好
port 6379
# 是否开启为守护线程,默认是 no,改成 yes
daemonize yes
# 指定 redis 过程的 PID 文件寄存地位 给文件重命名
pidfile /var/run/redis_6379.pid
# 日志寄存地位 给文件重命名
logfile /var/log/redis_6379.log
# rdb 模式长久化快照,默认就好
dbfilename dump.rdb
# 长久化文件寄存地位 默认就好
dir ./
# redis 连贯明码
requirepass 123456

以上,能够依据正文很好的了解并批改局部配置文件。具体解释下几个参数:

bind设置成0.0.0.0,是为了保障本服务器以外的客户端能够拜访本 redis 服务。

daemonize设置成 yes,将 redis 服务变成守护过程。在该模式下,redis 会在后盾运行,并将过程 pid 号写入至 redis.conf 选项 pidfile 设置的文件中,此时 redis 将始终运行,除非手动 kill 该过程。daemonize 选项设置成 no 时,以后界面将进入 redis 的命令行界面,exit 强制退出或者敞开连贯工具(putty,xshell 等) 都会导致 redis 过程退出。

requirepass :如果你是云服务,这个明码肯定要设置!否则,服务器很容易被某些人拿去当矿机,就是所有服务都给你停掉,只开起挖矿程序,那你真成了 打工人 了。别问辣条君怎么晓得的。。

启动与应用

启动 so easy,就一行。

redis-server /usr/local/redis.conf
# 查看一下是否启动
ps -ef | grep redis
# 发现过程阐明 OK 了
root     11890     1  0 Nov04 ?        00:02:39 redis-server 0.0.0.0:6379

咱们的应用,分为 3 种状况:本服务器内应用、其余机器 (你的个人电脑) 可视化客户端应用、其余机器(你的个人电脑)cli 客户端应用。

  1. 首先看本服务器内应用
redis-cli -h 127.0.0.1 -p 6379 -a 123456
# 而后终端前缀会变成
127.0.0.1:6379>
# 应用一下
127.0.0.1:6379> set name pjjlt
OK
127.0.0.1:6379> get name
"pjjlt"
  1. 其余机器 (你的个人电脑) 可视化客户端应用

间接说吧,应用 Redis Desktop Manager 能够连贯并保护数据。

  1. 其余机器(你的个人电脑)cli 客户端应用

在你个人电脑,关上 cmd,利用 redis-cli 连贯 redis 服务,发现 gg。这时,须要在咱们 Linux 服务器 上关上防火墙,利用iptables

iptables 其实不是真正的防火墙,咱们能够把它了解成一个客户端代理,用户通过 iptables 这个代理,将用户的平安设定执行到对应的 ” 平安框架 ” 中,这个 ” 平安框架 ” 才是真正的防火墙,这个框架的名字叫 netfilter。

装置并应用 iptables

# 敞开防火墙
systemctl stop firewalld 
# 装置
yum install iptables-services
# 启动
systemctl enable iptables
# 关上
systemctl start iptables
# 裸露端口配置
iptables -I INPUT -p tcp -m tcp --dport 6379 -j ACCEPT
# 保留配置
service iptables save
# 重启 iptables 服务
service iptables restart
# 查看下 iptable 配置
iptables -L -n -v
# 发现 6379 端口裸露进来了
21169 1657K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:6379

ok,至此,其余机器上的 cli 也能够拜访咱们的 Redis 服务了。

退出移动版