Linux CentOS 6.x 开发配置文档 8 - Redis

REmote DIctionary Server,可以直接理解为远程字典服务,也就是基于Key-Value模式Memcached+Database Persistence。
 

Redis 是一个开源的key-value内存数据库。支持的数据类型有:String,list,set,sorted set 和 hash

Redis 命令参考: http://redisdoc.com

1,下载:wget  http://download.redis.io/releases/redis-2.8.19.tar.gz
2,解压:tar zxvf redis-2.8.19.tar.gz
3,编译:make
4,安装:make install
5,打开Redis的服务器:/home/Redis/src/redis-server
6,打开Redis的客户端:/home/Redis/src/redis-cli(以后直接使用 redis -cli ,有中文的话,使用 redis -cli  --raw
7,打开Redis性能测试工具:redis-benchmark
8,测试放数据:set a 123
9,测试取数据:get a,如果出现“123”,则说明成功了! (在线测试: http://try.redis.io
10,关闭Redis服务:redis-cli shutdown
        --redis服务关闭后,缓存数据会自动dump到硬盘上,硬盘地址为redis.conf中的配置项dbfilename dump.rdb所设定
        --强制备份数据到磁盘:redis-cli save 或者 redis-cli -p 6380 save(指定端口)
11,服务自启动
cp redis.conf /etc
vim /etc/redis.conf,将守护进程:daemonize  no  改成:daemonize  yes
vim /etc/rc.local,添加:/home/Redis/src/redis-server /etc/redis.conf


Java 客户端需要Jedis(Jedis 是 Redis 官方首选的 Java 客户端开发包)
https://github.com/xetorthio/jedis/downloads


Redis 操作:
1,简单的set和get:
set a 123
get a
显示:123

2,追加
append a 456
get a
显示:123456

2.1,加 1 操作
set age 18
incr age
显示:19

3,set
mset a1 1 a2 2 a3 3
mget a1 a2 a3
显示:
1) "1"
2) "2"
3) "3"

4,map   ========================TODO==================

Map <String, String> map =  new  HashMap<String, String> (); 
map.put(
"name", "fujianchao" ); 
map.put(
"password", "123" ); 
map.put(
"age", "12" ); 
//  存入一个map  
jedis.hmset("user" , map);
//  map key的个数  System.out.println("map的key的个数" + jedis.hlen("user" ));  //  map key  System.out.println("map的key" + jedis.hkeys("user" ));  //  map value  System.out.println("map的value" + jedis.hvals("user" ));  //  (String key, String... fields)返回值是一个list  List<String> list = jedis.hmget("user", "age", "name" ); System.out.println( "redis中key的各个 fields值:" + jedis.hmget("user", "age", "name") +  list.size());  //  删除map中的某一个键 的值 password  //  当然 (key, fields) 也可以是多个fields  jedis.hdel("user", "age" ); System.out.println( "删除后map的key" + jedis.hkeys("user" ));

    
5,List
lpush list a
lpush list aa
lpush list aaa
lpush list aaaa
获取方法:(根据索引获取,-1 全部;)
lrange list 0 -1,显示:
1) "aaaaa"
2) "aaaa"
3) "aaa"
4) "aa"
5) "a"
获取List中的第1个:lrange list 0 0
获取List中的第2个:lrange list 2 2
获取List中的第2个和第3个:lrange list 1 2
获取栈顶:lpop list
删除:del list

6,
显示:

7,
显示:

8,
显示:

9,

显示:

    public static void main(String[] args) {
        Jedis jedis = new Jedis("127.0.0.1");
        
        System.out.println(jedis.get("key"));
        
        // 添加
        jedis.set("a", "啊");
        System.out.println(jedis.get("a"));
        
        // 删除
        jedis.del("a");
        System.out.println(jedis.get("a"));
    }




你可能感兴趣的:(Linux CentOS 6.x 开发配置文档 8 - Redis)