PHP使用Redis实战实录1:宝塔环境搭建、6379端口配置、Redis服务启动失败解决方案

news/2024/4/18 8:34:15/文章来源:https://blog.csdn.net/weixin_41290949/article/details/131990750

宝塔环境搭建、6379端口配置、Redis服务启动失败解决方案

  • 前言
  • 一、Redis安装部署
    • 1.安装Redis
    • 2.php安装Redis扩展
    • 3.启动Redis
  • 二、避坑指南
    • 1.6379端口配置
    • 2.Redis服务启动
      • (1)Redis服务启动失败
      • (2)Redis启动日志排查
      • (3)本案例无法启动解决方案

前言

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

一、Redis安装部署

1.安装Redis

在宝塔中选择需要安装的版本
在这里插入图片描述

  1. 6.0版本引入新的功能,主要表现为字典的空间更优化、惰性删除、哈希表改进以及 Lua 脚本的 Dynamic Replicas;
  2. 7.0版本是Redis的最新版本,可以让用户以更高的效率来部署系统、管理内容。

因此,根据需要,用户可以选择不同的Redis版本用于开发和部署应用程序:

  • 如果你想用Redis建一个高效、稳定、易用的内存数据库,建议使用Redis 5.0或更新的版本;
  • 如果你想用Redis做日志处理、元数据历史追溯等,建议使用Redis 4.0或更新的版本;
  • 如果你想用Redis来支持事务和流量控制,建议使用Redis 5.0或更新的版本;
  • 如果你需要用Redis来优化字典空间,惰性删除,哈希表改进和动态复制,建议使用6.0或更新的版本;
  • 如果你需要高性能和效率管理内容,建议使用7.0或更新的版本。

比较选择合适的Redis版本需要考虑以下几个方面:

  • 了解Redis最新版本特性
  • 熟悉应用程序具体需求
  • 把握稳定性
  • 安全性和性能等方面的平衡

在这里插入图片描述

2.php安装Redis扩展

在这里插入图片描述

3.启动Redis

在这里插入图片描述

二、避坑指南

1.6379端口配置

  1. 设置6379端口和redis密码
    在这里插入图片描述
  2. 腾讯云或阿里云服务器商安全组放行
    在这里插入图片描述
  3. 宝塔端口规则放行
    在这里插入图片描述

2.Redis服务启动

(1)Redis服务启动失败

宝塔面板启动Redis服务失败可能有多种原因,以下是一些常见的故障排除步骤:

  1. 检查错误日志:首先,查看Redis的错误日志文件,通常位于/var/log/redis/redis-server.log/var/log/redis.log。检查日志文件中的任何错误消息或异常,这将有助于了解故障的具体原因。

  2. 检查配置文件:确保Redis配置文件(通常位于/etc/redis/redis.conf)中的参数设置正确。特别关注绑定IP地址、监听端口、日志和持久化设置等。如果配置文件存在问题,可能会导致Redis无法启动。

  3. 检查端口占用:确保Redis所需的端口没有被其他进程占用。可以使用netstatlsof命令检查Redis配置文件中指定的端口是否已被占用。

  4. 检查权限设置:确保Redis目录(通常是/var/lib/redis)和Redis配置文件的所有者和权限设置正确。如果权限不正确,Redis可能无法读取或写入相关文件导致启动失败。

  5. 检查内存限制:Redis可能无法启动,如果操作系统对Redis进程的可用内存限制较低。可以通过修改/etc/security/limits.conf文件中的memlock参数来提高Redis进程的内存限制。

  6. 检查依赖项:确保Redis所需的依赖项已经安装并可用。例如,确保系统上已经安装了所需的libc、openssl和jemalloc等库。

  7. 启用调试模式:在Redis配置文件中设置daemonize no以禁用守护进程模式,然后尝试启动Redis。这将使Redis在前台运行并显示详细的启动日志,有助于找到故障原因。

  8. 更新Redis版本:如果你正在使用较旧的Redis版本,可能会遇到已知的问题和错误。尝试升级Redis到最新稳定版,看看是否可以解决问题。

如果上述步骤无法解决问题,你可以通过在终端中手动启动Redis命令(例如redis-server /path/to/redis.conf)来查看详细的错误消息。根据错误消息,可以进一步进行故障排除和解决问题。

如果仍然无法解决问题,建议咨询宝塔面板的官方支持或社区,以获取更多针对性的帮助和建议。

(2)Redis启动日志排查

在这里插入图片描述

(3)本案例无法启动解决方案

  • Redis版本切换安装,失败;
  • 查看启动日志,为空,失败;
  • 配置文件,各种网络解决方案调试,失败;
  • 命令行启动Redis,成功:
/etc/init.d/redis start

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


@漏刻有时

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_337285.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JS-----数据结构与算法(2)

目录 三. 栈结构 1.认识栈结构 2. 封装栈结构 3. 应用 3-1 十进制转二进制 3-2 进制转换法 四. 队列 1.队列是什么? 2.队列的封装 3. 队列的应用-击鼓传花 4. 双端队列 5.判断是否为回文 三. 栈结构 1.认识栈结构 栈(stack)又…

7.29训练总结

CodeForces - 1609E 这种使得整个串不包含子串’abc’的题目&#xff0c;发现可以用线段树维护 #include<bits/stdc.h> using namespace std; const int maxn1e55; #define lson now<<1 #define rson now<<1|1 struct seg {int a,b,c;int ab,bc,abc; }tr[m…

2023 年还推荐报计算机专业吗?

计算机科学是一个很好的专业&#xff0c;因为它由各种课程组成&#xff0c;为学生在成熟和新兴专业就业做好准备。以下是一些通常属于计算机科学专业的课程&#xff1a; 基本编程介绍了用于构建和维护数字架构和基础设施的编程语言和标准。 微积分为制定高级计算和设计概念提供…

eclipse 最新版没有navigator视图如何解决

使用project exploere视图可以显示类似navigator视图 1.显示project exploere视图 window---->show view --->project exploere 2.project exploere视图转换为类似navigator视图 第一步&#xff1a;点击视图右上角三个点或者倒三角&#xff0c;点击fiters and custom…

蓝图节点编辑器

打印字符串 第02章 蓝图结构 03 -注释和重新路由_哔哩哔哩_bilibili 第02章 蓝图结构 04 - 变量_哔哩哔哩_bilibili 第03章 蓝图简易门 01 - 箱子碰撞_哔哩哔哩_bilibili 第03章 蓝图简易门 02 - 静态Mesh和箭头_哔哩哔哩_bilibili 第03章 蓝图简易门 03 - 设置相对旋转节点_哔…

rocketmq rsqldb 简单记录

GitHub 地址 https://github.com/alibaba/rsqldb/tree/main&#xff0c;是和目前stream sql化看齐的Rocketmq的sql&#xff0c;类似还有kafka的sqlDB 和flink sql。 目前版本0.2 &#xff0c;主要提供rest模式调用&#xff0c;controller类为public class RsqlController支持的…

6G内存运行Llama2-Chinese-7B-chat模型

6G内存运行Llama2-Chinese-7B-chat模型 Llama2-Chinese中文社区 第一步&#xff1a; 从huggingface下载 Llama2-Chinese-7b-Chat-GGML模型放到本地的某一目录。 第二步&#xff1a; 执行python程序 git clone https://github.com/Rayrtfr/llama2-webui.gitcd llama2-web…

儿童居家健身好伙伴,小莫计数摸高训练器

现在的孩子们的越来越不喜欢运动了&#xff0c;总是爱玩手机游戏&#xff0c;对他们的身体健康非常不好&#xff0c;作为家长&#xff0c;我们希望能够给孩子提供更多的运动机会&#xff0c;有必要每天准备一些能让他们活动活动手脚的小游戏&#xff0c;让他们每天有足够的运动…

Pytorch个人学习记录总结 10

目录 优化器 优化器 官方文档地址&#xff1a;torch.optimhttps://pytorch.org/docs/stable/optim.html Debug过程中查看的grad所在的位置&#xff1a; model --> Protected Atributes --> _modules --> ‘model’ --> Protected Atributes --> _modules -…

【matlab】机器人工具箱快速上手-动力学仿真(代码直接复制可用)

动力学代码&#xff0c;按需修改参数 各关节力矩-关节变量的关系曲线&#xff1a; %%%%%%%%SCARA机器人仿真模型 l[0.457 0.325]; L(1) Link(d,0,a,l(1),alpha,0,standard,qlim,[-130 130]*pi/180);%连杆1 L(2)Link(d,0,a,l(2),alpha,pi,standard,qlim,[-145 145]*pi/180);%连…

小学期笔记——天天酷跑1

文件快照&#xff08;File snapshot&#xff09;通常是指对文件系统中某个特定时间点的文件或文件夹的快照或副本。它记录了文件或文件夹在某一时刻的状态&#xff0c;包括文件的内容、属性、权限、位置等信息。 文件快照通常用于数据备份、恢复和版本控制等目的。通过捕捉文件…

关于c++中虚函数和虚函数表的创建时机问题

以这段代码为例。 #include <iostream>using namespace std;class Parent { public:Parent(){}virtual void func1() {};virtual void func2() {}; };class Child :public Parent { public:Child():n(0),Parent(){cout << "Child()" << endl;}vir…

【网络原理】 (1) (应用层 传输层 UDP协议 TCP协议 TCP协议段格式 TCP内部工作机制 确认应答 超时重传 连接管理)

文章目录 应用层传输层UDP协议TCP协议TCP协议段格式TCP内部工作机制确认应答超时重传 网络原理部分我们主要学习TCP/IP协议栈这里的关键协议(TCP 和 IP),按照四层分别介绍.(物理层,我们不涉及). 应用层 我们需要学会自定义一个应用层协议. 自定义协议的原因? 当前的软件(应用…

轮趣科技教育版ros小车键盘控制运动

我之前买的ros小车是单独买的底板&#xff0c;以为随便一个树莓派就可以&#xff0c;因为我以前有一个树莓派3B&#xff0c;后来买了单独的小车之后&#xff0c;发现只能使用树莓派4B&#xff0c;然后又单独买了一个树莓派4B&#xff0c;给装上镜像&#xff0c;安装ros-melodic…

基于因果关系知识库的因果事件图谱构建、文本预处理、因果事件抽取、事件融合等

项目设计集合&#xff08;人工智能方向&#xff09;&#xff1a;助力新人快速实战掌握技能、自主完成项目设计升级&#xff0c;提升自身的硬实力&#xff08;不仅限NLP、知识图谱、计算机视觉等领域&#xff09;&#xff1a;汇总有意义的项目设计集合&#xff0c;助力新人快速实…

IntersectionObserver实现小程序长列表优化

IntersectionObserver实现小程序长列表优化 关于 IntersectionObserver 思路 这里以一屏数据为单位【一个分页的10条数据&#xff0c;最好大于视口高度】&#xff0c; 监听每一屏数据和视口的相交比例&#xff0c;即用户能不能看到它 只将可视范围的数据渲染到页面上&#x…

基于注解的 SpringMVC

SpringMVC SpringMVC使用SpringMVC的两个配置EnableWebMVC 和 ACWACSpringMVC执行流程接收请求参数Postman 发包工具&#xff08;&#xff09;get 请求---简单类型数据&#xff08;基本数据类型和String&#xff09;get 请求---对象类型数据get 请求---数组类型get 请求 --- 集…

Codeforces Round 886 (Div. 4)F题解

文章目录 [We Were Both Children](https://codeforces.com/contest/1850/problem/F)问题建模问题分析1.分析到达的点与跳跃距离的关系2.方法1倍数法累计每个点所能达到的青蛙数代码 方法2试除法累计每个点能到达的青蛙数代码 We Were Both Children 问题建模 给定n个青蛙每次…

自动驾驶感知系统--惯性导航定位系统

惯性导航定位 惯性是所有质量体本身的基本属性&#xff0c;所以建立在牛顿定律基础上的惯性导航系统&#xff08;Inertial Navigation System,INS&#xff09;(简称惯导系统)不与外界发生任何光电联系&#xff0c;仅靠系统本身就能对车辆进行连续的三维定位和三维定向。卫星导…

前端框架学习-Vue(二)

最近在学习Vue框架&#xff0c;Vue中的内容很多。相当于把之前后端的MVC&#xff0c;V层转移到前端来编写和部署。下面是学习Vue时的大纲。 Vue生命周期是Vue应用的生命周期Vue脚手架&#xff0c;即vue-cli&#xff0c;使用node.js 来创建和启动vue项目Vue组件知识&#xff0c;…