Ubuntu22.04安装Redis-7.2.4并在Windows远程连接

一. 虚拟机要求

本篇文章所依赖的软件或系统条件如下:

  • VMware虚拟机管理软件
  • Ubuntu 22.04 LTS desktop

准备好上述两样东西,即可开始。

二. 实验过程

设置静态IP

首先,进入VMware的首页,然后依次点击:编辑 -> 虚拟网络编辑器

点击更改设置

选择VMnet8 -> 更改子网IP为 192.168.11.0 -> 更改子网掩码为 255.255.255.0 -> 点击 NAT模式 -> 点击 NAT设置

修改网关IP为 192.168.11.1

然后一路确定退出。

接着,按Windows键 -> 输入查看网络连接 -> 选择VMnet8 -> 点击右键选择属性

双击Internet协议版本4

进行如下配置后,一路确定退出。

进入Ubutnu中设置IP地址,具体配置如下:

应用该配置后,先关闭网络连接再开启网络连接,然后我们就会发现,网络可以连接了。 如果网络还是没有连接,那么我们需要检查一下当前Ubuntu虚拟机是否是使用VMnet8网卡。

下载Redis源码

先创建一个目录,存储Redis源码:

bash 复制代码
sudo mkdir /Redis
cd /Redis

开始下载Redis源码:

arduino 复制代码
wget http://download.redis.io/releases/redis-7.2.4.tar.gz

下载编译源码需要的工具:

sql 复制代码
sudo apt-get update
sudo apt update
sudo apt-get install -y gcc
sudo apt-get install -y g++
sudo apt-get install -y gcc automake autoconf libtool make

解压源码:

复制代码
tar -zxvf redis-7.2.4.tar.gz

编译Redis源码

转入Redis源码目录:

bash 复制代码
cd redis-7.2.4

自动读取分配给虚拟机的处理器个数,用来编译源码:

bash 复制代码
sudo make MALLOC=libc -j$(cat /proc/cpuinfo | grep "processor" | wc -l)

编译完成后,测试一下:

bash 复制代码
sudo make test -j$(cat /proc/cpuinfo | grep "processor" | wc -l)

测试完成后,没有一点错误,然后将生成的可执行文件(最终生成了一个bin目录,bin目录中是可执行文件)拷贝到想要放入到/usr/local/bin中:

bash 复制代码
sudo make install PREFIX=/usr/local/bin -j$(cat /proc/cpuinfo | grep "processor" | wc -l)

然后将bin目录的可执行文件转移到系统变量PATH所设置的路径中:

bash 复制代码
sudo mv /usr/local/bin/bin/* /usr/local/bin/

删除空目录bin:

bash 复制代码
sudo rm -r /usr/local/bin/bin

设置Redis自启动

转移到系统服务目录:

bash 复制代码
cd /etc/systemd/system

下载vim:

复制代码
sudo apt install vim

使用vim来创建文件redis.service:

复制代码
sudo vim redis.service

将以下内容复制进去并保存:

ini 复制代码
[Unit]
Description=redis-server
After=network.target
​
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /Redis/redis-7.2.4/redis.conf
PrivateTmp=true
​
[Install]
WantedBy=multi-user.target

赋予redis.service所有权限:

bash 复制代码
sudo chmod 777 redis.service

设置redis.service开机自启:

bash 复制代码
sudo systemctl enable redis.service

编辑redis.conf配置文件:

bash 复制代码
sudo vim /Redis/redis-7.2.4/redis.conf

修改两个设置并保存:

bash 复制代码
# 设置Redis使用守护进程来启动,即在后台启动
daemonize yes

# 跟随系统关闭而关闭,系统启动而重启
supervised systemd

然后我们重启系统:

复制代码
sudo reboot

重启成功后,打开终端,测试一下Redis服务是否已经自启动:

复制代码
redis-cli

发现Redis客户端成功连接上Redis服务端,呈现如下信息:

makefile 复制代码
127.0.0.1:6379>

关闭Ubuntu的防火墙

Ubuntu默认安装了ufw,如果你没有安装,就试着安装一下:

复制代码
sudo apt install ufw

根据以下命令和对应解释来进行调整:

csharp 复制代码
sudo ufw status #检查防火墙的状态
sudo ufw enable #开启防火墙
sudo ufw disable #关闭防火墙
sudo ufw default deny #设置默认拒绝访问
sudo ufw allow 53 #允许外部访问53号端口
sudo ufw delete allow 54 #禁用53号端口
sudo ufw allow from 192.168.1.100 #允许此IP访问所有的本机端口
sudo ufw delete allow from 192.168.1.100 #删除对此IP的批准

修改Redis配置文件

默认的Redis配置文件,是不允许远程连接的,只能在当前主机里连接,所以我们需要修改配置。先下载vim并使用vim打开:

bash 复制代码
sudo vim /Redis/redis-7.2.4/redis.conf

配置修改如下:

shell 复制代码
# 将bind 127.0.0.1 和 bind-source-addr 10.0.0.1 注释掉
# bind 127.0.0.1
# bind-source-addr 10.0.0.1

# 将保护模式取消掉
protected-mode no

#设置Redis密码为123456
requirepass 123456

远程连接测试

现在我们在Windows中可以连接到Redis了,如下所示,使用Tiny RDM(Github的一个项目)来连接:

发现连接成功,并能看到数据:

相关推荐
格调UI成品22 分钟前
DCS+PLC协同优化:基于MQTT的分布式控制系统能效提升案例
数据库·云边协同
牵牛老人1 小时前
Qt C++ 复杂界面处理:巧用覆盖层突破复杂界面处理难题之一
数据库·c++·qt
GBASE1 小时前
GBASE南大通用技术分享:构建最优数据平台,GBase 8s数据库安装准备(三)
数据库
言之。2 小时前
Django REST Framework 中 @action 装饰器详解
数据库·sqlite
十八旬3 小时前
苍穹外卖项目实战(day7-1)-缓存菜品和缓存套餐功能-记录实战教程、问题的解决方法以及完整代码
java·数据库·spring boot·redis·缓存·spring cache
要一起看日出4 小时前
MVCC-多版本并发控制
数据库·mysql·mvcc
Hx__5 小时前
MySQL InnoDB 的 MVCC 机制
数据库·mysql
速易达网络5 小时前
ASP.NET MVC 连接 MySQL 数据库查询示例
数据库·asp.net·mvc
玉衡子5 小时前
MySQL基础架构全面解析
数据库·后端
梦中的天之酒壶5 小时前
Redis Stack扩展功能
数据库·redis·bootstrap