CN113238810A - 一种基于linux的service配置redis的方法 - Google Patents
一种基于linux的service配置redis的方法 Download PDFInfo
- Publication number
- CN113238810A CN113238810A CN202110214910.XA CN202110214910A CN113238810A CN 113238810 A CN113238810 A CN 113238810A CN 202110214910 A CN202110214910 A CN 202110214910A CN 113238810 A CN113238810 A CN 113238810A
- Authority
- CN
- China
- Prior art keywords
- service
- redis
- linux
- processor
- starting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000004590 computer program Methods 0.000 claims description 5
- 230000002085 persistent effect Effects 0.000 claims description 4
- 238000010792 warming Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
Abstract
本发明提供了一种基于linux的service配置redis的方法,通过添加linux的service文件将redis的服务本身做成一个linux的service,通过修改service的配置文件将真正执行的redis的启动服务命令隐藏起来;通过编写sh脚本专门读取虚拟机上运行的redis的端口号以及权限用户名和密码,执行redis的shutdown命令,用于让redis的服务优雅的关闭。本发明有益效果:本发明通过将redis服务注册成为linux的service,从未得以让操作系统进行托管,将redis的启动做的更加服务化,同时配合上linux的service的自启动设置大大减少了每次进入虚机需要手动执行的操作,而且配合上redis6.0的ACL规则,编写对应的停服脚本让redis服务得以优雅的关闭,不必担心每次执行停服会丢失数据。
Description
技术领域
本发明属于redis领域,尤其是涉及一种基于linux的service配置 redis的方法。
背景技术
在当前的redis服务中通常都是直接采用redis-server /xx/xx/redis.config直接启动和利用ps-ef|grep redis查看出redis 的服务对应的PID后利用kill-9PID去结束掉当前的redis进程;这对于 构建一套redis服务来说是不友好的,现有技术缺点:1、需要每次进入虚 拟机之前都手动执行redis服务的启动,而且每次结束进程都需要手动查看进程ID并且用命令关闭;2、没办法做到开机自启动服务。
发明内容
有鉴于此,本发明旨在提出一种基于linux的service配置redis的方 法,以解决上述问题中的不足之处。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于linux的service配置redis的方法,通过添加linux的 service文件将redis的服务本身做成一个linux的service,
通过修改service的配置文件将真正执行的redis的启动服务命令隐藏 起来;
通过编写sh脚本专门读取虚拟机上运行的redis的端口号以及权限用 户名和密码,执行redis的shutdown命令,用于让redis的服务优雅的关 闭。
进一步的,通过linux本身service进行开机自启动,用于降低每次都 需要手动开启的时间。
进一步的,将redis的服务注册成一个linux的service从而将redis 托管给操作系统,无论是启动还是停止服务都可以利用linux操作系统 systemctl start和systemctlstop命令去管理。
进一步的,配合编写好的脚本获取redis服务的端口号权限用户名和密 码执行redis-cli-p port–user username-a password shutdown– no-auth-warning去优雅的关闭掉当前的redis服务。
进一步的,采用shutdown的形式redis服务会先将内存中还未写入持 久化文件的数据进行写入,用于避免了数据的丢失。
进一步的,一种电子设备包括处理器以及与处理器通信连接,且用于存 储所述处理器可执行指令的存储器,其特征在于:所述处理器用于执行上述 一种基于linux的service配置redis的方法。
进一步的,一种服务器包括至少一个处理器,以及与所述处理器通信连 接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述 指令被所述处理器执行,以使所述至少一个处理器执行一种基于linux的 service配置redis的方法。
进一步的,一种计算机可读取存储介质,存储有计算机程序,所述计算 机程序被处理器执行时实现一种基于linux的service配置redis的方法。
相对于现有技术,本发明所述的一种基于linux的service配置redis 的方法具有以下有益效果:
本发明所述的一种基于linux的service配置redis的方法通过将 redis服务注册成为linux的service,从未得以让操作系统进行托管,将redis的启动做的更加服务化,同时配合上linux的service的自启动设置 大大减少了每次进入虚机需要手动执行的操作,而且配合上redis6.0的ACL 规则,编写对应的停服脚本让redis服务得以优雅的关闭,不必担心每次执 行停服会丢失数据;
(2)本发明所述的一种基于linux的service配置redis的方法将 redis的服务注册成为linux的service,更加贴近linux的原声服务;
(3)本发明所述的一种基于linux的service配置redis的方法,通 过该技术可以做到每次不需要手动执行启动服务器,能实现开机自启;
(4)本发明所述的一种基于linux的service配置redis的方法优雅 的关闭redis服务,不用担心数据的丢失,同时更加保持了redis服务的健 壮性。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特 征可以相互组合。
下面将结合实施例来详细说明本发明。
一种基于linux的service配置redis的方法,通过添加linux的 service文件将redis的服务本身做成一个linux的service,
通过修改service的配置文件将真正执行的redis的启动服务命令隐藏 起来;
通过编写sh脚本专门读取虚拟机上运行的redis的端口号以及权限用 户名和密码,执行redis的shutdown命令,用于让redis的服务优雅的关 闭。
通过linux本身service进行开机自启动,用于降低每次都需要手动开 启的时间。
将redis的服务注册成一个linux的service从而将redis托管给操作 系统,无论是启动还是停止服务都可以利用linux操作系统systemctl start 和systemctl stop命令去管理。
配合编写好的脚本获取redis服务的端口号权限用户名和密码执行 redis-cli-pport–user username-a password shutdown– no-auth-warning去优雅的关闭掉当前的redis服务。
采用shutdown的形式redis服务会先将内存中还未写入持久化文件的 数据进行写入,用于避免了数据的丢失。
一种电子设备包括处理器以及与处理器通信连接,且用于存储所述处理 器可执行指令的存储器,其特征在于:所述处理器用于执行上述一种基于 linux的service配置redis的方法。
一种服务器包括至少一个处理器,以及与所述处理器通信连接的存储器, 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处 理器执行,以使所述至少一个处理器执行一种基于linux的service配置 redis的方法。
一种计算机可读取存储介质,存储有计算机程序,所述计算机程序被处 理器执行时实现一种基于linux的service配置redis的方法。
在具体实施过程中,本专利技术特点:通过添加linux的service文件 将redis的服务本身做成一个linux的service,通过修改service的配置 文件将真正执行的redis的启动服务命令隐藏起来,同时因为linux本身 service可以做到开机自启动大大降低了每次都需要手动开启的时间。同时 编写一个sh脚本专门读取虚拟机上运行的redis的端口号以及权限用户名 和密码,执行redis的shutdown命令。让redis的服务得以优雅的关闭。注:redis的命令关闭服务不会造成redis服务的数据的丢失,但是利用kill -9PID的方法属于暴力关闭,在某种程度上会造成一批数据的丢失。
文字解释:将redis的服务注册成一个linux的service从而将redis 托管给操作系统。无论是启动还是停止服务都可以利用linux操作系统 systemctl start和systemctlstop命令去管理。另一方面配合编写好的 脚本获取redis服务的端口号权限用户名和密码执行redis-cli-p port– user username-a password shutdown–no-auth-warning去优雅的关闭 掉当前的redis服务。因为采用这种shutdown的形式redis服务会先将内 存中还未写入持久化文件的数据进行写入,从而避免了数据的丢失。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各 示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实 现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一 般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执 行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个 特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超 出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和系统, 可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功 能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合 或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可 以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以 不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方 案的目的。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对 其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并 不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖 在本发明的权利要求和说明书的范围当中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在 本发明的保护范围之内。
Claims (8)
1.一种基于linux的service配置redis的方法,其特征在于:通过添加linux的service文件将redis的服务本身做成一个linux的service,
通过修改service的配置文件将真正执行的redis的启动服务命令隐藏起来;
通过编写sh脚本专门读取虚拟机上运行的redis的端口号以及权限用户名和密码,执行redis的shutdown命令,用于让redis的服务优雅的关闭。
2.根据权利要求1所述的一种基于linux的service配置redis的方法,其特征在于:通过linux本身service进行开机自启动,用于降低每次都需要手动开启的时间。
3.根据权利要求1所述的一种基于linux的service配置redis的方法,其特征在于:将redis的服务注册成一个linux的service从而将redis托管给操作系统,无论是启动还是停止服务都可以利用linux操作系统systemctl start和systemctl stop命令去管理。
4.根据权利要求3所述的一种基于linux的service配置redis的方法,其特征在于:配合编写好的脚本获取redis服务的端口号权限用户名和密码执行redis-cli-p port–userusername-a password shutdown–no-auth-warning去优雅的关闭掉当前的redis服务。
5.根据权利要求3所述的一种基于linux的service配置redis的方法,其特征在于:采用shutdown的形式redis服务会先将内存中还未写入持久化文件的数据进行写入,用于避免了数据的丢失。
6.一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,其特征在于:所述处理器用于执行上述权利要求1-5任一所述的一种基于linux的service配置redis的方法。
7.一种服务器,其特征在于:包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,以使所述至少一个处理器执行如权利要求1-5任一所述的一种基于linux的service配置redis的方法。
8.一种计算机可读取存储介质,存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1-5任一项所述的一种基于linux的service配置redis的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110214910.XA CN113238810A (zh) | 2021-02-24 | 2021-02-24 | 一种基于linux的service配置redis的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110214910.XA CN113238810A (zh) | 2021-02-24 | 2021-02-24 | 一种基于linux的service配置redis的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113238810A true CN113238810A (zh) | 2021-08-10 |
Family
ID=77130281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110214910.XA Pending CN113238810A (zh) | 2021-02-24 | 2021-02-24 | 一种基于linux的service配置redis的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113238810A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020356A (zh) * | 2021-11-02 | 2022-02-08 | 北京天融信网络安全技术有限公司 | 一种安全关闭服务的方法以及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106778281A (zh) * | 2016-11-10 | 2017-05-31 | 乐视控股(北京)有限公司 | 一种修复安全漏洞的方法、装置及电子设备 |
CN107343034A (zh) * | 2017-06-26 | 2017-11-10 | 杭州铭师堂教育科技发展有限公司 | 基于QConf的Redis高可用系统及方法 |
CN110414275A (zh) * | 2019-08-07 | 2019-11-05 | 苏州万店掌网络科技有限公司 | linux操作系统防止文件被篡改和丢失的方法 |
CN111010422A (zh) * | 2019-11-18 | 2020-04-14 | 北京禧云信息科技有限公司 | 一种优雅停机的系统及方法 |
CN111143193A (zh) * | 2019-11-30 | 2020-05-12 | 苏州浪潮智能科技有限公司 | 基于RobotFramework的大数据服务测试方法、系统、终端及存储介质 |
CN111245781A (zh) * | 2019-12-27 | 2020-06-05 | 广东睿江云计算股份有限公司 | 一种linux服务器动态封阻IP的方法及其系统 |
CN111880853A (zh) * | 2020-07-29 | 2020-11-03 | 北京浪潮数据技术有限公司 | 一种集群化服务的启动方法、系统及相关装置 |
-
2021
- 2021-02-24 CN CN202110214910.XA patent/CN113238810A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106778281A (zh) * | 2016-11-10 | 2017-05-31 | 乐视控股(北京)有限公司 | 一种修复安全漏洞的方法、装置及电子设备 |
CN107343034A (zh) * | 2017-06-26 | 2017-11-10 | 杭州铭师堂教育科技发展有限公司 | 基于QConf的Redis高可用系统及方法 |
CN110414275A (zh) * | 2019-08-07 | 2019-11-05 | 苏州万店掌网络科技有限公司 | linux操作系统防止文件被篡改和丢失的方法 |
CN111010422A (zh) * | 2019-11-18 | 2020-04-14 | 北京禧云信息科技有限公司 | 一种优雅停机的系统及方法 |
CN111143193A (zh) * | 2019-11-30 | 2020-05-12 | 苏州浪潮智能科技有限公司 | 基于RobotFramework的大数据服务测试方法、系统、终端及存储介质 |
CN111245781A (zh) * | 2019-12-27 | 2020-06-05 | 广东睿江云计算股份有限公司 | 一种linux服务器动态封阻IP的方法及其系统 |
CN111880853A (zh) * | 2020-07-29 | 2020-11-03 | 北京浪潮数据技术有限公司 | 一种集群化服务的启动方法、系统及相关装置 |
Non-Patent Citations (2)
Title |
---|
WEIXIN_30622181: "redis安装(Linux)、启动、退出、设置密码、远程连接", 《HTTPS://BLOG.CSDN.NET/WEIXIN_30622181/ARTICLE/DETAILS/95608255》 * |
清_澈: "详解linux下redis安装、启动与停止,redis做成服务", 《HTTPS://WWW.JB51.NET/ARTICLE/101508.HTM》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020356A (zh) * | 2021-11-02 | 2022-02-08 | 北京天融信网络安全技术有限公司 | 一种安全关闭服务的方法以及装置 |
CN114020356B (zh) * | 2021-11-02 | 2023-11-28 | 北京天融信网络安全技术有限公司 | 一种安全关闭服务的方法以及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635428B2 (en) | System and method for in-service update of software | |
CN109725923A (zh) | 一种软件轻量更新方法、装置及设备 | |
US20080066063A1 (en) | System and method for preparing runtime checks | |
CN113238810A (zh) | 一种基于linux的service配置redis的方法 | |
JP2020535504A (ja) | システムバージョンをアップグレードする方法及び装置 | |
CN115762625A (zh) | 验证eMMC功能的方法、系统、电子设备及存储介质 | |
CN111914250A (zh) | 一种Linux系统脚本程序运行时验证与管控方法 | |
CN108874422B (zh) | 一种冰箱电控板的软件在线升级方法、冰箱电控板和冰箱 | |
CN109507991A (zh) | 一种双轴伺服控制平台调试系统及方法 | |
US20200104144A1 (en) | Mobile application management by run-time insertion of a replacement instrumentation object into a mobile application process | |
CN111258664A (zh) | 一种内存序列号完整获取方法、系统、终端及存储介质 | |
CN107943544A (zh) | 一种内核补丁的加载方法及装置 | |
JP2009015428A (ja) | プログラム更新方法、情報処理装置、プログラムおよび記録媒体 | |
JP2005149164A (ja) | 共有ライブラリに格納された外部公開関数の呼び出し方法 | |
US11113392B2 (en) | Executable binary code insertion | |
CN110516431B (zh) | 动态配置虚拟机操作权限的方法、系统、设备及存储介质 | |
US10331381B2 (en) | Method and device for recording memory access operation information | |
KR101839607B1 (ko) | 단말 보안을 수행하는 사용자 단말 및 서비스 서버 장치 | |
US10019343B2 (en) | Kernel tracing in a protected kernel environment | |
CN112019527B (zh) | 一种嵌入式设备固定mac地址的设置方法及系统 | |
US11249733B2 (en) | Electronic apparatus and control method thereof | |
US20230280987A1 (en) | System and method for controlling execution of call stack frames | |
US11494207B2 (en) | Command line interface extension process | |
JP7444610B2 (ja) | コンテキスト・データ管理 | |
US20190197235A1 (en) | Server and setting method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210810 |