文章目录
说明:Redis是c语言编写要gc++
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
tar -xzf redis-6.0.6.tar.gz
mv redis-6.0.6.tar.gz redis
cd redis
make
mkdir ../redis-path
make install PREFIX=/data/redis/redis-path/
cd ../redis-path/bin/
redis-benchmark :redis性能测试工具
redis-check-dump :redis校验 dump持久化的文件
redis-check-aof :redis 校验aof持久化的文件
redis-sentinel :redis服务端超链接
redis-cli : redis客户端
redis-server :redis服务端
./redis-server
下面的样子表示启动成功
Ctrl+C退出
改成后端启动
cp ../../redis/redis.conf ./
vim redis.conf
把no改成yes
database 指定库的数量
./redis-server redis.conf
## 查看是否安装成功
ps -ef|grep redis
./redis-cli
– ./redis-cli -h 192.168.37.129 -p 6379
Redis Desktop Manager的下载及安装
+#### 3、java代码
pom.xml
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.2</version>
</dependency>
JedisPollTest .java
public class JedisPollTest {
public static void main(String[] args) {
//创建JedisPoll连接池
JedisPool jedisPool=new JedisPool("192.168.37.129",6379);
//从连接池获取Jedis连接对象
Jedis jedis = jedisPool.getResource();
//使用jedis操作Redis 使用命令和Redis命令一样
jedis.set("jedisPool", "jedisPool hello");
String getResult = jedis.get("jedisPool");
System.out.println(getResult);
//释放资源
//一定要jedis执行close方法 不是关闭 把连接还给连接池
jedis.close();
//程序执行完才给连接池关闭
jedisPool.close();
}
}
cd /data
mkdir redis-cluster
cp -r redis/redis-path/bin redis-cluster/redis1
cd redis-cluster/redis1/
rm -rf dump.rdb
vim redis.conf
cd ../
cp -r redis1/ redis2
cp -r redis1/ redis3
cp -r redis1/ redis4
cp -r redis1/ redis5
cp -r redis1/ redis6
vim redis2/redis.conf # port 7002
vim redis3/redis.conf # port 7003
vim redis4/redis.conf # port 7004
vim redis5/redis.conf # port 7005
vim redis6/redis.conf # port 7006
vim start-all.sh
下面为start-all.sh内容
cd redis1
./redis-server redis.conf
cd …/redis2
./redis-server redis.conf
cd …/redis3
./redis-server redis.conf
cd …/redis4
./redis-server redis.conf
cd …/redis5
./redis-server redis.conf
cd …/redis6
./redis-server redis.conf
chmod u+x start-all.sh # 设置执行权限
./start-all.sh # 执行
ps -ef|grep redis #查看结果
apt install ruby
apt install rubygems
redis-3.0.7.gem下载地址
https://rubygems.org/gems/redis/
gem install redis-3.0.7.gem
cd /data/redis/redis/src
/data/redis/redis/为 步骤一 1 中tar解压的文件路径
ll *.rb
-rwxrwxr-x 1 root root 60527 Jan 25 2016 redis-trib.rb*
./redis-trib.rb create --replicas 1 192.168.37.129:7001 192.168.37.129:7002 192.168.37.129:7003 192.168.37.129:7004 192.168.37.129:7005 192.168.37.129:7006
~~ redis集群只能使用客户端和java代码不能使用~~
./redis-cli -h 192.168.37.161 -p 7006 -c
public class JedisClusterTest {
public static void main(String[] args) {
//设置节点的IP和端口号
Set<HostAndPort> nodes =new HashSet<>();
nodes.add(new HostAndPort("192.168.37.129", 7001));
nodes.add(new HostAndPort("192.168.37.129", 7002));
nodes.add(new HostAndPort("192.168.37.129", 7003));
nodes.add(new HostAndPort("192.168.37.129", 7004));
nodes.add(new HostAndPort("192.168.37.129", 7005));
nodes.add(new HostAndPort("192.168.37.129", 7006));
//创建JedisCluster连接对象
JedisCluster jedisCluster =new JedisCluster(nodes);
//使用JedisCluster操作redis集群
//创建jedis连接对象
//使用jedis操作Redis 使用命令和Redis命令一样
jedisCluster.set("jedisCluster", "jedisCluster hello");
String getResult = jedisCluster.get("jedisCluster");
System.out.println(getResult);
//释放资源,关闭jedis连接
//释放资源 执行逻辑的时候,不要关闭JedisCluster,因为他集成了连接池
jedisCluster.close();
}
}