高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器

时间:2022-09-06 19:17:08

一、源码安装Redis缓存服务

目标:

本案例要求先快速搭建好一台Redis服务器,并测试该缓存服务器:

1> 设置变量test,值为123

2> 查看变量test的值

3> 设置计数器mycounter

4> 对计数器mycounter进行增量加1操作

方案:

使用源码包安装Redis服务器,使用redis-cli客户端工具连接Redis服务器并测试缓存数据库。

使用redis-cli命令测试Redis服务时可以使用的命令列表如下表所示。

高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器

步骤:

步骤一:安装Redis服务器

1)源码安装Redis软件

[root@svr5 ~]# tar -xzf redis-3.0.6.tar.gz
    [root@svr5 ~]# cd redis-3.0.6
    [root@svr5 ~]# make
    [root@svr5 ~]# make install
    [root@svr5 ~]# ./utils/install_server.sh            //初始化
    Welcome to the redis service installer
    This script will help you easily set up a running redis server
    Please select the redis port for this instance: [6379]    //设置端口号,默认即可
    Selecting default: 6379
    Please select the redis config file name [/etc/redis/6379.conf] //配置文件
    Selected default - /etc/redis/6379.conf
    Please select the redis log file name [/var/log/redis_6379.log] //日志文件
    Selected default - /var/log/redis_6379.log
    Please select the data directory for this instance [/var/lib/redis/6379]
    //数据目录
    Selected default - /var/lib/redis/6379
    Please select the redis executable path [/usr/local/bin/redis-server]
    //Redis服务器软件存储路径
    Selected config:
    Port           : 6379
    Config file    : /etc/redis/6379.conf
    Log file       : /var/log/redis_6379.log
    Data dir       : /var/lib/redis/6379
    Executable     : /usr/local/bin/redis-server
    Cli Executable : /usr/local/bin/redis-cli
    Is this ok? Then press ENTER to go on or Ctrl-C to abort.
    //确认信息是否正确,回车确认即可
    Copied /tmp/6379.conf => /etc/init.d/redis_6379
    Installing service...
    Successfully added to chkconfig!
    Successfully added to runlevels 345!
    Starting Redis server...
    Installation successful!
    [root@svr5 ~]# ls /etc/init.d/redis_6379         //查看启动脚本

2)启用Redis服务并查看监听端口状态

[root@svr5 ~]# /etc/init.d/redis_6379 restart
    [root@srv5 ~]# netstat -nutlp |grep redis
    tcp        0      0 0.0.0.0:6379    0.0.0.0:*    LISTEN      5749/redis-server *
    tcp        0      0 :::6379            :::*            LISTEN      5749/redis-server *

步骤二:测试缓存数据库

1)使用redis-cli测试数据库

[root@srv5 ~]# redis-cli
    127.0.0.1:6379> ping                        //测试服务器
    PONG
    127.0.0.1:6379> set test 123                //设置变量
    OK
    127.0.0.1:6379> get test                    //查看test值
    "123"
    127.0.0.1:6379> INCR mycounter                //设置计数器mycounter
    (integer) 1
    127.0.0.1:6379> INCR mycounter                //对计数器mycounter进行自增运算
    (integer) 2

二、常用Redis数据库操作指令

目标:

1> 沿用练习一,通过redis-cli工具,对Redis数据库各数据类型进行增删改查等操作,要求如下:

2> 分别对Strings、Hash表、List列表三种数据类型进行增删改查等常见操作

3> 设置数据缓存时间

4> 清空所有数据

5> 对数据库操作

方案:

使用redis-cli客户端工具连接Redis服务器并测试缓存数据库。

使用redis-cli命令测试Redis服务是可以使用的命令列表如下表所示。

高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器

步骤:

步骤一:常用Redis数据操作指令

1)使用redis-cli测试数据库(字符串常见操作指南)

[root@srv5 ~]# redis-cli
    127.0.0.1:6379> ping
    PONG
    127.0.0.1:6379> set string1 "hello the word"    //设置字符串变量
    OK
    127.0.0.1:6379> get string1                    //查看字符串变量
    "hello the word"
    127.0.0.1:6379> set string2 "hello" ex 5    //设置字符串变量,并设置过期时间为5秒
    OK
    127.0.0.1:6379> get string2                //查看字符串变量
    "hello"
    127.0.0.1:6379> get string2                //字符串过期后,查看该值为空
    (nil)
    127.0.0.1:6379> get string1
    "hello the word"
    127.0.0.1:6379> set string1 hello nx        //仅当string1不存在时,才执行set指令
    (nil)
    127.0.0.1:6379> set string1 hello xx        //仅当string1存在时,才执行set指令
    OK
    127.0.0.1:6379> get string1                     //查看修改后string1的值
    "hello"
    127.0.0.1:6379> set string1 "hello the world"    //修改string1的值
    OK
    127.0.0.1:6379> get string1
    "hello the world"
    127.0.0.1:6379> setrange string1 6 "Redis"        //从第6个字符开始替换string1的值
    (integer) 15
    127.0.0.1:6379> get string1
    "hello Redisorld"
    127.0.0.1:6379> strlen string1                    //计算string1的长度
    (integer) 15
    127.0.0.1:6379> append string1 xxx                //对string1进行追加操作
    (integer) 18
    127.0.0.1:6379> get string1
    "hello Redisorldxxx"
    127.0.0.1:6379> append string1 " xxx"
    (integer) 22
    127.0.0.1:6379> get string1
    "hello Redisorldxxx xxx"
    127.0.0.1:6379> setbit string2 0 1                //按位设置string2的值,0位为1
    (integer) 0
    127.0.0.1:6379> setbit string2 1 1                //按位设置string2的值,1位为1
    (integer) 0
    127.0.0.1:6379> setbit string2 2 1
    (integer) 0
    127.0.0.1:6379> setbit string2 3 0
    (integer) 0
    127.0.0.1:6379> get string2                    //不可以查看所有的值
    "\xe0"
    127.0.0.1:6379> bitcount string2                 //统计string2中1的个数
    (integer) 3
    127.0.0.1:6379> getbit string2 0                //查看string2第0位的值
    (integer) 1
    127.0.0.1:6379> getbit string2 1                //查看string2第1位的值
    (integer) 1
    127.0.0.1:6379> decr string3                    //递减运算,初始值为0
    (integer) -1
    127.0.0.1:6379> decr string3
    (integer) -2
    127.0.0.1:6379> decr string3
    (integer) -3
    127.0.0.1:6379> decr string3
    (integer) -4
    127.0.0.1:6379> decr string3
    (integer) -5
    127.0.0.1:6379> set string4 10                    //自定义变量初始值为10
    OK
    127.0.0.1:6379> decr string4                    //对自定义变量进行递减运算
    (integer) 9
    127.0.0.1:6379> decr string4
    (integer) 8
    127.0.0.1:6379> decr string4
    (integer) 7
    127.0.0.1:6379> decrby string4 2                //对变量进行递减2运算
    (integer) 5
    127.0.0.1:6379> decrby string4 2
    (integer) 3
    127.0.0.1:6379> get string4
    "3"
    127.0.0.1:6379> set string5 "hello the world"        //设置字符串变量
    OK
    127.0.0.1:6379> getrange string5 0 4            //查看字串的第0至第4位
    "hello"
    127.0.0.1:6379> getrange string5 -3 -1            //查看字串的倒数第3位至倒数第1位
    "rld"
    127.0.0.1:6379> incr page                        //对变量进行递增运算,初始值为0
    (integer) 1
    127.0.0.1:6379> incr page
    (integer) 2
    127.0.0.1:6379> incr page
    (integer) 3
    127.0.0.1:6379> incr page
    (integer) 4
    127.0.0.1:6379> set string6 10                    //设置字符串变量为10
    OK
    127.0.0.1:6379> incr string6                    //对变量进行递增运算
    (integer) 11
    127.0.0.1:6379> incr string6
    (integer) 12
    127.0.0.1:6379> incrby string6 2                //对变量进行递增2运算
    (integer) 14
    127.0.0.1:6379> incrby string6 2
    (integer) 16
    127.0.0.1:6379> incrby string6 2
    (integer) 18
    127.0.0.1:6379> incrby string6 2
    (integer) 20
    127.0.0.1:6379> set num 16.1                //设置浮点数变量
    OK
    127.0.0.1:6379> incrbyfloat num 1.1        //对浮点数进行递增1.1运算
    "17.2"
    127.0.0.1:6379> incrbyfloat num 1.1
    "18.3"
    127.0.0.1:6379> incrbyfloat num 1.1
    "19.4"
    127.0.0.1:6379> incrbyfloat num 1.1
    "20.5"

2)Hash表常见操作指南

127.0.0.1:6379> hset hkey google “www.g.cn”        
    //设置hash表hkey,google列的值为www.g.cn
    (integer) 1
    127.0.0.1:6379> hset hkey baidu “www.baidu.com”
    //设置hash表hkey,baidu列的值为www.baidu.com
    (integer) 1
    127.0.0.1:6379> hget hkey google        //查看hash表hkey中google列的值
    "www.g.cn"
    127.0.0.1:6379> hget hkey baidu        //查看hash表hkey中baidu列的值
    "www.baidu.com"
    127.0.0.1:6379> hmset site google "www.g.cn" baidu "www.baidu.com"
    OK
    //一次性设置hash表site的多个列与值
    127.0.0.1:6379> hmget site google baidu
    1) "www.g.cn"
    2) "www.baidu.com"
    //一次性查看hash表site的多个列值
    127.0.0.1:6379> hgetall site                //查看site表中所有的列与值
    1) "google"
    2) "www.g.cn"
    3) "baidu"
    4) "www.baidu.com"
    127.0.0.1:6379> hdel site google            //删除site表中google列
    (integer) 1
    127.0.0.1:6379> hgetall site                //验证删除效果
    1) "baidu"
    2) "www.baidu.com"
    127.0.0.1:6379> hmset site google "www.g.cn" baidu "www.baidu.com" sina "www.sina.com"
    OK
    127.0.0.1:6379> hkeys site                    //查看site表的所有列
    1) "baidu"
    2) "google"
    3) "sina"
    127.0.0.1:6379> hvals site                    //查看site表中所有列的值
    1) "www.baidu.com"
    2) "www.g.cn"
    3) "www.sina.com"
    127.0.0.1:6379> hmget site google baidu    //一次性查看site表中的多个列值
    1) "www.g.cn"
    2) "www.baidu.com"

3)List列表常见操作指南

127.0.0.1:6379> lpush list1 a b c            //创建列表并赋值
    (integer) 3
    127.0.0.1:6379> lpush list2 a                //创建列表并赋值
    (integer) 1
    127.0.0.1:6379> lpush list2 b                //给列表追加新值
    (integer) 2
    127.0.0.1:6379> lpush list2 c                //给列表追加新值
    (integer) 3
    127.0.0.1:6379> lrange list1 0 -1            
    //查看列表list1中的所有值,从0位到最后1位
    1) "c"
    2) "b"
    3) "a"
    127.0.0.1:6379> lrange list1 1 2            //查看列表中第1和2位的值
    1) "b"
    2) "a"
    127.0.0.1:6379> lrange list1 1 -1            //查看列表中第1至最后1位的值
    1) "b"
    127.0.0.1:6379> lrange list2 0 -1            //查看所有的值
    1) "a"
    2) "c"
    3) "b"
    4) "a"
    127.0.0.1:6379> lrange list2 0 -1
    1) "t"
    2) "a"
    3) "c"
    4) "b"
    5) "a"
    127.0.0.1:6379> lpop list2                
    //返回list2列表头元素数据,并将该值从列表中删除,key不存在则返回nil
    "t"
    127.0.0.1:6379> lrange list2 0 -1        //验证结果
    1) "a"
    2) "c"
    3) "b"
    4) "a"
    127.0.0.1:6379> lpop list2                //接续删除头部元素
    "a"
    127.0.0.1:6379> lrange list2 0 -1        //验证结果
    1) "c"
    2) "b"
    3) "a"
    127.0.0.1:6379> lpop list2
    "c"
    127.0.0.1:6379> lrange list2 0 -1
    1) "b"
    2) "a"
    127.0.0.1:6379> lrange list4 0 -1            //查看全部数据如下
    1) "f"
    2) "e"
    3) "d"
    4) "a"
    5) "c"
    127.0.0.1:6379> lindex list4 0                //返回list4中第0个值
    "f"
    127.0.0.1:6379> lindex list4 1                //返回list4中第1个值
    "e"
    127.0.0.1:6379> lindex list4 -1            //返回list4中最后1个值
    "c"
    127.0.0.1:6379> lindex list4 -2            //返回list4中倒数第2个值
    "a"
    127.0.0.1:6379> lrange list4 0 -1
    1) "f"
    2) "e"
    3) "d"
    4) "a"
    5) "c"
    127.0.0.1:6379> lset list4 0 test        //给list4的第0为插入值,值为test
    OK
    127.0.0.1:6379> lrange list4 0 -1        //验证结果
    1) "test"
    2) "d"
    3) "a"

4)其他操作指南

127.0.0.1:6379> set mykey "hello"            //定义字符串变量
    OK
    127.0.0.1:6379> get mykey                    //查看变量
    "hello"
    127.0.0.1:6379> del mykey                    //删除变量
    (integer) 1
    127.0.0.1:6379> get mykey                    //验证结果
    (nil)
    127.0.0.1:6379> set mykey "hello"            //定义变量即值
    OK
    127.0.0.1:6379> get mykey                    //查看有值
    "hello"
    127.0.0.1:6379> get mykey
    "hello"
    127.0.0.1:6379> expire mykey 10            //定义过期时间
    (integer) 1
    127.0.0.1:6379> get mykey                    //10秒后查看,无值
    (nil)
    127.0.0.1:6379> set mykey "hello"            //设置变量
    OK
    127.0.0.1:6379> persist mykey                //重新定义过期时间为,永久有效
    (integer) 1
    127.0.0.1:6379> get mykey
    "hello"
    127.0.0.1:6379> get mykey
    "hello"
    127.0.0.1:6379> ttl mykey
    (integer) -1                            //永不过期
    127.0.0.1:6379> expire mykey 10        //定义过期时间
    (integer) 1
    127.0.0.1:6379> ttl mykey                //查看过期时间
    (integer) 9
    127.0.0.1:6379> ttl mykey
    (integer) 8
    127.0.0.1:6379> ttl mykey
    (integer) 7
    127.0.0.1:6379> ttl mykey
    (integer) 6
    127.0.0.1:6379> ttl mykey
    (integer) 5
    127.0.0.1:6379> ttl mykey
    (integer) 4
    127.0.0.1:6379> ttl mykey
    (integer) 3
    127.0.0.1:6379> ttl mykey
    (integer) 3
    127.0.0.1:6379> ttl mykey
    (integer) 2
    127.0.0.1:6379> ttl mykey
    (integer) 1
    127.0.0.1:6379> ttl mykey
    (integer) -2        //已经过期
    127.0.0.1:6379> get mykey        //查看mykey的值已经为空
    (nil)
    127.0.0.1:6379> set mykey "hello"
    OK
    127.0.0.1:6379> keys *        //查看数据库下所有数据
     1) "string6"
     2) "list7"
     3) "mykey"
     4) "string4"
     5) "db"
     6) "num"
     7) "result"
     8) "hkey"
     9) "string5"
    10) "string1"
    11) "bit1"
    12) "page"
    13) "bit2"
    14) "site"
    15) "string2"
    16) "list1"
    17) "string3"
    18) "list6"
    127.0.0.1:6379> keys li*
    1) "list7"
    2) "list1"
    3) "list6"
    127.0.0.1:6379> keys s*
    1) "string6"
    2) "string4"
    3) "string5"
    4) "string1"
    5) "site"
    6) "string2"
    7) "string3"
    127.0.0.1:6379> keys string[15]        //查看string1或string5
    1) "string5"
    2) "string1"
    127.0.0.1:6379> keys string[0-9]        //查看string0值9的数据
    1) "string6"
    2) "string4"
    3) "string5"
    4) "string1"
    5) "string2"
    6) "string3"
    127.0.0.1:6379> keys ?it*        //使用通配符所有数据
    1) "bit1"
    2) "bit2"
    127.0.0.1:6379> select 1        //进入1数据库,默认数据库为0
    OK
    127.0.0.1:6379[1]> keys *        //在新数据库中查看数据为空
    (empty list or set)
    127.0.0.1:6379[1]> set test "test"        //在数据库1中创建变量
    OK
    127.0.0.1:6379[1]> get test            //查看变量的值
    "test"
    127.0.0.1:6379[1]> select 2            //进入2数据库
    OK
    127.0.0.1:6379[2]> keys *                //查看所有数据
    (empty list or set)
    127.0.0.1:6379[2]> select 1
    OK
    127.0.0.1:6379[1]> keys *
    1) "test"
    127.0.0.1:6379[1]> select 0
    OK
    127.0.0.1:6379> keys *
     1) "string6"
     2) "list7"
     3) "mykey"
     4) "string4"
     5) "db"
     6) "num"
     7) "result"
     8) "hkey"
     9) "string5"
    10) "string1"
    11) "bit1"
    12) "page"
    13) "bit2"
    14) "site"
    15) "string2"
    16) "list1"
    17) "string3"
    18) "list6"
    127.0.0.1:6379> flushall        //清空所有数据
    OK
    127.0.0.1:6379> keys *        //验证结果
    127.0.0.1:6379[2]> select 0
    OK
    127.0.0.1:6379> set mykey "hello"
    OK
    127.0.0.1:6379> keys *
    1) "mykey"
    127.0.0.1:6379> select 1
    OK
    127.0.0.1:6379[1]> keys *
    (empty list or set)
    127.0.0.1:6379[1]> select 0
    OK
    127.0.0.1:6379> keys *
    1) "mykey"
    127.0.0.1:6379> move mykey 1        //将数据库0中的mykey变量移动至数据库1
    (integer) 1
    127.0.0.1:6379> keys *        //在数据库0中查看为空
    (empty list or set)
    127.0.0.1:6379> select 1        //进入数据库1
    OK
    127.0.0.1:6379[1]> keys *        //查看所有数据库
    1) "mykey"
    127.0.0.1:6379[1]> lpush cost 1 8 7 2 5        //创建列表cost
    (integer) 5
    127.0.0.1:6379[1]> sort cost                    //对列表值进行排序
    1) "1"
    2) "2"
    3) "5"
    4) "7"
    5) "8"

三、配置Redis主从服务器

目标:

本案例要求先快速搭建好两台Redis服务器,实现两台服务器之间自动数据同步,具体要求如下:

1> 主服务器IP为192.168.2.100

2> 从服务器IP为192.168.2.200

3> 主服务器认证密码为redis123

4> 测试主从数据是否正常通过

方案:

通过修改Redis配置文件,实现两台服务器之间的自动主从同步功能,方案拓扑如下图所示。

高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器

步骤:

步骤一:配置主从服务器设置

1)主服务器安装Redis

[root@svr100 ~]# tar -xzf redis-3.0.6.tar.gz
    [root@svr100 ~]# cd redis-3.0.6
    [root@svr100 ~]# make
    [root@svr100 ~]# make install
    [root@svr100 ~]# cd utils/
    [root@svr100 ~]#./install_server.sh
    Welcome to the redis service installer
    This script will help you easily set up a running redis server
    Please select the redis port for this instance: [6379]
    Selecting default: 6379
    Please select the redis config file name [/etc/redis/6379.conf]
    Selected default - /etc/redis/6379.conf
    Please select the redis log file name [/var/log/redis_6379.log]
    Selected default - /var/log/redis_6379.log
    Please select the data directory for this instance [/var/lib/redis/6379]
    Selected default - /var/lib/redis/6379
    Please select the redis executable path [/usr/local/bin/redis-server]
    Selected config:
    Port           : 6379
    Config file    : /etc/redis/6379.conf
    Log file       : /var/log/redis_6379.log
    Data dir       : /var/lib/redis/6379
    Executable     : /usr/local/bin/redis-server
    Cli Executable : /usr/local/bin/redis-cli
    Is this ok? Then press ENTER to go on or Ctrl-C to abort.
    Copied /tmp/6379.conf => /etc/init.d/redis_6379
    Installing service...
    Successfully added to chkconfig!
    Successfully added to runlevels 345!
    Starting Redis server...
    Installation successful!

2)从服务器安装Redis

[root@svr200 ~]# tar -xzf redis-3.0.6.tar.gz
    [root@svr200 ~]# cd redis-3.0.6
    [root@svr200 ~]# make
    [root@svr200 ~]# make install
    [root@svr200 ~]# cd utils/
    [root@svr200 ~]#./install_server.sh
    Welcome to the redis service installer
    This script will help you easily set up a running redis server
    Please select the redis port for this instance: [6379]
    Selecting default: 6379
    Please select the redis config file name [/etc/redis/6379.conf]
    Selected default - /etc/redis/6379.conf
    Please select the redis log file name [/var/log/redis_6379.log]
    Selected default - /var/log/redis_6379.log
    Please select the data directory for this instance [/var/lib/redis/6379]
    Selected default - /var/lib/redis/6379
    Please select the redis executable path [/usr/local/bin/redis-server]
    Selected config:
    Port           : 6379
    Config file    : /etc/redis/6379.conf
    Log file       : /var/log/redis_6379.log
    Data dir       : /var/lib/redis/6379
    Executable     : /usr/local/bin/redis-server
    Cli Executable : /usr/local/bin/redis-cli
    Is this ok? Then press ENTER to go on or Ctrl-C to abort.
    Copied /tmp/6379.conf => /etc/init.d/redis_6379
    Installing service...
    Successfully added to chkconfig!
    Successfully added to runlevels 345!
    Starting Redis server...
    Installation successful!

步骤二:配置主从服务器设置

1)修改主服务器/etc/redis/6379.conf配置文件

[root@svr100 ~]# vim /etc/redis/6379.conf
    requirepass redis123                               //设置服务器密码
    [root@svr100 ~]# /etc/init.d/redis_6379 restart       //重启服务

2)修改主服务器的启动脚本,添加服务器密码

[root@svr100 ~]# vim  /etc/init.d/redis_6379
    $CLIEXEC –a redis123  -p $REDISPORT shutdown

3)修改从服务器/etc/redis/6379.conf配置文件

[root@svr200 ~]# vim /etc/redis/6379.conf
    slaveof 192.168.4.100 6379
    masterauth redis123
    [root@svr200 ~]# /etc/init.d/redis_6379  restart

步骤三:验证效果

1) 主服务器操作

[root@svr100 ~]# redis-cli –h 192.168.4.100 –a redis123      //登录主服务器设置数据
    192.168.4.10:6379> set test 123456
    OK

2) 从服务器操作

[root@svr200 ~]# redis-cli –h 192.168.4.200            //登录主服务器查看数据同步效果
    192.168.4.20:6379> get test
    “123456”

高级运维(六):源码安装Redis缓存服务、常用Redis数据库操作指令、配置Redis主从服务器的更多相关文章

  1. Mybatis源码解析(四) —— SqlSession是如何实现数据库操作的?

    Mybatis源码解析(四) -- SqlSession是如何实现数据库操作的?   如果拿一次数据库请求操作做比喻,那么前面3篇文章就是在做请求准备,真正执行操作的是本篇文章要讲述的内容.正如标题一 ...

  2. CentOS7源码安装Redis5.0.4非关系型数据库

    源码安装redis-5.0.4 一. 下载redis 1. 需要连接网络 二. 案例(另一种安装方法) [root@localhost ~]# wget http://download.redis.i ...

  3. 在CentOs7源码安装mysql-5.6.35单实例数据库

    首先安装依赖包,避免在安装过程中出现问题 [root@bogon liuzhen]# yum -y install gcc gcc-c++[root@bogon liuzhen]# yum -y in ...

  4. 源码安装H2O Http 服务端程序到Ubuntu服务器

    首先安装全家桶 apt install -y build-essential zlib1g-dev libpcre3 libpcre3-dev unzip cmake libncurses5-dev ...

  5. 【运维技术】Nginx安装教程(yum安装,源码编译)

    安装方式 yum直接更新源安装 源码直接编译之后安装 使用yum进行直接安装 Installing a Prebuilt CentOS/RHEL Package from an OS Reposito ...

  6. 搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展

    上一篇:搭建LNAMP环境(四)- 源码安装PHP7 一.安装Redis 1.创建redis用户组和用户 groupadd redis useradd -r -g redis -s /sbin/nol ...

  7. Redis(一)源码安装

    redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存储 (store) 系统.性能极高,并且支持丰富的数据结构.下面将介绍在ubuntu 14. ...

  8. 搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展

    上一篇:搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展 一.安装MongoDB 1.创建mongodb用户组和用户 groupadd mongodb useradd -r -g ...

  9. Redis for linux安装配置之—-源码安装

    一‘redis单实例安装配置1.下载redis源码压缩包,并将其上传至服务器/usr/local2.解压redis源码压缩包  # tar -xzvf redis-3.2.12.tar.gz3.进入r ...

随机推荐

  1. 简述抽象和封装,对你学习Java有一些作用

    作为一个Java 初学者,对Java的理解可能有些片面,甚至有些错误的理解,对于观看此处的您,希望您选择性观看!!! 天知道我为什么选择学习编程,我不爱编程,但是我既然学习了,还是会努力学习的,在此分 ...

  2. 面试题目: PHP 有哪些优缺点?

    当面试官噼里啪啦的问你一大堆问题后,突然问你,PHP有哪些优缺点?你蒙了没? 反正我是蒙了,不管你信不信! 现在,关于PHP优缺点,大致的说几点: 1.  语法简单的,上手很快,而且还有很多很便捷的开 ...

  3. Bluetooth RFCOMM介绍

    目录 1. 介绍 2. 服务概述 2.1 RS-232控制信号 2.2 Null Modem Emulation 2.3 多串口仿真 3. 服务接口描述 4. RFCOMM帧类型 5. RFCOMM帧 ...

  4. 【转】C++ 内存分配(new,operator new)详解

    本文主要讲述C++ new运算符和operator new, placement new之间的种种关联,new的底层实现,以及operator new的重载和一些在内存池,STL中的应用. 一 new ...

  5. Linux前传——今天的学习

    感觉每天早上搞一个C语言的趣味题,很不错,算是比较实际的事情了.而且,好多都不会,主要是算法,也有很多语法不知道,这样补强很有用.嵌入式方面的课题进展有条不紊,感觉相关寄存器和I/O的使用必须通过大量 ...

  6. 对easyui datagrid进行扩展,当滚动条拉直最下面就异步加载数据。

    以下方法是通用的,只要把datagrid定义为全局的即可,其他部分的代码不用进行修改! 可以把以下代码放入到一个单独的js文件,然后再需要的页面引入即可! $(function(){ try{ $(& ...

  7. vim note(3)

    Ctrl+w  Ctrl+v  will create a new window on the right side of the current window Ctrl+w  Ctrl+s   wi ...

  8. RsaUtils

    参考来源:https://www.cnblogs.com/pcheng/p/9629621.html 里面的这段话,非常好 RSA加密对明文的长度有所限制,规定需加密的明文最大长度=密钥长度-11(单 ...

  9. 实现简单的shell sed替换功能

    通过脚本传参数可以实现替换 # -*-coding:utf-8-*- # Author:sunhao import sys f = open('yesterday','r',encoding='utf ...

  10. mysql-binlog_cache_size

    二进制日志缓冲区吗,默认是32k.该参数是基于会话的,不要设置过大. 当事务的记录大于设定的binlog_cache_size时,mysql会把缓冲区中的日志信息写入一个临时文件中,所以该值也不能设置 ...