百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分析 > 正文

linux 下安装redis以及php Redis扩展

liebian365 2024-11-10 11:51 14 浏览 0 评论

    1. linux 下安装redis以及php Redis扩展

    2. 环境配置: centos6.0 nginx/1.0.0 php/5.3.8 mysql/5.5.17

    3. 步骤一、下载redis

    4. 可以去http://redis.io/去下载最新版本

    5. 我用的是 redis 2.8.11

    6. 进入软件安装包存放目录: cd /var/install/software/

    7. wget http://download.redis.io/redis-stable.tar.gz

  1. 步骤二、编译源程序

  2. tar xvzf redis-stable.tar.gz

  3. cd redis-stable

  4. make

  5. make install

  6. 如果make出现了异常:

  7. 1)make[2]: cc: Command not found

  8. 异常原因:没有安装gcc

  9. 解决方案:yum install gcc-c++

  10. 2)zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory

  11. 异常原因:一些编译依赖或原来编译遗留出现的问题

  12. 解决方案:make distclean。清理一下,然后再make。

  13. 在make成功之后,需要make test 在make test 出现异常

  14. 1) couldn't execute "tclsh8.5": no such file or directory

  15. 异常原因:没有安装tcl

  16. 解决方案:yum install -y tcl。

  17. make命令执行完成后,会在src目录下生成5个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump,它们的作用如下:

  18. redis-server:Redis服务器的daemon启动程序

  19. redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作

  20. redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能

  21. redis-check-aof:更新日志检查

  22. redis-check-dump:用于本地数据库检查

  23. 步骤三、配置

  24. cp redis-server /usr/local/bin/

  25. cp redis-cli /usr/local/bin/

  26. 然后新建目录,存放配置文件

  27. mkdir /etc/redis

  28. mkdir /var/redis

  29. mkdir /var/redis/log

  30. mkdir /var/redis/run

  31. mkdir /var/redis/6379

  32. 在redis解压根目录中找到配置文件模板,复制到如下位置。

  33. cp redis.conf /etc/redis/6379.conf通过vim命令修改

  34. daemonize yes

  35. pidfile /var/redis/run/redis_6379.pid

  36. logfile /var/redis/log/redis_6379.log

  37. dir /var/redis/6379

  38. 最后运行redis:

  39. $ redis-server /etc/redis/6379.conf

  40. 可用netstat –atln 查看端口是启动安装成功



  41. 步聚四、操作Redis数据库

  42. # ./redis-cli

  43. "http://img.blog.csdn.net/20140617150954812?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaV9icnVjZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

  44.   下面我们来简单的操作一下数据库。在实例开启的情况下:

  45.   1、插入数据

  46.   redis 127.0.0.1:6379> set name wwl

  47.   OK

  48.   设置一个key-value对。

  49.   2、查询数据

  50.   redis 127.0.0.1:6379> get name

  51. "wwl"

  52.   取出key所对应的value。

  53.   3、删除键值

  54.   redis 127.0.0.1:6379> del name

  55.   删除这个key及对应的value。

  56.   4、验证键是否存在

  57.   redis 127.0.0.1:6379> exists name

  58.   (integer) 0

  59.   其中0,代表此key不存在;1代表存在。

  60. 步骤五、下载phpredis扩展

  61. 先去下载https://github.com/nicolasff/phpredis/downloads

  62. #wget https://github.com/nicolasff/phpredis/downloads

  63. # tar -zxvf nicolasff-phpredis-2.1.3-124-gd4ad907.tar.gz

  64. # mv nicolasff-phpredis-d4ad907 php-5.3.8/ext/phpredis/

  65. # cd php-5.3.8/ext/phpredis/

  66. # /usr/local/php/bin/phpize

  67. # ./configure --with-php-config=/usr/local/php/bin/php-config

  68. # make && make install

  69. 配置php.ini

  70. vi /usr/local/php/lib/php.ini

  71. (加入:

  72. extension=redis.so

  73. )

  74. 先要看看有没有extension_dir=/…….

  75. 重启apache或者nginx (reload php---> /etc/init.d/php-fpm restart)

  76. 到正常情况到此可以用phpinfo看到redis扩展

  77. 如果phpinfo没有redis扩展信息请添加/etc/php.d/redis.ini (路径是我本地的)

  78. redis.ini 内容如下:

  79. ; Enable mysql extension module

  80. extension=redis.so

  81. 重启apache或者nginx (reload php---> /etc/init.d/php-fpm restart)

    相关推荐

    C#夯实基础-Lambda在List中的使用

    在C#中基本类型比如List,Dictionary,数组等都有委托来实现相关的操作。此时Lambda表达式就可以使用了.实例1,查找字符串List的包含a的元素...

    在C#中,如何实现对集合中元素的自定义排序?

    在C#中,可以通过多种方式实现对集合中元素的自定义排序,主要包括:...

    C++11 新特性面试题_c++ 11 面试题

    1、C++11中引入了哪些新的智能指针类型?请描述它们的用法和区别。C++11中引入了三种新的智能指针类型:std::unique_ptr,std::shared_ptr,和std::weak_...

    为什么要使用lambda表达式?原来如此,涨知识了

    为什么要使用Lambda表达式先看几段Java8以前经常会遇到的代码:创建线程并启动...

    [编程基础] Python lambda函数总结

    Pythonlambda函数教程展示了如何在Python中创建匿名函数。Python中的匿名函数是使用lambda关键字创建的。...

    硬核!Java 程序员必须掌握的 10 个 简化代码的 Lambda 表达式!

    大家好,我是一位在架构师道路上狂奔的码农,今天给大家介绍一下程序员必须掌握的10个Lambda表达式,这些表达式几乎涵盖了在实际编程中经常用到的常见场景。相信通过这10个Lambda表...

    一文读懂lambda表达式_lambda表达式由来

    作者:youngyan,腾讯PCG数据工程工程师...

    Java基础知识 - lambda 表达式_javalambda表达式用法

    1、表达式语法1)lambda的命名采用的是数学符号λ;...

    Python学习笔记 | 匿名函数lambda、映射函数map和过滤函数filter

    什么是匿名函数?定义:没有函数名的自定义函数场景:函数体非常简单,使用次数很少,没有必要声明函数,通常搭配高阶函数使用。...

    Java Lambda表达式详解(非常全面)

    JavaLambda表达式是JDK8引入的,是一个比较重要的特性。@mikechenLambda表达式简介...

    Python函数—lambda表达式_python中lambda函数的用法讲解

    目录...

    了解 Lambda:Python 中的单个表达式函数

    Python中的lambda关键字提供了声明小型匿名函数的快捷方式。Lambda函数的行为与使用...

    在C#中使用Lambda编写一个排序算法,比较其与传统排序算法的优劣

    使用Lambda表达式编写排序算法在C#中,Lambda表达式可以用来简化排序逻辑的编写,尤其是在需要自定义排序规则时非常方便。以下示例展示了如何用Lambda表达式实现排序,并与传统排...

    一日一技:python中的匿名函数 lambda用法

    匿名函数lambda,语法如下:lambdaarguments:expression...

    《回炉重造》——Lambda表达式_回炉重造是贬义词吗

    前言Lambda表达式(LambdaExpression),相信大家对Lambda肯定是很熟悉的,毕竟我们数学上经常用到它,即λ。不过,感觉数学中的Lambda和编程语言中的Lamb...

    取消回复欢迎 发表评论: