当前位置: 首页 > 后端技术 > Java

【刘健】Linux安装部署Redis(超详细)

时间:2023-04-02 00:46:03 Java

Linux安装部署Redis(超详细)各种文章混搭在一起,勉强安装成功。我自己也记录下来,以便后续安装有参考。Redis版本redis-5.0.7服务器版本LinuxCentOS7.664位下载Redis到官网找到下载地址https://redis.io/download右击下载按钮,选择复制链接。登录服务器,进入sshroot@2.140.189.129文件夹进入Xshell控制台(默认为root根目录),输入wget并粘贴上面复制的下载链接,如下:wgethttp://download。redis.io/releases/redis-5.0.7.ta??r.gz解压安装Redis解压后需要解压压缩文件,输入以下命令解压到当前目录tar-zvxfredis-5.0.7.ta??r根目录下解压后的.gz输入ls列出所有目录,会发现下载redis前多了一个redis-5.0.7.ta??r.gz文件和redis-5.0.7目录。移动redis目录一般会把redis目录放在/usr/local/redis目录下,所以这里输入如下命令更改/root目录下当前redis-5.0.7文件夹的目录,将文件夹名称改为雷迪斯。mv./redis-5.0.7/usr/local/rediscd在/usr/local目录下输入ls命令查看当前目录是否多了redis子目录,/下没有redis-5.0.7文件根目录cd/usr/local编译cd/usr/local/redis输入命令make执行编译命令,然后控制台会在编译过程中输出各种输出内容。make最终结果如下:maketest你需要tcl8.5或更新版本才能运行Redistestyuminstalltcl然后maketest安装输入如下命令makePREFIX=/usr/local/redisinstall这里多了一个关键字PREFIX=this关键字的作用是在编译时指定程序存放的路径。比如我们现在指定redis必须存放在/usr/local/redis目录下。假设不加关键字,Linux会将可执行文件存放在/usr/local/bin目录下,库文件存放在/usr/local/lib目录下。配置文件将存储在/usr/local/etc目录中。其他资源文件会存放在usr/local/share目录下。这里指定的编号目录也方便后续卸载。可以直接rm-rf/usr/local/redis删除redis。执行结果如下图所示:启动redis./bin/redis-server&./redis.conf根据以上操作,redis安装已经完成。在/usr/local/redis目录下输入以下命令启动redis#查询启动过程ps-aux|grepredis#关闭Redisbin/redis-clishutdownRedis设置密码登录后,如果要关闭redis服务器,你需要redis-cli-a'password'shutdownmkdir-p/usr/local/redis/etcmvredis.confetcchmod777binchmod777etcsudochmod777./etc/redis.confsudochmod777./bin/redis-servercd/usr/local/redis/srccpmkreleasehdr.sh/usr/local/redis/bin这两行无法启动redis。按照上面的操作,redis就已经安装好了。在/usr/local/redis目录下输入以下命令启动redis./bin/redis-serveretc/redis.conf开启远程访问在redis中找到redis.conf文件并编辑(在安装路径下找到)vim./redis.会议1。找到bind127.0.0.1并注释掉。默认127.0.0.1只能本地访问。注释掉就可以通过ip访问了。2.修改protected-mode属性值为no。注释掉,关闭保护模式,允许IP访问。3、修改daemonize将属性no改为yes,将daemonize设置为yes,开始后台运行nohup。ScopeDescriptiondaemonizeyes,noyes表示开启守护进程,默认为no,即不作为守护进程运行。其中Windows系统不支持开启daemon进程运行端口指定Redis监听端口。默认端口为6379bind。下面的保护模式控制是否可以进行远程访问。protected-modeyes,无保护模式,该模式控制外网是否可以连接redis服务,默认是yes,所以我们的外网默认不能访问,如果需要从外网连接rendis服务,您需要将此属性更改为否。timeout300当客户端空闲多长时间关闭连接,如果指定为0,表示函数logleveldebug、verbose、notice、warning日志级别关闭,默认是noticedatabases16设置数据库个数,并且默认数据库为0。通过客户端工具可以看到,rdbcompressionyes和no指定将数据存储到本地数据库时是否压缩。默认是yes,Redis使用LZF压缩。如果想节省CPU时间,可以关闭这个选项,但是会导致数据库文件变得巨大。dbfilenamedump.rdb指定本地数据库文件名,默认值为dump.rdbdir指定本地数据库存放目录requirepass设置Redis连接密码,如果配置了连接密码,客户端需要通过AUTH提供密码连接Redis时的命令,默认禁用maxclients0设置客户端同时连接的最大数量。默认是无限的。Redis可以同时打开的客户端连接数就是Redis进程可以打开的最大文件描述符数。如果将maxclients设置为0,则表示没有限制。当客户端连接数达到限制时,Redis将关闭新连接,并向客户端返回maxnumberofclientsreached错误信息。maxmemoryXXX指定Redis的最大内存限制。Redis在启动时会将数据加载到内存中。达到最大内存后,Redis会先尝试清除过期或即将过期的Key。这个方法处理的时候,还是到了最大内存设置的时候,写操作就不能再进行了,但是读操作还是可以的。Redis新的vm机制会将Key存放在内存中,Value存放在swap区。配置项取值范围栏中的XXX为数值。修改初始密码,在配置文件中有一个参数requirepass,就是配置redis访问密码的参数。比如requirepassabc123然后重启redis#先查询redis的pid,kill它,然后重启[root@iz2zee4qz3fqi9xkyn76j6z~]#ps-ef|grepredisroot1656810June16?00:06:13./bin/redis-server*:6379root2416924153013:35pts/100:00:00grep--color=autoredis[root@localhostbin]#kill-916568[root@localhostbin]#./redis-serverredis.conf后台启动成功如下最后我们使用redis客户端通过密码远程连接:#remoteconnectionredis-cli-h2.140.189.129-p6379redis127.0.0.1:6379>authabc123查看redis是否运行1.查看进程方法ps-aux|grepredis2,端口监听方法用于查看netstat-lanp|grep6379结果如下: