linux下如何为redis配置path,linux环境下如何启动redis

5268f80b9b1e01f982625ef6fac83ca1.png

af7c59aed6e2d334ac20ffcf7c90120e.png

启动redis

redis可执行文件说明:

redis-server:redis服务器

redis-cli:redis命令行客户端

redis-benchmark:redis性能测试工具

redis-check-aof:aof文件修复工具

redis-check-dump:rdb文件检查工具

1、直接启动

直接运行redis-server即可以启动redis

redis服务器默认会使用6379端口,通过--port参数可以自定义端口号:

redis-server --port 6380

如果出现警告:

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition.

To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

过量使用内存设置为0!在低内存环境下,后台保存可能失败。为了修正这个问题,请在/etc/sysctl.conf 添加一项 'vm.overcommit_memory = 1' ,然后重启(或者运行命令'sysctl vm.overcommit_memory=1' )使其生效。

按这个提示来做,警告排除。

2、通过初始化脚本启动redis

redis源码目录的utils文件夹中有一个名为redis-init_script的初始化脚本文件

步骤

(1)配置初始化脚本。

首先将初始化脚本复制到/etc/init.d目录中,文件名为redis_端口号(redis_6379),然后修改脚本第6行的REDISPORT的变量值为同样的端口号(ubuntu)

如果是centos或者redhat则使用以下脚本(端口号根据实际情况修改)#chkconfig: 2345 90 10

#description: Redis is a persistent key-value database

PATH=/usr/local/bin:/sbin:/usr/bin:/bin

REDISPORT=6379

EXEC=/usr/local/bin/redis-server

REDIS_CLI=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_6379.pid

CONF="/etc/redis/6379.conf"

case "$1" in

start)

if [ -f $PIDFILE ]

then

echo "$PIDFILE exists, process is already running or crashed"

else

echo "Starting Redis server..."

$EXEC $CONF

fi

if [ "$?"="0" ]

then

echo "Redis is running..."

fi

;;

stop)

if [ ! -f $PIDFILE ]

then

echo "$PIDFILE does not exist, process is not running"

else

PID=$(cat $PIDFILE)

echo "Stopping ..."

$REDIS_CLI -p $REDISPORT SHUTDOWN

while [ -x ${PIDFILE} ]

do

echo "Waiting for Redis to shutdown ..."

sleep 1

done

echo "Redis stopped"

fi

;;

restart|force-reload)

${0} stop

${0} start

;;

*)

echo "Usage: /etc/init.d/redis_6379 {start|stop|restart|force-reload}" >&2

exit 1

esac

(2)建立需要的文件夹

/etc/redis 存放redis配置文件

/var/redis/端口号 存放redis的持久化文件

(3)修改配置文件

把配置文件模板复制到/etc/redis目录中,已端口号命名(如“6379.conf”)

需要修改的配置及说明:

daemonize yes:使redis以守护进程模式运行

pidfile /var/run/redis_端口号.pid:设置redis的pid文件位置

port 端口号:设置redis监听的端口号

dir /var/redis/端口号:设置持久化文件存放位置

设置开机启动服务:

sudo update-rc.d redis_端口号 defaults // 告诉系统启动时候,自动执行redis_端口号 这个脚本。(ubuntu)

更多Redis相关知识,请访问Redis使用教程栏目!

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

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

相关文章

linux从别的主机下载,从局域网内的其他Linux主机下载文件

Step 0本机与目标机都需要安装有openssh-server在本机与目标机上以root用户身份执行service ssh status # Debian上是ssh,openSUSE上是sshd,可以在键入ssh后紧接着按一下Tab键以自动补全该服务名# 或service --status-all | grep ssh # 通用可查看ssh服务…

linux runqueue定义,linux – 了解rt_rq(实时runqueue)内核中数据成员的使用

以下是v3.5.4中的实时运行队列结构struct rt_rq {struct rt_prio_array active;unsigned int rt_nr_running;#if defined CONFIG_SMP || defined CONFIG_RT_GROUP_SCHEDstruct {int curr; /* highest queued rt task prio */#ifdef CONFIG_SMPint next; /* next highest */#end…

Linux7安装gi报错,Redhat 7.6安装11G RAC GI时遇到此类报错

环境:Redhat Linux 7.6 Oracle 11.2.0.4 RAC现象:图像化安装过程中,按照提示执行root.sh脚本,报错中断。1. 具体现象[rootmm1903 ~]# /u01/app/11.2.0/grid/root.shPerforming rootuser operation forOracle 11gThe following en…

c语言修改字符串c2133,通过create_string_buffer、create_unicode_buffer让C语言具备修改字符串的能力...

字符串的修改我们知道C中不存在字符串这个概念,python中的字符串在C中也是通过字符数组来实现的。我们说在C中创建一个字符数组有两种方式:char *s1 "hello world";char s2[] "hello world";这两种方式虽然打印的结果是一样的&…

c语言中O空字符,OC语言中字符串的使用

可变字符串//插入字符串NSMutableString*string1 [NSMutableStringstringWithString:"字符串"];[string1insertString:"可变"atIndex:0];//在string的第0个位置插入NSLog("string %",string1);//可变字符串//删除字符串NSMutableString*string2…

大二c语言期末考试题库及详解答案,大学C语言期末考试练习题(带详解答案)...

《大学C语言期末考试练习题(带详解答案)》由会员分享,可在线阅读,更多相关《大学C语言期末考试练习题(带详解答案)(55页珍藏版)》请在金锄头文库上搜索。1、一、 单项选择题1( A )是构成C语言程序的基本单位。A、函数 B、过程 C、子程序 D、子例程2C语言…

C语言指针怎么存二维数组,C语言怎么用指针代替二维数组

1.设p是指向二维数组a[m][n]的指针变量,则有:int*pa[0];//此时P是指向一维数组的指针。P后,p指向a[0][1]。2.如果定义int(*p1)[n];p1a;p1后,p1指向a[1][0];则pj将指向a[0]数组中的元素a[0][j]。由于a[0]、a[1]┅a[M-1]等各个行数组…

c语言结构引用6,C语言6结构体练习题6

第六章 结构体1.下面对结构变量的叙述中错误的是A.相同类型的结构变量间可以相互赋值 B.通过结构变量,可以任意引用它的成员 C.结构变量中某个成员与这个成员类型相同的简单变量间可相互赋值D.结构变量与简…

设 l í {a,b,c}* 是满足下述条件的符号串构成的语言,编译原理模拟试题1和2的答案...

一、是非题1、算符优先关系表不一定存在对应的优先函数。( 错)2、数组元素的地址计算与数组的存储方式有关。( 错)3、仅考虑一个基本块,不能确定一个赋值是否真是无用的。( 正确)4、每个文法都能改写为LL(1)文法。( 正确)。5、对于数据空间的存贮分配,FO…

新手学习c语言的方法,学习C语言方法“新手必看”

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼1、多看代码在有一定基础以后一定要多看别人的代码。 注意代码中的算法和数据结构。 毕竟学C之后的关口就是算法和数据结构。提到数据结构,指针是其中重要的一环,绝大多数的数据结构是建立在指针…

android自定义进度条百分比跟着走,Android自定义View实现水平带数字百分比进度条...

这个进度条可以反映真实进度,并且完成百分比的文字时随着进度增加而移动的,所在位置也恰好是真实完成的百分比位置,效果如下:思路如下:第一部分是左侧的蓝色直线,代表已经完成的进度;第二部分是…

android动画view上移,在Android开发中使用View制作一个引导动画

在Android开发中使用View制作一个引导动画发布时间:2020-11-20 16:46:16来源:亿速云阅读:98作者:Leah这篇文章将为大家详细讲解有关在Android开发中使用View制作一个引导动画,文章内容质量较高,因此小编分享…

linux 启动 x,(1)linux启动过程

head.S是linux启动后的第一个文件,主要完成以下功能:1、检查处理器信息,并保存;2、检查平台号,并保存;3、创建页表,并开启MMU功能;4、对内核data section、bbs section作调整和初始化…

android 刷新view位置,Android View刷新机制实例分析

本文实例讲述了Android View刷新机制。分享给大家供大家参考,具体如下:一、总体说明在Android的布局体系中,父View负责刷新、布局显示子View;而当子View需要刷新时,则是通知父View来完成。二、代码分析1).ViewGroup的a…

android 滚动到底部,Android 控制ScrollView滚动到底部(示例代码)

在开发中,我们经常需要更新列表,并将列表拉倒最底部,比如发表微博,聊天界面等等,这里有两种办法,第一种,使用scrollTo():public static void scrollToBottom(final View scroll, final View inner) {Handler mHandler …

html整体引入js,html页面用js引入js的方式

最原始的是用script便签:1. 使用js打印这个便签:当然这也可以动态引入css以及其他html元素。2. 使用dom的api添加script元素:jQuery中封装了这种方式,并贴心的加入了回调:$.getScript(url,callback(res, status));简单…

vivo android p 机型,vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了

原标题:vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了近日,2018谷歌I/O大会正式召开,会上发布了大家期待已久的Android P开发者预览版,给我们展示了众多全新特性,其中AI功能的进化让人十分眼…

android继承父类的界面,Android调用父类方法,进行子界面刷新

偶然遇到一个需求、有几个主界面需要获取消息的未读数量由于不是所有类都调用、调用的次数又比较多,整的不上不下的1、对于方法调用次数比较少的 推荐广播广播的方法很方便、但是一堆的消息接收、发送很模式化2、对于较多的方法调用 个人建议直接写共用类中此方法通…

html中依次展开的搜索框,jQuery+CSS3动画展开收缩搜索框特效

js代码function searchToggle(obj, evt){var container $(obj).closest(.search-wrapper);if(!container.hasClass(active)){container.addClass(active);evt.preventDefault();}else if(container.hasClass(active) && $(obj).closest(.input-holder).length 0){con…

直接修改html文本页面没变化,VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析...

本文实例讲述了VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法。分享给大家供大家参考,具体如下:业务场景我们在使用vue 编写 代码时,我们有一个 多行文本框控件,希望在页面点击一个按钮 在 文本框焦点位置插入一个…