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
特点:
1) 能够持久化储存数据 memcache不能
2) 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
memcached 和 redis 安装的更多相关文章
- Day11 Memcached、Redis和RabbitMQ安装
修改Ubuntu镜像源: sudo vi /etc/apt/sources.list 全部替换为以下内容: ---------------------------------------------- ...
- linux下php7安装memcached、redis扩展
linux下php7安装memcached.redis扩展 1.php7安装Memcached扩展 比如说我现在使用了最新的 Ubuntu 16.04,虽然内置了 PHP 7 源,但 memcache ...
- dockerfile创建php容器(安装memcached、redis、gd、xdebug扩展)
dockerfile创建php容器(含有memcached.redis.gd.xdebug扩展) 代码如下: FROM php:7.2-fpm COPY redis-3.1.6.tgz /home/r ...
- linux下memcached安装 和redis安装,jdk,tomcat,mysql 安装
一.memcached安装yum search memcachedyum -y install memcachedmemmcached -h service memcached restartc ...
- 缓存、队列(Memcached、redis、RabbitMQ)
本章内容: Memcached 简介.安装.使用 Python 操作 Memcached 天生支持集群 redis 简介.安装.使用.实例 Python 操作 Redis String.Hash.Li ...
- Redis安装及实现session共享
一.Redis介绍 1.redis是key-value的存储系统,属于非关系型数据库 2.特点:支持数据持久化,可以让数据在内存中保存到磁盘里(memcached:数据存在内存里,如果服务重启,数据会 ...
- 高性能缓存系统Redis安装与使用
在互联网后台架构中,需要应付高并发访问数据库,很多时候都会在数据库上层增加一个缓存服务器来保存经常读写的数据以减少数据库压力,可以使用LVS.Memcached或Redis,Memcached和Red ...
- 缓存、队列(Memcached,Redis,rabbitMQ)
一.Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的 ...
- 谈谈Memcached与Redis
1. Memcached简介 Memcached是以LiveJurnal旗下Danga Interactive公司的Bard Fitzpatric为首开发的高性能分布式内存缓存服务器.其本质上就是一个 ...
随机推荐
- MySQL简述
Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一. ...
- html5调用本机摄像头兼容谷歌浏览器高版本,谷歌浏览器低版本,火狐浏览器
做这个功能的时候在网上查了一些资料,代码如下,在这个代码在谷歌浏览器46版本是没问题的,在火狐浏览器也行,但是在谷歌浏览器高版本下是不兼容的 <div id="body"&g ...
- delphi 原生 ADODB.recordset
ADODB.recordset ..\source\rtl\win\Winapi.ADOInt.pas..\17.0\OCX\Servers\ADODB2010.pasCLASS_Recordset: ...
- xUtils怎么post请求上传json数据
InfoSmallCodeBinding smallCode = new InfoSmallCodeBinding(); smallCode.setSmallCode("测试"); ...
- Betsy's Tour 漫游小镇(dfs)
Description 一个正方形的镇区分为 N2 个小方块(1 <= N <= 7).农场位于方格的左上角,集市位于左下角.贝茜穿过小镇,从左上角走到左下角,刚好经过每个方格一次.当 N ...
- latex 显示中文
中文支持需要cjk-latex,总得来说中文可以使用GB和GBK两种字体,GBK需要从windows下copy *.ttc或*.ttf, GB字体则在linux下就用. 先说支持GB的中文显示,安装以 ...
- Java多线程-新特征-阻塞栈LinkedBlockingDeque
对于阻塞栈,与阻塞队列相似.不同点在于栈是“后入先出”的结构,每次操作的是栈顶,而队列是“先进先出”的结构,每次操作的是队列头. 这里要特别说明一点的是,阻塞栈是Java6的新特征.. Java为阻塞 ...
- AOP操作术语
- while 循环和do while循环
while循环是先检测条件符合不符合,符合才执行循环体内容,不符合就跳过while循环. 就和一个房间有两个门,一个前门,一个后门,while循环是当你进入前门的时候有人会检查你的身份,只有身份符合条 ...
- 关于前端XSS攻击、短信轰炸等问题
关于前端的XSS攻击: 这里有一篇Ryf老师的写的关于使用 Content Security Policy (简称 CSP 防御)来防御xss攻击,简单来说就是设置白名单,告诉浏览器哪些链接.内容是 ...