redis 安装
// redis是c语言开发的,所以需要安装gcc编译环境
yum install gcc-c++
// 上传安装包,注意路径不能有中文
// alt + p 切换 sftp 模式
put D:\redis-3.0.3.tar.gz
// 解压安装包
tar -zxvf redis-3.0.3.tar.gz
// 编译
cd redis-3.0.3
make
// 安装,安装完成后会在/data01/redis/bin下出现几个可执行文件
// redis-benchmark 性能测试工具
// redis-check-aof // aof文件修改工具
// redis-check-dump // rdb文件检查工具(快照持久化文件)
// redis-cli // 命令行客户端
// redis-sentinel -> redis-server // redis哨兵模式
// redis-server // redis服务器启动命令
make PREFIX=/data01/redis install
// copy配置
mkdir /data01/redis/conf
cp /data01/redis-3.0.3/redis.conf /data01/redis/conf/
// 启动方式一:前端启动,启动后不能进行其他操作 不推荐 停止服务:ctrl + c
./bin/redis-server
// 启动方式二:后端启动
// 修改redis.conf daemonize yes
./bin/redis-server ./conf/redis.conf
// 查看redis是否启动,redis启动后端口默认是6379
ps -ef | grep redis
// 停止redis
// 方式一:kill 不推荐,因为强制终止redis进程会导致redis持久化数据丢失
// 方式二:客户端shutdown
./bin/redis-cli shutdown
redis 连接
// 使用redis自带的客户端redis-cli连接
// redis-cli -h ip地址 -p 端口
[root@localhost bin]# ./redis-cli -h 192.168.92.128 -p 6379
192.168.92.128:6379>
// redis-cli 默认方式连接
[root@localhost bin]# ./redis-cli
127.0.0.1:6379>
// 测试客户端与服务器连接是否正常
127.0.0.1:6379> ping
PONG
// set
127.0.0.1:6379> set name laonxs
OK
// get
127.0.0.1:6379> get name
"laonxs"
// delete
127.0.0.1:6379> del name
(integer) 1
// 查看所有的key值
127.0.0.1:6379> keys *
(empty list or set)
redis 入门
-
导入jar包
commons-pool2-2.3.jar jedis-2.7.2.jar
-
单实例连接
@Test public void test01() { Jedis jedis = new Jedis("192.168.92.128", 6379); String set = jedis.set("name", "laonxs"); System.out.println(set); // OK String name = jedis.get("name"); System.out.println(name); // laonxs jedis.close(); }
- 报错
redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out - 解决方案:开通防火墙
vim /etc/sysconfig/iptables // 增加设置 -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT // 重启防火墙 service iptables restart
- 报错
-
连接池连接
@Test public void test02() { // 获取连接池配置对象,并进行配置 JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxTotal(10); // 配置最大连接数 poolConfig.setMaxIdle(10); // 配置最大空闲连接数 // 获取连接池对象 JedisPool pool = new JedisPool("192.168.92.128", 6379); // 获取核心对象 Jedis jedis = pool.getResource(); // 操作 String set = jedis.set("name", "laonxs"); System.out.println(set); // OK String name = jedis.get("name"); System.out.println(name); // laonxs // 关闭资源 jedis.close(); pool.close(); }