yii2 – redis 配置

转自:http://www.fancyecommerce.com/2016/05/03/yii2-redis-%E9%85%8D%E7%BD%AE/

  1. 安装redis
  1. wget http://download.redis.io/releases/redis-3.2.8.tar.gz
  2. tar xzf redis-3.2.8.tar.gz
  3. cd redis-3.2.8
  4. make
  1. cd src
  2. cp redis-server /usr/local/bin/
  3. cp redis-cli /usr/local/bin/
  1. mkdir /etc/redis
  2. mkdir /var/redis
  3. mkdir /var/redis/6379
  1. cd ..
  2. cp utils/redis_init_script /etc/init.d/redis_6379
  3. cp redis.conf /etc/redis/6379.conf
  1. /etc/init.d/redis_6379 start

vim /etc/redis/6379.conf ,找到如下的代码部分,修改

  1. daemonize to yes
  2. pidfile to /var/run/redis_6379.pid
  3. logfile to /var/log/redis_6379.log
  4. dir to /var/redis/6379
  5. maxmemory 268435456

maxmemory 这里设置的是256mb,您可以按照您的配置自己设置。

设置开机启动:vim /etc/rc.d/rc.local,添加下面的代码

  1. /etc/init.d/redis_6379 start

2.安装redis的扩展。

  1. yum install git
  1. git clone git://github.com/owlient/phpredis
  2. cd phpredis
  3. /usr/local/php/bin/phpize
  4. ./configure --with-php-config=/usr/local/php/bin/php-config
  5. make && make install

如果上述出现报错,可以尝试用另外一个源:

  1. git clone git://github.com/nicolasff/phpredis

php.ini中添加:

  1. extension=redis.so

3.yii2 redis扩展的安装,以及配置:

在配置好的yii2根目录下面执行(您已经安装了composer)

  1. composer require --prefer-dist yiisoft/yii2-redis

等待片刻就可以安装好yii2 的 redis 扩展

4.yii2中redis的配置

首先基于安全考虑,我们需要给redis设置密码,除非,您的redis端口关闭。

vim /etc/redis/6379.conf

找到行,把前面#去掉,后面加redis的密码

  1. requirepass rds423fsadD

重启redis就可以了。

  1. /etc/init.d/redis_6379 stop
  2. /etc/init.d/redis_6379 start

这样redis密码验证就有了。

yii2的配置如下:

  1. 'redis' => [
  2. 'class' => 'yii\redis\Connection',
  3. 'hostname' => 'localhost',
  4. 'port' => 6379,
  5. 'database' => 1,
  6. //'unixSocket' => '/var/run/redis/redis.sock',
  7. 'password' => 'rds423fsadD',
  8. // 'unixsocket' => '/var/run/redis/redis.sock',
  9. // 'unixSocket' => '/tmp/redis.sock',
  10. ],

重启redis , 这里  yii2就配置好redis了

5.redis的使用:刷新缓存:

  1. [root@E3-1230v2-829 catalog]# redis-cli
  2. 127.0.0.1:6379> auth rds!23v3cv3#ds
  3. OK
  4. 127.0.0.1:6379> flushall
  5. OK
  6. 127.0.0.1:6379>

redis-cli flushall  会报错(需要按照上面的步骤登录)

6.带有密码的redis,定时脚本清空缓存:

新建/www/script/redis_reflush_all.sh,添加如下内容

  1. /usr/local/bin/redis-cli -a 'rds!2016!FDR' flushall

添加到cron中,   crontab -e,添加如下内容,保存

  1. 30 18 * * * /bin/bash /www/web/intosmile.com/shell/flushall.sh

就会定时清空redis的内容了

7. yii2中配置session 和 cache 使用redis

  1. <?php
  2. return [
  3. 'components' => [
  4. 'session' => [
  5. //'class' => 'yii\mongodb\Session',
  6. 'class' => 'yii\redis\Session',
  7. //'db' => 'mongodb',
  8. //'sessionCollection' => 'session',
  9. 'timeout' => 6000,
  10. ],
  11. 'cache' => [
  12. 'class' => 'yii\redis\Cache',
  13. //'class' => 'yii\caching\FileCache',
  14. 'keyPrefix' => 'rediscache-##$fdas5ygjD',
  15. ],

这样cache 就可以使用redis 了。

php中使用redis

1. 设置Redis密码,以提供远程登陆
打开redis.conf配置文件,找到requirepass,然后修改如下:

requirepass yourpassword

yourpassword就是redis验证密码,设置密码以后发现可以登陆,但是无法执行命令了。
命令如下:

redis-cli -h 127.0.0.1 -p 6379//启动redis客户端,并连接服务器
keys * //输出服务器中的所有key

报错如下

(error) ERR operation not permitted

这时候你可以用授权命令进行授权,就不报错了
命令如下:

auth youpassword

2. PHP访问Redis

$redis = new Redis();
$conn = $redis->connect('localhost', 6379);
$auth = $redis->auth('20160601'); //设置密码
var_dump($auth);
$redis->set('access_token', "123213213213213213");
$redis->set('expired_time', 1464344863); var_dump($redis->get("access_token"));
var_dump($redis->get("expired_time"));

yii2redis安装的更多相关文章

  1. Yii2-redis安装配置

    编辑composer.json文件 vim composer.json 加入"yiisoft/yii2-redis": "~2.0.0" 执行更新 compos ...

  2. PHP Yii2 composer环境安装

    PHP Yii2 composer环境安装 composer 安装 任意目录执行: php -r "copy('https://install.phpcomposer.com/install ...

  3. Yii2 redis与cache

    原文地址:http://www.myexception.cn/php/1974979.html composer require yiisoft/yii2-redis 安装后使用超简单,打开 comm ...

  4. Yii2框架与MongoDB拓展、Redis拓展的安装流程

    @author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...

  5. Yii2-Redis使用小记 - Cache(转)

    前些天简单学习了下 Redis,现在准备在项目上使用它了.我们目前用的是 Yii2 框架,在官网搜索了下 Redis,就发现了yii2-redis这扩展. 安装后使用超简单,打开 common/con ...

  6. Yii2-redis

    安装:composer require --prefer-dist yiisoft/yii2-redisredis 版本 >= 2.6.12 添加配置: 'components' => [ ...

  7. Yii2-Redis使用小记 - Cache

    前些天简单学习了下 Redis,现在准备在项目上使用它了.我们目前用的是 Yii2 框架,在官网搜索了下 Redis,就发现了yii2-redis这扩展. 安装后使用超简单,打开 common/con ...

  8. windows 下安装Yii2 高级版本

    1.  首先安装 Composer 2.  执行  composer global require "fxp/composer-asset-plugin:~1.1.1" 3. 执行 ...

  9. yii2-redis 扩展详解

    安装yii2-redis composer require yiisoft/yii2-redis 修改config/web.php 的  components 配置 'cache' => [ / ...

随机推荐

  1. maven用变量的方法统一管理jar包版本

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  2. vue---指令怎么写

    我们在考虑做一些功能性的封装的时候,我们会考虑使用vue的指令来做,那么指令应该怎么写: 具体参考: https://cn.vuejs.org/v2/guide/custom-directive.ht ...

  3. thinkphp结合layui上传图片

    简单示例: <script type="text/javascript"> layui.use(['form', 'layedit','element', 'layda ...

  4. Python中常用包——sklearn主要模块和基本使用方法

    在从事数据科学的人中,最常用的工具就是R和Python了,每个工具都有其利弊,但是Python在各方面都相对胜出一些,这是因为scikit-learn库实现了很多机器学习算法. 加载数据(Data L ...

  5. 【Git 使用笔记】第四部分:git在公司中的开发流程

    先声明几个变量 仓管A:主分支,只有master分支仓管B:开发分支,只有各个业务开发分支   仓管B fork 于 A 如下图 为了保证 代码的稳定性,只有 仓管B中的某个分支测试完毕并进行了代码r ...

  6. Python开发【笔记】:pymsyql 插入一条数据同时获取新插数据的自增id的两种方式

    一.通过cursor.lastrowid import pymysql.cursors # Connect to the database connection = pymysql.connect(h ...

  7. java 泛型没有协变类型, 所以要重用extends, 但使用List<? extends Fruit> 可以是ArrayList<Fruit>()、ArrayList<Apple>()、ArrayList<Orange>(), 因此不能add元素进去

    class Fruit{} class Apple extends Fruit{} class SubApple extends Apple{} class Orange extends Fruit{ ...

  8. Java——文件操作字符流和字节流的区别

    转:http://blog.csdn.net/joephoenix/articles/2283165.aspx java的IO流分两种流 字节流 InputStream OutputStream 字符 ...

  9. 可以搜索到DedeCms后台文章列表文档id吗?或者快速定位id编辑文章

    我们在建站时有的时候发现之前的文章有错误了,要进行修改,但又不知道文章名,只知道大概的文章id,那么可以搜索到DedeCms后台文章列表文档id吗?或者快速定位文章id方便修改? 第一种方法:复制下面 ...

  10. ext3日志模式

    ext3日志模式 http://blog.sina.com.cn/s/blog_5d4ab4b40100dosx.html ext3支持多种日志模式 ext3 是ext2文件系统的高一级版本,完全兼容 ...