데이터 베이스 MySQL 튜토리얼 CentOS 6.4 安装Redis 2.6.13和phpRedis扩展

CentOS 6.4 安装Redis 2.6.13和phpRedis扩展

Jun 07, 2016 pm 04:30 PM
centos php redis 설치하다

第一步:下载安装所需文件 http://redis.io/download wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz http://www.tcl.tk/software/tcltk/download.html wget http://prdownloads.sourceforge.net/tcl/tcl8.6.0-src.tar.gz https://github.com/

第一步:下载安装所需文件
http://redis.io/download
wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
http://www.tcl.tk/software/tcltk/download.html
wget http://prdownloads.sourceforge.net/tcl/tcl8.6.0-src.tar.gz
https://github.com/nicolasff/phpredis
wget https://github.com/nicolasff/phpredis/archive/master.zip
由于网址重定向最终下载的文件是master没有后缀,其实就是一个zip文件,使用unzip master 解压出来的文件夹是phpredis-master。

第二步:安装编译软件
2.1、安装tcl
tar xzvf tcl8.6.0-src.tar.gz
cd tcl8.6.0/unix
./configure
make && make install

如果不先安装tcl在编译redis的时候,执行make test 会报以下错误,这步也可以省略,不执行make test 直接执行make install 对redis的启动和关闭没有什么影响。
[root@localhost redis]# make test
cd src && make test
make[1]: Entering directory `/usr/local/webserver/redis/src'
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] Error 1
make[1]: Leaving directory `/usr/local/webserver/redis/src'
make: *** [test] Error 2

2.2、安装redis
tar xzvf redis-2.6.13.tar.gz
mv redis-2.6.13 /usr/local/webserver/redis
cd /usr/local/webserver/redis
make
make test  #可以省略
make install

2.3、配置
源码包中有一个默认的配置文件,文件名redis.conf,我们可以根据自己的需要修改相关的参数,
  daemonize:默认值no,该参数用于定制redis服务是否以守护模式运行。
  pidfile:默认值/var/run/redis.pid,指定redis服务的进程号文件路径,以守护模式运行时需要配置本参数;
  port:默认值6379,指定redis服务的端口;
  bind:绑定ip,默认是本机所有网络设备;
  timeout:客户端空闲n秒后断开连接;
  loglevel:设置服务端的日志级别,有下列几种选择:
  debug:记录详细信息,用于开发或调试;
  verbose:提供很多有用的信息,但是又不像debug那么详尽,默认就是这一选项;
  notice:适度提醒,多用于产品环境;
  warning:仅显示重要的警告信息;
  logfile:指定日志的输出路径,默认值stdout,表示输出到屏幕,守护模式时则输出到/dev/null;
  如果要输出日志到syslog中,可以启动syslog-enabled yes,默认该选项值为no。
  databases:指定数据库的数量,默认为16个,默认使用的数据库是DB 0。
以下为快照相关的设置
  save :指定多长时间刷新快照至磁盘,这个选项有两个属性值,只有当两个属性值均满足时才会触发;可以设置多种级别,例如默认的参数文件中就设置了:
  save 900 1:每900秒(15分钟)至少一次键值变更时被触发;
  save 300 10:每300秒(5分钟)至少10次键值变更时被触发;
  save 60 10000:每60秒至少10000次键值变更时被触发;
  rdbcompression:默认值yes,当dump数据库时使用LZF压缩字符串对象,如果CPU资源比较紧张,可以设置为no,选择不压缩;
  dbfilename:默认值dump.rdb,dump到文件系统中的文件名;
  dir:默认值./,即当前目录,dump出的数据文件的存储路径;
以下为复制相关的设置,复制默认是不启用的,因此在默认的参数文件下列表参数均被注释
  # slaveof :指定主端ip和端口,用于创建一个镜像服务;
  # masterauth :如果master配置了密码的话,此处也需做设置;
  slave-serve-stale-data:默认值yes。当slave丢失与master端的连接,或者复制仍在处理,那么slave会有下列两种表现:
  当本参数值为yes时,slave为继续响应客户端请求,尽管数据已不同步甚至没有数据(出现在初次同步的情况下);
  当本参数值为no时,slave会返回"SYNC with master in progreee"的错误信息;
  # repl-ping-slave-period:默认值10,指定slave定期ping master的周期;
  # repl-timeout:默认值60,指定超时时间。注意本参数包括批量传输数据和ping响应的时间。
以下为安全相关的设置
  # requirepass:指定一个密码,客户端连接时也需要通过密码才能成功连接;
  # rename-command:重定义命令,例如将CONFIG命令更名为一个很复杂的名字:
  rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52;
  rename-command CONFIG "":取消这个命令;
以下为资源限制方面的设置
  # maxclients:指定客户端的最大并发连接数,默认是没有限制,直到redis无法创建新的进程为止,设置该参数值为0也表示不限制,如果该参数指定了值,当并发连接达到指定值时,redis会关闭所有新连接,并返回'max number of clients reached'的错误信息;
  # maxmemory:设置redis最大可使用内存。当达到最大内存后,redis会尝试按照设置的回收策略删除键值。如果无法删除键值,或者保留策略设置为不清除,那么redis就会向发出内存的请求返回错误信息。当把redis做为一级LRU的缓存时本参数较为有用。
  # maxmemory-policy:默认值volatile-lru,指定清除策略,有下列几种方法:
  volatile-lru -> remove the key with an expire set using an LRU algorithm
  allkeys-lru -> remove any key accordingly to the LRU algorithm
  volatile-random -> remove a random key with an expire set
  allkeys->random -> remove a random key, any key
  volatile-ttl -> remove the key with the nearest expire time (minor TTL)
  noeviction -> don't expire at all, just return an error on write operations
  # maxmemory-samples:默认值3,LRU和最小TTL策略并非严谨的策略,而是大约估算的方式,因此可以选择取样值以便检查。
以下为APPEND ONLY模式的设置,默认情况下redis采用异步方式dump数据到磁盘上,极端情况下这可能会导致丢失部分数据(比如服务器突然宕机),如果数据比较重要,不希望丢失,可以启用直写的模式,这种模式下redis会将所有接收到的写操作同步到appendonly.aof文件中,该文件会在redis服务启动时在内存中重建所有数据。注意这种模式对性能影响非常之大。
  appendonly:默认值no,指定是否启用直写模式;
  # appendfilename:直写模式的默认文件名appendonly.aof;
  appendfsync:调用fsync()方式让操作系统写数据到磁盘上,数据同步方式,有下列几种模式:
  always:每次都调用,比如安全,但速度最慢;
  everysec:每秒同步,这也是默认方式;
  no:不调用fsync,由操作系统决定何时同步,比如快的模式;
  no-appendfsync-on-rewrite:默认值no。当AOF fsync策略设置为always或everysec,后台保存进程会执行大量的I/O操作。某些linux配置下redis可能会阻塞过多的fsync()调用。
  auto-aof-rewrite-percentage:默认值100
  auto-aof-rewrite-min-size:默认值64mb
以下为慢日志相关的设置,用以记录执行时间超出阀值的查询。执行时间不包括I/O操作或发送数据到客户端等占用的时间,而是真正执行命令所花费的时间(即线程阻塞不能接受其它请求的时间):
  slowlog-log-slower-than:默认值10000,单位微秒,定义为慢的执行的阀值;
  slowlog-max-len:默认值1024,慢日志的最大数据。注意这会占用内容资源,如果要清空它可以执行SLOWLOG RESET命令;
以下为虚拟内存相关的设置,虚拟内存在2.4版本废弃,这里也略过不提了
  vm-enabled no
  vm-swap-file /tmp/redis.swap
  vm-max-memory 0
  vm-page-size 32
  vm-pages 134217728
  vm-max-threads 4
以下为高级配置相关的设置
  hash-max-zipmap-entries:默认值512,当某个map的元素个数达到最大值,但是其中最大元素的长度没有达到设定阀值时,其HASH的编码采用一种特殊的方式(更有效利用内存)。本参数与下面的参数组合使用来设置这两项阀值。设置元素个数;
  hash-max-zipmap-value:默认值64,设置map中元素的值的最大长度;这两个
  list-max-ziplist-entries:默认值512,与hash类似,满足条件的list数组也会采用特殊的方式以节省空间。
  list-max-ziplist-value:默认值64
  set-max-intset-entries:默认值512,当set类型中的数据都是数值类型,并且set中整型元素的数量不超过指定值时,使用特殊的编码方式。
  zset-max-ziplist-entries:默认值128,与hash和list类似。
  zset-max-ziplist-value:默认值64
  activerehashing:默认值yes,用来控制是否自动重建hash。Active rehashing每100微秒使用1微秒cpu时间排序,以重组Redis的hash表。重建是通过一种lazy方式,写入hash表的操作越多,需要执行rehashing的步骤也越多,如果服务器当前空闲,那么rehashing操作会一直执行。如果对实时性要求较高,难以接受redis时不时出现的2微秒的延迟,则可以设置activerehashing为no,否则建议设置为yes,以节省内存空间。
以下为包含方面的设置
  include:用于指定包含其它参数文件。

2.4、启动redis
/usr/local/webserver/redis/src/redis-server /usr/local/webserver/redis/6380.conf
/usr/local/webserver/redis/src/redis-server /usr/local/webserver/redis/6379.conf
/usr/local/webserver/redis/src/redis-server /usr/local/webserver/redis/6381.conf

可以使用netstat -ntl 查看下是否启动成功
[root@localhost redis]# netstat -ntl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.1.21:6379           0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:20587               0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:875                 0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.1.21:6380           0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.1.21:6381           0.0.0.0:*                   LISTEN

2.5、关闭redis
/usr/local/webserver/redis/src/redis-cli -h 192.168.1.21 -p 6380 shutdown
/usr/local/webserver/redis/src/redis-cli -h 192.168.1.21 -p 6379 shutdown
/usr/local/webserver/redis/src/redis-cli -h 192.168.1.21 -p 6381 shutdown

第三步:安装phpredis(即REDIS的PHP扩展)
unzip master
cd phpredis-master/
/usr/local/webserver/php5/bin/phpize
./configure --with-php-config=/usr/local/webserver/php5/bin/php-config
make && make install
vi /usr/local/webserver/php5/etc/php.ini
增加:extension = "redis.so"
然后执行/usr/local/webserver/php5/bin/php -m 看看有没有redis的扩展,或者浏览一个phpinfo文件来查看是否有redis扩展。
点击在新窗口中浏览此图片

另外redis有一个web管理工具phpRedisAdmin,试用了一下,感兴趣的朋友可以装上试试。
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
Tags - centos , redis , phpredis
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

PHP에서 HTML/XML을 어떻게 구문 분석하고 처리합니까? PHP에서 HTML/XML을 어떻게 구문 분석하고 처리합니까? Feb 07, 2025 am 11:57 AM

이 튜토리얼은 PHP를 사용하여 XML 문서를 효율적으로 처리하는 방법을 보여줍니다. XML (Extensible Markup Language)은 인간의 가독성과 기계 구문 분석을 위해 설계된 다목적 텍스트 기반 마크 업 언어입니다. 일반적으로 데이터 저장 AN에 사용됩니다

문자열로 모음을 계산하는 PHP 프로그램 문자열로 모음을 계산하는 PHP 프로그램 Feb 07, 2025 pm 12:12 PM

문자열은 문자, 숫자 및 기호를 포함하여 일련의 문자입니다. 이 튜토리얼은 다른 방법을 사용하여 PHP의 주어진 문자열의 모음 수를 계산하는 방법을 배웁니다. 영어의 모음은 A, E, I, O, U이며 대문자 또는 소문자 일 수 있습니다. 모음이란 무엇입니까? 모음은 특정 발음을 나타내는 알파벳 문자입니다. 대문자와 소문자를 포함하여 영어에는 5 개의 모음이 있습니다. a, e, i, o, u 예 1 입력 : String = "Tutorialspoint" 출력 : 6 설명하다 문자열의 "Tutorialspoint"의 모음은 u, o, i, a, o, i입니다. 총 6 개의 위안이 있습니다

이전에 몰랐던 후회되는 PHP 함수 7가지 이전에 몰랐던 후회되는 PHP 함수 7가지 Nov 13, 2024 am 09:42 AM

숙련된 PHP 개발자라면 이미 그런 일을 해왔다는 느낌을 받을 것입니다. 귀하는 상당한 수의 애플리케이션을 개발하고, 수백만 줄의 코드를 디버깅하고, 여러 스크립트를 수정하여 작업을 수행했습니다.

2024년 개발자를 위한 상위 10대 PHP CMS 플랫폼 2024년 개발자를 위한 상위 10대 PHP CMS 플랫폼 Dec 05, 2024 am 10:29 AM

CMS는 콘텐츠 관리 시스템을 의미합니다. 사용자가 고급 기술 지식 없이도 디지털 콘텐츠를 생성, 관리 및 수정할 수 있는 소프트웨어 애플리케이션 또는 플랫폼입니다. CMS를 사용하면 사용자가 콘텐츠를 쉽게 생성하고 구성할 수 있습니다.

PHP에서 배열 끝에 요소를 추가하는 방법 PHP에서 배열 끝에 요소를 추가하는 방법 Feb 07, 2025 am 11:17 AM

배열은 프로그래밍에서 데이터를 처리하는 데 사용되는 선형 데이터 구조입니다. 때로는 배열을 처리 할 때 기존 배열에 새 요소를 추가해야합니다. 이 기사에서는 각 방법에 대한 코드 예제, 출력 및 시간 및 공간 복잡성 분석을 통해 PHP의 배열 끝에 요소를 추가하는 몇 가지 방법에 대해 논의합니다. 배열에 요소를 추가하는 다양한 방법은 다음과 같습니다. 사각형 브래킷 사용 [] PHP에서 배열 끝에 요소를 추가하는 방법은 사각형 브래킷을 사용하는 것입니다 []. 이 구문은 단일 요소 만 추가하려는 경우에만 작동합니다. 다음은 구문입니다. $ array [] = value; 예

Nexo Exchange는 어디에서 나온 것입니까? Nexo Exchange는 어디에서 나온 것입니까? Mar 05, 2025 pm 05:09 PM

NEXO Exchange : Swiss cryptocurrency 대출 플랫폼 심층 분석 Nexo는 암호 화폐 대출 서비스를 제공하는 플랫폼으로, 40 개 이상의 암호 자산, 피아트 통화 및 Stablecoins의 모기지 및 대출을 지원합니다. 그것은 유럽과 미국 시장을 지배하며 플랫폼의 효율성, 보안 및 준수를 개선하기 위해 노력하고 있습니다. 많은 투자자들은 Nexo Exchange가 등록되는 위치를 알고 싶어하며 답은 스위스입니다. Nexo는 2018 년 Swiss Fintech Company Credissimo에 의해 설립되었습니다. Nexo Exchange 지리적 위치 및 규정 : Nexo는 잘 알려진 암호 화폐 친화적 인 지역 인 스위스 주 Zug에 본사를두고 있습니다. 이 플랫폼은 다양한 정부의 감독과 적극적으로 협력하며 미국 금융 범죄 법 집행 네트워크 (Fincen) 및 캐나다 금융에있었습니다.

See all articles