redis入门 第三篇 Redis的安装和简单操作

10 篇文章 0 订阅
5 篇文章 0 订阅

一、环境准备

       1、 Linux系统:contOS7.2  (可以用虚拟机环境安装,这边我直接用的LInux系统,版本是contOS7.2 )

       2、SSH客户端:putty  WinScp

二、下载源码:

            

三、安装环境准备:

Redis是c语言开发,编译依赖gcc环境,如果没有gcc环境,编译安装gcc:

命令:

sudo yum install gcc-c++

登录上服务器,输入以上命令:

如果已经安装好了,输入命令就会看到以下提示:

接着把刚才下载好的redis安装包用WinScp拖到服务器上,这里我新建了个文件夹用来放Redis的压缩包:

也或者可以在新的文件夹下直接下载redis安装版用一下命令:

 sudo  wget http://download.redis.io/releases/redis-5.0.0.tar.gz

四 安装和编译:

接着在putty命令行下输入解压和编译命令:

sudo tar xzf redis-5.0.0.tar.gz

 cd redis-5.0.0

sudo  make

编译好以后:

2、编译完成后,在Src目录下,执行make install命令:

命令:cd  src 
命令:sudo make install

安装好:

安装后,在Src目录下,有三个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf。然后拷贝到一个目录下:

sudo mkdir /home/webdb/redis/redisapply     //创建一个目录

sudo cp redis-server /home/webdb/redis/redisapply   //将文件复制到目录下

sudo cp redis-benchmark /home/webdb/redis/redisapply 

sudo cp redis-cli /home/webdb/redis/redisapply 




接着返回到上一级目录,并把redis.conf文件复制到redisapply文件夹里

cd redis/redis-5.0.0  //返回redis-5.0.0目录

sudo cp redis.conf /home/webdb/redis/redisapply 

cd /home/webdb/redis/redisapply 

启动Redis服务,这种属于前端启动方式,这种启动方式启动以后,不能进行其他操作

./redis-server 

然后有可能出现下面这种情况:

 

三个警告 ,一个是积压设置值太低,一个是因为内存太小所以启动不了,一个是因为启动了THP导致延迟 

键盘键 Ctrl + c   退出Redis前端页面,两个警告都是修改/etc/sysctl.conf文件,我这边分开修改了,你们可以一起修改好再生效修改:

sudo vi /etc/sysctl.conf
o //进入编辑状态

增加一行:

net.core.somaxconn= 1024

按Esc退出编辑状态,并输入:wq! 保存退出命令,接着执行命令:

sudo sysctl -p

执行成功,接着继续修改/etc/sysctl.conf文件,改vm.overcommit_memory=1

发现没有vm.overcommit_memory参数,所以只好添加:

vm.overcommit_memory=1

保存退出,然后执行生效命令:

sudo sysctl -p

接着解决第三个警告,禁用THP透明大页 ,以root权限输入以下命令:

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

在/etc/rc.d/rc.local文件中添加:

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

保存退出,然后赋予rc.local文件执行权限:

 sudo chmod +x /etc/rc.d/rc.local

最后重启系统 reboot ,以后再检查THP应该就是被禁用了,检查命令:

命令1:cat /sys/kernel/mm/transparent_hugepage/enabled
命令2:cat /sys/kernel/mm/transparent_hugepage/defrag

结果:

 

参考来自https://blog.csdn.net/jiangshouzhuang/article/details/50864933

               https://www.linuxidc.com/Linux/2016-11/137515.htm

              https://blog.csdn.net/whycold/article/details/21388455

              https://blog.csdn.net/a491857321/article/details/52006376

              https://blog.csdn.net/yuliantao/article/details/78793211

              https://www.jianshu.com/p/7ca4b74c92be

              https://blog.csdn.net/kk185800961/article/details/53326465

重新输入启动服务器的命令,可能会出现以下警告:

Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf
15133:M 21 Nov 2018 21:06:07.691 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
15133:M 21 Nov 2018 21:06:07.691 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
15133:M 21 Nov 2018 21:06:07.691 # Current maximum open files is 4096. maxclients has been reduced to 4064 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
15133:M 21 Nov 2018 21:06:07.691 # Creating Server TCP listening socket *:6379: bind: Address already in use

我查了一下百度,第一个命令说是命令不对,所以改为带路径的执行命令

./redis-server /home/webdb/redis/redisapply/redis.conf

然后又出现下面那些问题:

32740:C 23 Nov 2018 15:32:04.720 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
32740:C 23 Nov 2018 15:32:04.720 # Redis version=5.0.0, bits=64, commit=00000000, modified=0, pid=32740, just started
32740:C 23 Nov 2018 15:32:04.720 # Warning: no config file specified, using the default config. In order to specify a config file use /home/webdb/redis/redisapply/redis-server /path/to/redis.conf
32740:M 23 Nov 2018 15:32:04.721 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
32740:M 23 Nov 2018 15:32:04.721 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
32740:M 23 Nov 2018 15:32:04.721 # Current maximum open files is 4096. maxclients has been reduced to 4064 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
32740:M 23 Nov 2018 15:32:04.721 # Creating Server TCP listening socket *:6379: bind: Address already in use

我又百度了一下资料, 说是6379地址已经在使用,说明redis已经启动了

第一种方法:分三个步骤解决

1、找到该进程;

找到redis-server 的进程 (Process Status)

输入命令:

ps -ef | grep -i redis

进程号为 14504 即为redis服务器

2、杀死该进程;

使用kill 命令

输入命令:

命令:kill -9 14504 

再次查看流程,发现已经被停止了:

3、然后重新启动redis服务器。

进入redisapply文件夹输入命令:

./redis-server

这种停止服务方法不是很好,

第二种方法:进入redisapply文件夹目录下输入以下命令:

命令:./redis-cli shutdown 

参考来自:https://blog.csdn.net/guo13313/article/details/70666453?foxhandler=RssReadRenderProcessHandler

如果这里使用停止命令有报错的话请参考我这篇文章:

https://blog.csdn.net/qq_38000902/article/details/86591401

重启启动redis:

关闭redis前端页面同时停止redis服务:

键盘键 Ctrl + c

由于前端启动方式不能进行其他操作,所以我们要用后端启动方式,后端启动方式首先要编辑redis.conf:

sudo vim redis.conf

找到 daemonize no

把no改为yes并保存退出,接着就可以用后端使用方式

命令:cd /home/webdb/redis/redisapply

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

这样就可以进行其他操作了

五、连接客户端:

启动好redis后,接着我们连接它的客户端:

./redis-cli

接着我们测试它是否成功安装,输入ping:

说明已经安装成功了

 

六、简单操作:

1、增加键值对:

set key value

例如:

2、查找key对应的value:

get key

例如:

3、查找redis所有的key:

keys *

4、删除键值对:

del key

例如:

 

 

参考来自慕课网

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随风而行无疾而歌

看官,觉得不错,奖励一下呗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值