• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Linux服务器安装redis数据库图文教程

    这篇跟大家聊聊redis非关系型数据库在Linux服务器的安装。

    redis简单介绍

    REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。

    Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

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

    一、在有外网情况下的安装(外网的配置在linux分类的随笔中有聊过)

    第一步:安装编译工具,redis是有ANSI C语言编写的,我们需要安装编译它的工具

    命令:yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel kernel keyutils patch perl

    第二步:安装tcl组件包,我们在安装redis的时候是需要tcl脚本语言支持的

    #选择一个存放软件包存放的地方,进入软件包存放的目录文件中

    命令:cd /usr/local/src

    #下载tcl组件包

    命令:wget http://downloads.sourceforge.net/tcl/tcl8.6.6-src.tar.gz

    #在当前目录解压tcl组件包

    命令:tar zxvf tcl8.6.6-src.tar.gz

    #进入解压之后的安装目录文件

    命令:cd tcl8.6.6

    #配置tcl组件

    命令:cd unix

    命令:./configure --prefix=/usr --without-tzdata --mandir=/usr/share/man $([ $(uname -m) = x86_64 ] echo --enable-64bit)

    #编译

    命令:make

    #以选项中指定的script来处理输入的文本文件

    命令:sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" -e "/TCL_B/s@='\(-L\)\&;.*unix@='\1/usr/lib@" -i tclConfig.sh

    #安装

    命令:make install

    命令:make install-private-headers

    #建立软连接(好比windows中的快捷方式)

    命令:ln -v -sf tclsh8.6 /usr/bin/tclsh

    #修改执行文件权限

    命令:chmod -v 755 /usr/lib/libtcl8.6.so

    第三步:安装Redis数据库

    #选择一个存放软件包存放的地方,进入软件包存放的目录文件中

    命令:cd /usr/local/src

    #下载redis数据库软件包

    命令:wget http://download.redis.io/redis-stable.tar.gz

    #解压redis数据库软件包

    命令:tar -zxvf redis-stable.tar.gz

    #创建redis的安装目录文件

    命令:mkdir /usr/local/redis

    #移动文件到安装目录

    命令:mv redis-stable /usr/local/redis

    #进入安装目录

    命令:cd /usr/local/redis

    #编译

    命令:make

    #安装

    命令:make install

    #然后查看/usr/local/bin目录下是否有redis的程序文件,如果没有,则从redis-stable中拷贝redis的程序文件

    命令:cd /usr/local/bin

    命令:ls

    #注意:假如没有则拷贝

    命令:cd /usr/local/redis/redis-stable
    命令:mkdir -p /usr/local/bin

    #复制操作
    命令:cp -p redis-server /usr/local/bin
    命令:cp -p redis-benchmark /usr/local/bin
    命令:cp -p redis-cli /usr/local/bin
    命令:cp -p redis-check-dump /usr/local/bin
    命令:cp -p redis-check-aof /usr/local/bin

    #给redis的配置文件创建一个软连接(好比windows中的快捷方式)

    命令:ln -s /usr/local/redis/redis-stable/redis.conf /etc/redis.conf

    #编辑redis配置文件

    命令:vi /etc/redis.conf

    #设置后台启动redis(vim编辑器按i进入编辑模式,exit退出编辑模式进入命令模式)

    daemonize yes

    #强制保存退出

    :wq!

    #切换到/usr/local/bin目录启动redis服务(cd切换命令)

    命令:redis-server /etc/redis.conf

    #关闭redis服务

    命令:redis-cli shutdown

    #编辑,在最后一行添加下面代码

    命令:vi /etc/sysctl.conf

    vm.overcommit_memory = 1

    #强制保存退出

    :wq!

    #使设置立即生效

    命令:sysctl -p

    第四步:设置redis在linux服务器上开机启动

    #把redis工具中的初始化脚本拷贝到/etc/init.d/目录文件中并重命名

    命令:cd /usr/local/redis/redis-stable/utils/

    命令:cpredis_init_script/etc/init.d/

    命令:cd/etc/init.d/

    命令:mvredis_init_script redis

    #修改脚本执行权限

    命令:chmod 755 /etc/init.d/redis

    #添加开机启动

    命令:chkconfig --add redis

    这时大家可能会遇到问题,就是无法将redis添加到开机启动中,那么要怎么解决呢?

    #编辑/etc/init.d/redis文件

    命令:vi/etc/init.d/redis(i进入编辑模式,exit返回命令模式:wq!强制保存退出)

    在最前面加上两行注释放在/etc/init.d/redis文件靠前的注释中:

    # chkconfig: 2345 90 10
    # description: Redis is a persistent key-value database

    上面的注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。

    #添加开机启动

    命令:chkconfig --add redis

    #把redis在运行级别为2、3、4、5的情况下都是on(开启)的状态

    命令:chkconfig –level redis 2345 on

    #查看是否添加成功,列出所有的系统服务,查看里面是否有redis

    命令:chkconfig --list

    #关闭redis服务,启动redis服务

    命令:service redis stop

    命令:service redis start

    最后一步:测试redis是否已经成功启动服务

    #查看本机ip地址

    #使用第三方jar包jedis在本地的java应用程序中进行测试

    我相信很多人,在执行的时候肯定会不通过,比如连接超时之类的,这是为什么呢?让我们一一来解决:

    1.查看redis配置文件,并排查问题,编辑之后保存

    命令:vi /etc/redis.conf

    第一个可能存在的问题,ip被绑定了,其他ip无法访问:

    将绑定ip这个属性注释掉,继续排查,还有一个可能存在的问题,开启了保护模式:

    将它从yes改为no,然后执行java程序测试,很多人可能还是会遇到类似的错误,比如:

    经过前面的操作,我们可以确定redis服务是启动的,ip端口的设置也是正确的,保护模式也被我们关了,还不能访问,那很大可能就是Linux防火墙导致其他电脑无法访问redis的6379端口了,我们现在windows上测试一下,通过cmd打开命令窗口,telnet命令如果不能使用,自己百度一下开启。

    命令:telnet 192.168.0.21 6379

    如果很久都没反应,或者出现了错误,则需要在Linux服务器上关掉防火墙或者添加此端口允许被访问。

    #通过root用户登录Linux服务器,执行命令开启端口

    命令:/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

    然后再执行Java应用程序测试一波,基本上就没什么问题了,也能得到像上面那样的正确的结果。

    二、在没有外网情况下的安装,假设此时只有局域网怎么办

    第一步:将Linux服务器对应的镜像文件挂载到/mnt目录文件下

    比如:mount -o loop /data/downloads/redhat/rhel-server-6.5-x86_64-dvd.iso /mnt

    #镜像文件包中包含了大多数玩转Linux所需的软件

    cd /mnt/Packages

    第二步:安装gcc编译工具,相关安装包从centos6.6.iso镜像文件的package包中获取

    执行以下的命令:

    rpm -ivh mpfr-2.4.1-6.el6.i686.rpm 回车
    rpm -ivh cpp-4.4.6-4.el6.i686.rpm 回车
    rpm -ivh kernel-headers-2.6.32-279.el6.i686.rpm 回车
    rpm -ivh glibc-headers-2.12-1.80.el6.i686.rpm 回车
    rpm -ivh glibc-devel-2.12-1.80.el6.i686.rpm 回车
    rpm -ivh libgomp-4.4.6-4.el6.i686.rpm 回车
    rpm -ivh ppl-0.10.2-11.el6.i686.rpm
    rpm -ivh cloog-ppl-0.15.7-1.2.el6.i686.rpm 回车
    rpm -ivh gcc-4.4.6-4.el6.i686.rpm 回车 
    rpm -ivh libstdc++-devel-4.4.7-11.el6.x86_64.rpm 回车
    rpm -ivh gcc-c++-4.4.6-4.el6.i686.rpm 回车

    如果error: Failed dependencies: cpp = 4.4.7-4.el6 is needed by gcc-4.4.7-4.el6.x86_64

    安装gcc及其他依赖包的时候,加上参数 --force --nodeps

    例如:

    rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm --nodeps --force
    #rpm卸载命令
    rpm -e --nodeps gcc-4.4.7-4.el6.x86_64
    #卸载挂载的资源
    umount /mnt

    第三步,将下载好的tcl组件包安装到Linux服务器中

    将文件copy到 /usr/local/src 目录下(随意目录)

    chmod 777 tcl8.6.1-src.tar.gz 
    tar xzvf tcl8.6.1-src.tar.gz
    cd tcl8.6.1/nuix
    ./configure 或者 ./configure --prefix=/usr/local/tcl8.6.1/ --enable-shared
    make
    make install

    第四步:将下载好的redis数据库安装包安装到Linux服务器中

    将文件copy到 /usr/local/src 目录下(随意目录)

    chmod 777 redis-2.8.8.tar.gz
    tar xzf redis-2.8.8.tar.gz
    cd redis-2.8.8
    make MALLOC=libc
    make test
    make install

    后面这种方式就大概给大家提个思路,你完全可以自己结合上面详细的在线安装的方式去实现没有外网时候的安装,这里主要的区别就是没有外网的时候gcc编译工具可以从挂载的ios镜像中去获取,然后所有的安装包都是已经下载好的,需要自己上传到Linux服务器中,上传的方式可以参考上一篇随笔Linux服务器安装JDK运行环境教程。

    结束语:不惊扰别人的宁静,就是慈悲; 不伤害别人的自尊,就是善良。 人活着,发自己的光就好,不要吹灭别人的灯。

    您可能感兴趣的文章:
    • Linux下Redis数据库的安装方法与自动启动脚本分享
    • Linux下 php7安装redis的方法
    • Linux下Redis安装教程详解
    • Linux下Redis安装使用教程
    • linux 常见的标识与Redis数据库详解
    上一篇:RedisDesktopManager无法远程连接Redis的完美解决方法
    下一篇:分布式爬虫处理Redis里的数据操作步骤
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Linux服务器安装redis数据库图文教程 Linux,服务器,安装,redis,数据库,