zoukankan      html  css  js  c++  java
  • memcached 和 redis 安装

    memcached

    1.搭建好lnmp

    2.安装依赖包
    yum install -y libevent-devel

    3.安装memcached
    $ cd /usr/local/src
    $ wget http://memcached.org/files/memcached-1.4.33.tar.gz
    $ tar -zxvf memcached-1.4.33.tar.gz
    $ cd memcached-1.4.33
    $ ./configure --prefix=/usr/local/memcached && make && make install

    开启服务
    cd /usr/local/memcached/bin
    ./memcached -u www -d
    -p TCP端口,默认为11211,可以不设置
    -m 最大内存,单位MB。
    -u 指定用户,如果当前为 root ,需要使用此参数指定用户
    -d 守护进程(daemon)

    4.安装libmemcached
    $ wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
    $ tar xvzf libmemcached-1.0.18.tar.gz
    $ cd lmemcached-1.0.18
    $ ./configure --prefix=/usr/local/libmemcached --with-memcached
    $ make && make install

    5.安装php-memcached-php7
    wget http://www.memcached.org/files/memcached-1.4.33.tar.gz
    phpize
    ./configure --with-php-config=/usr/local/php7/bin/php-config
    --with-libmemcached-dir=/usr/local/libmemcached/
    make && make install
    将上步得到的路径添加到php配置文件: /usr/local/php7/etc/php.ini
    extension="/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/memcached.so"
    重启php: service php-fpm restart

    6.使用memcached
    创建新对象: new Memcached
    添加服务器:addServer
    添加键值对:set
    根据键值获取值:get
    删除键值对:delete
    增加指定数值:increment
    减去指定数值:decrement
    清空所有缓存:flush

    7.设置session使用memcached保存
    vi /usr/local/php7/etc/php/ini
    session.save_handler=memcached
    session.save_path="127.0.0.1:11211"

    redis安装使用

    1.redis安装:
    说明:

    1. 也是类似memcached的key-value机制的储存服务
    2. 是非关系型数据库NoSQL的一种
    3. www.redis.io www.redis.cn
      特点:
    4. 能够持久化储存数据 memcache不能
    5. value支持更多的数据类型

    安装:Redis
    wget http://download.redis.io/releases/redis-3.2.8.tar.gz

    1. 解压
      tar -zxvf redis-3.2.8.tar.gz
    2. 移动
      cp -R redis-3.2.8 /usr/local/redis
    3. 安装
      make install

    服务:
    安装完成后 /usr/local/redis/src 目录中有两个服务程序
    客户端: redis-cli
    服务端: redis-server
    服务测试:./redis-server

    1. 需要指定启动配置文件
    2. 默认配置 /usr/local/redis/redis.conf
      添加环境变量:
      vi /etc/profile
      export PATH=$PATH:/usr/local/redis/src
      source /etc/profile

    开机启动:

    1. 复制配置文件
      cd /usr/local/redis
      cp redis.conf redis_6379.conf
    2. 编辑配置文件
      daemonize yes #以守护进程方式运行(后台运行)
    3. 复制启动脚本文件
      cd utils
      cp redis_init_script redis_init_script_6379
    4. 编辑启动脚本文件 redis_init_script_6379
      EXEC=/usr/local/redis/src/redis-server #服务端路径
      CLIEXEC=/usr/local/redis/src/redis-cli #客户端路径
      CONF=/usr/local/redis/redis_6379.conf #配置文件路径
    5. 测试启动脚本(可以通过ps查看并用redis-cli连接)
      ./redis_init_script_6379 start
    6. 修改开机启动文件 /etc/rc.local
      添加 /usr/local/redis/utils/redis_init_script_6379 start
    7. 下次开机会自动启动redis服务

    服务测试:

    1. 查看进程
      ps aux | grep redis
    2. 使用客户端连接
      cd /usr/local/redis/src
      连接参数
      -h: 指定主机
      -p: 指定端口号
      -a: 指定密码
      ./redis-cli
      127.0.0.1:6379>ping
      PONG
    3. 默认情况是无密码 使用密码两种方式
      1.单次生效 通过命令配置
      设置密码: config requirepass 123456
      获取密码: config get requirepass
      授权使用:auth 123456
      2.永久生效
      1.vi redis_6379.conf
      2.取消'requirepass'行注释 后面写上密码
      requirepass 123456
      说明:启用密码后 无密码也可以连接 但是没有权限操作

    客户端操作

    常用命令:
    ping 查看服务器是否允许
    quit 关闭当前连接
    auth
    select:选择库 0-15 共16个 默认使用0
    flushdb: 删除当前库
    flushall: 删除所有数据库
    DEL: 删除键
    EXISTS: 检查键是否存在

    数据类型:
    字符串(String):最基本的数据类型 与memcached的Key-Value一样
    设置:SET key value
    获取:GET key
    哈希(Hash):是一个键值对集合 适合存储对象
    设置:HMSET user:1 name xiaoming password 123456 level 2
    获取所有信息:HGETALL user:1
    获取单个信息:HGET user:1 name
    列表(List):按照插入顺序排序 可以添加一个元素到列表的头部(左边)或者尾部(右边)
    左侧压入:lpush key value1 [value2 ...]
    范围显示:lrange key strat stop
    显示个数:llen key
    左侧弹出:lpop
    右侧压入:rpush
    右侧弹出:rpop
    集合(Set): string类型的无需整合 集合中的数据是唯一的
    添加数据:sadd key value1 [value2 ...]
    显示数据:smembers key
    显示总数:scard key
    随机移除:spop key [count] 默认随机移除一个
    有序集合(zset: sorted set)
    不同与set的是每个元素都会关联一个double类型的分数
    redis正是通过分数为集合中的成员进行从小到大的排序
    添加数据:zadd key score value
    显示数据:zrange key start stop
    显示总数:zcard key
    显示范围:zcount key start stop
    显示序号:zrank key member
    显示分数:zscore key member

    PHP操作redis:

    (报错:Can't find PHP headers in /usr/include/php
    yum install php-devel)
    1.安装php扩展
    $ wget https://github.com/phpredis/phpredis/archive/2.2.4.tar.gz
    $ cd phpredis-2.2.7
    $ /usr/bin/phpize #phpize路径,可用 which phpize 命令查看
    $ ./configure --with-php-config=/usr/bin/php-config #/usr/bin/php 为php路径,同上phpize
    $ make && make install

    2.修改php配置文件php.ini
    vi /usr/local/php7/etc/php.ini
    将上步的路径添加进来
    extension=/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/redis.so

    3.重启php-fpm
    service php-fpm restart

    4.测试扩展库有没有成功(phpinfo())

    /usr/lib64/php/modules/redis.so

  • 相关阅读:
    python 递归
    python 装饰器
    python函数作用域,嵌套函数,闭包
    排序算法总结
    经典排序算法学习笔记七——堆排序
    经典排序算法学习笔记六——归并排序
    经典排序算法学习笔记五——直接选择排序
    经典排序算法学习笔记四——希尔排序
    经典排序算法学习笔记三——插入排序
    经典排序算法学习笔记二——快速排序
  • 原文地址:https://www.cnblogs.com/weizaiyes/p/9167144.html
Copyright © 2011-2022 走看看