redis安装、配置、使用和redis php扩展安装的步骤

31次阅读
没有评论

共计 4259 个字符,预计需要花费 11 分钟才能阅读完成。

本篇内容主要讲解“redis 安装、配置、使用和 redis php 扩展安装的步骤”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“redis 安装、配置、使用和 redis php 扩展安装的步骤”吧!

redis 是一个内存数据库,比 memcache 支持更丰富的 value 类型,新浪微博就使用 redis 来做缓存。

redis 的源码安装

复制代码 代码如下:

wget http://download.redis.io/redis-stable.tar.gz
tar -zxvf redis-stable.tar.gz
cd redis-stable
make
make test
make install

1.make 时可能会报如下错误:

复制代码 代码如下:

zmalloc.o: In function `zmalloc_used_memory :
/root/redis-stable/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4
collect2: ld returned 1 exit status
make[1]: *** [redis-server] Error 1
make[1]: Leaving directory `/root/redis-stable/src
make: *** [all] Error 2

解决办法:
编辑 src/.make-settings 里的 OPT,改为 OPT=-O2 -march=i686。

2.make test 报错:

复制代码 代码如下:

You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1

解决办法安装 tcl

复制代码 代码如下:

wget http://downloads.sourceforge.net/tcl/tcl8.6.0-src.tar.gz

cd tcl8.6.0/

cd unix
./configure –prefix=/usr \
  –mandir=/usr/share/man \
  –without-tzdata \
  $([$(uname -m) = x86_64 ] echo –enable-64bit)
make

sed -e s@^\(TCL_SRC_DIR= \).*@\1/usr/include @ \
  -e /TCL_B/s@= \(-L\)\?.*unix@= \1/usr/lib@ \
  -i tclConfig.sh

make install
make install-private-headers
ln -v -sf tclsh8.6 /usr/bin/tclsh
chmod -v 755 /usr/lib/libtcl8.6.so

redis 命令介绍

Redis 由四个可执行文件:redis-benchmark、redis-cli、redis-server、redis-stat 这四个文件,加上一个 redis.conf 就构成了整个 redis 的最终可用包。它们的作用如下:

redis-server:Redis 服务器的 daemon 启动程序
redis-cli:Redis 命令行操作工具。当然,你也可以用 telnet 根据其纯文本协议来操作
redis-benchmark:Redis 性能测试工具,测试 Redis 在你的系统及你的配置下的读写性能
redis-stat:Redis 状态检测工具,可以检测 Redis 当前状态参数及延迟状况
现在就可以启动 redis 了,redis 只有一个启动参数,就是他的配置文件路径。

启动 redis

复制源码包里的 redis.conf 到 /etc

复制代码 代码如下:

# cd redis-stable
# cp redis.conf /etc/redis.conf

编辑 /etc/redis.conf , 修改 daemaon no 为 daemaon yes,以守护进程方式启动进程。

复制代码 代码如下:

# redis-server /etc/redis.conf

关闭 redis

复制代码 代码如下:

# redis-cli shutdown // 关闭所有
关闭某个端口上的 redis
# redis-cli -p 6397 shutdown // 关闭 6397 端口的 redis

说明:关闭以后缓存数据会自动 dump 到硬盘上,硬盘地址见 redis.conf 中的 dbfilename dump.rdb

redis 配置

注意,默认复制过去的 redis.conf 文件的 daemonize 参数为 no,所以 redis 不会在后台运行,这时要测试,我们需要重新开一个终端。修改为 yes 则为后台运行 redis。另外配置文件中规定了 pid 文件,log 文件和数据文件的地址,如果有需要先修改,默认 log 信息定向到 stdout.

下面是 redis.conf 的主要配置参数的意义:

复制代码 代码如下:

daemonize:是否以后台 daemon 方式运行
pidfile:pid 文件位置
port:监听的端口号
timeout:请求超时时间
loglevel:log 信息级别
logfile:log 文件位置
databases:开启数据库的数量
save * *:保存快照的频率,第一个 * 表示多长时间,第三个 * 表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
rdbcompression:是否使用压缩
dbfilename:数据快照文件名(只是文件名,不包括目录)
dir:数据快照的保存目录(这个是目录)
appendonly:是否开启 appendonlylog,开启的话每次写操作会记一条 log,这会提高数据抗风险能力,但影响效率。
appendfsync:appendonlylog 如何同步到磁盘(三个选项,分别是每次写都强制调用 fsync、每秒启用一次 fsync、不调用 fsync 等待系统自己同步)
这时你可以打开一个终端进行测试了,配置文件中默认的监听端口是 6379

redis 开机自动启动

用这个脚本管理之前,需要先配置下面的内核参数,否则 Redis 脚本在重启或停止 redis 时,将会报错,并且不能自动在停止服务前同步数据到磁盘上:

复制代码 代码如下:

# vi /etc/sysctl.conf

vm.overcommit_memory = 1

然后应用生效:

复制代码 代码如下:

# sysctl –p

建立 redis 启动脚本:

复制代码 代码如下:

# vim /etc/init.d/redis

#!/bin/bash
#
# Init file for redis
#
# chkconfig: – 80 12
# description: redis daemon
#
# processname: redis
# config: /etc/redis.conf
# pidfile: /var/run/redis.pid
source /etc/init.d/functions
#BIN= /usr/local/bin
BIN= /usr/local/bin
CONFIG= /etc/redis.conf
PIDFILE= /var/run/redis.pid
### Read configuration
[-r $SYSCONFIG] source $SYSCONFIG
RETVAL=0
prog= redis-server
desc= Redis Server
start() {
  if [-e $PIDFILE];then
  echo $desc already running….
  exit 1
  fi
  echo -n $ Starting $desc:
  daemon $BIN/$prog $CONFIG
  RETVAL=$?
  echo
  [$RETVAL -eq 0] touch /var/lock/subsys/$prog
  return $RETVAL
}
stop() {
  echo -n $ Stop $desc:
  killproc $prog
  RETVAL=$?
  echo
  [$RETVAL -eq 0] rm -f /var/lock/subsys/$prog $PIDFILE
  return $RETVAL
}
restart() {
  stop
  start
}
case $1 in
  start)
  start

  stop)
  stop

  restart)
  restart

  condrestart)
  [-e /var/lock/subsys/$prog] restart
  RETVAL=$?

  status)
  status $prog
  RETVAL=$?

  *)
  echo $ Usage: $0 {start|stop|restart|condrestart|status}
  RETVAL=1
esac
exit $RETVAL
然后增加服务并开机自启动:

复制代码 代码如下:

# chmod 755 /etc/init.d/redis
# chkconfig –add redis
# chkconfig –level 345 redis on
# chkconfig –list redis

redis php 扩展安装

复制代码 代码如下:

wget https://github.com/nicolasff/phpredis/zipball/master -O php-redis.zip
unzip php-redis.zip
cd nicolasff-phpredis-2d0f29b/
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config
make make install

完成后 redis.so 被安装到

复制代码 代码如下:

/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

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

添加

复制代码 代码如下:

extension=redis.so

重启 php-fpm 即可。

configure 时可能会遇到,添加 –with-php-config 参数可以解决。

复制代码 代码如下:

configure: error: Cannot find php-config. Please use –with-php-config=PATH

./configure –with-php-config=/usr/local/php/bin/php-config

到此,相信大家对“redis 安装、配置、使用和 redis php 扩展安装的步骤”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计4259字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)