Linux安装redis及远程连接

操作环境是阿里云服务器

redis安装

1.获取redis资源

(1)官网下载链接:https://redis.io/download
​​​​​​​​​​redis官网
(2)使用命令下载:wget http://download.redis.io/releases/redis-6.0.8.tar.gz

2.解压 / 删除压缩包

tar -xzvf redis-6.0.8.tar.gz //解压

rm -rf redis-6.0.8.tar.gz

解压文件


3.redis安装

cd redis-6.0.8/

make//编译

cd src/

make install PREFIX=/usr/local/redis


4.移动配置文件到安装目录下

现在redis文件下创建etc,再把配置文件redis.conf移到etc目录下

cd …/

mkdir /usr/local/redis/etc

mv redis.conf /usr/local/redis/etc


5.配置redis为后台启动

vim /usr/local/redis/etc/redis.conf

daemonize no 改成 daemonize yes


6.配置redis开机启动

vim /etc/rc.local

添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf


7.开启redis

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf


8.将redis-cli,redis-server拷贝到bin下,让redis-cli指令可以在任意目录下直接使用

cp /usr/local/redis/bin/redis-server /usr/local/bin/

cp /usr/local/redis/bin/redis-cli /usr/local/bin/


9.设置redis密码

(1)执行命令:redis-cli

(2)查看现有密码:config get requirepass

(3)设置redis密码:config set requirepass ****(****为你要设置的密码)

(4)重启redis服务测试连接

a.执行命令:redis-cli -h 127.0.0.1 -p 6379 -a ****(****为你设置的密码)

b.输入 redis-cli 进入命令模式,使用 auth ‘*****’ (****为你设置的密码)

设置密码

(5)查看后台进程及测试

查看进程:ps -ef |grep redis

重新登录测试结果:

测试结果

10.redis设置外网访问

修改配置文件:vim /usr/local/redis/etc/redis.conf

注释掉bind 的ip 并且把protected-mode (保护模式)改为no

手动设置远程访问密码:requirepass ‘xxxxxx’ (****为你要设置的密码)

停止redis:pkill redis

重新启动:redis-server /usr/local/redis/etc/redis.conf


11.常用命令

redis-server /usr/local/redis/etc/redis.conf //启动redis

pkill redis //停止redis 或 使用 kill -9 杀死进程

卸载redis:

rm -rf /usr/local/redis //删除安装目录

rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本

rm -rf /root/redis-6.0.8 //删除redis解压文件夹


远程连接

远程连接环境:Java、Maven

1.依赖包

<!-- redis依赖包 -->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>2.4.2</version>
</dependency>
<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-redis</artifactId>
    <version>1.7.2.RELEASE</version>
</dependency>
<dependency>
	<groupId>redis.clients</groupId>
	<artifactId>jedis</artifactId>
	<version>2.9.0</version>
</dependency>

2.redis连接单元测试

package com.sslt.test;

import org.junit.Test;

import redis.clients.jedis.Jedis;

public class RedisTest {
   
	
	@Test
	public void demo1(){
   
        // 1. 设置IP地址和端口
        Jedis jedis = new Jedis("连接IP", 6379);
        jedis.auth("abcd1234");   // 设置的requirepass连接密码
        // 2. 保存数据
        jedis.set("mykey","Hello Redis...");
        // 3. 获取数据
        String value = jedis.get("mykey");
        System.out.println(value);
        // 4.释放资源
        jedis.close();
    }
	
}

3.Spring连接池连接配置

(1)配置文件:serviceconfig.properties

#Redis配置信息
redis.host=连接的IP
redis.port=6379
redis.password=连接的密码
#客户端连接超时时间
redis.timeout=30000
#可用数据库数
redis.database=0

(2)配置文件:spring-jedis.xml

单机和集群的配置任选其一,在这只是 单机连接,至于集群可参考其他博主文章

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans.xsd
	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
	http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd 
	http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
	http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
	
	<!-- 加载配置属性文件 -->
	<context:property-placeholder location="classpath:serviceconfig.properties" ignore-unresolvable="true"/>
	
	<!-- 连接池配置:可以放在属性配置文件中 -->
	<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
		<!-- 最大连接数 -->
		<property name="maxTotal" value="100" />
		<!-- 最大空闲连接数 -->
		<property name="maxIdle" value="10" />
		<!-- 每次释放连接的最大数目 -->
		<property name="numTestsPerEvictionRun" value="1024" />
		<!-- 释放连接的扫描间隔(毫秒) -->
		<property name="timeBetweenEvictionRunsMillis" value="30000" />
		<!-- 连接最小空闲时间 -->
		<property name="minEvictableIdleTimeMillis" value="1800000" />
		<!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 -->
		<property name="softMinEvictableIdleTimeMillis" value="10000" />
		<!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 -->
		<property name="maxWaitMillis" value="1500" />
		<!-- 在获取连接的时候检查有效性, 默认false -->
		<property name="testOnBorrow" value="true" />
		<!-- 在空闲时检查有效性, 默认false -->
		<property name="testWhileIdle" value="true" />
		<!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true -->
		<property name="blockWhenExhausted" value="false" />
	</bean>
	
	<!-- 单机连接的配置,任选其一 -->
	<bean id="jedisPool" class="redis.clients.jedis.JedisPool">
		<constructor-arg name="poolConfig" ref="jedisPoolConfig"/>
		<constructor-arg name="host" value="${redis.host}"/>
		<constructor-arg name="port" value="${redis.port}" type="int"/>
		<constructor-arg name="timeout" value="${redis.timeout}" type="int" />
        <constructor-arg name="password" value="${redis.password}" />
        <constructor-arg name="database" value="${redis.database}" type="int" />
	</bean>
	
	<!-- 集群环境的配置,任选其一 -->
	<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster">
		<constructor-arg name="nodes">
			<set>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7001"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7002"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7003"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7004"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7005"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7006"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index="1" value="7007"></constructor-arg>
				</bean>
				<bean class="redis.clients.jedis.HostAndPort">
					<constructor-arg index="0" value="121.101.212.46"></constructor-arg>
					<constructor-arg index=<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值