Redis缓存数据的安装配置

Redis缓存数据的安装配置手册(仅供参考)
1、修改yum源
     [root@benet ~]# vim /etc/yum.repos.d/epel.repo
      [epel]
      name=Extra Packages for Enterprise Linux 6 - $basearch
      baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch/
      failovermethod=priority
      enabled=1
      gpgcheck=0
      [nginx]
      name=nginx repo
      baseurl=http://nginx.org/packages/centos/6/$basearch/
      gpgcheck=0
      enabled=1
   
  [root@benet ~]# vim /etc/yum.repos.d/rhel-source.repo     添加以下内容:
    [base]
    name=CentOS-$releasever - Base
    baseurl=http://mirrors.163.com/centos/6/os/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
    #released updates
    [updates]
    name=CentOS-$releasever - Updates
    baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
    #packages used/produced in the build but not released 
    #[addons]
    #name=CentOS-$releasever - Addons
    #baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/
    #gpgcheck=1
    #gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
    #additional packages that may be useful
    [extras]
    name=CentOS-$releasever - Extras
    baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
    gpgcheck=1
    gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
    #additional packages that extend functionality of existing packages
    [centosplus]
    name=CentOS-$releasever - Plus
    baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
    gpgcheck=1
    enabled=0

yum源更新
[root@benet ~]# yum update

2. yum安装
    [root@benet ~]# yum install -y nginx php php-fpm php-cli php-common php-gd php-mbstring php-mysql php-pdo php-devel php-xmlrpc php-xml php-bcmath php-dba php-enchant mysql mysql-server

3. 简单配置nginx
[root@benet ~]# vim /etc/nginx/nginx.conf
    user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}
http {

    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/logs/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;
    server {
        listen 80;
        server_name benet.cn;
        location / {
        root /var/www/;
        index index.php index.html index.htm;
        }
        location ~ \.php$ {
        root /var/www/;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/$fastcgi_script_name;
        include fastcgi_params;
        }
}
    #gzip  on;
 #   include /etc/nginx/conf.d/*.conf;
}

创建nginx日志文件目录
[root@benet ~]# mkdir -p /var/logs/nginx
[root@benet ~]# chown -R nginx:nginx /var/logs/

4. 启动nginx、php-fpm、mysqld服务
[root@benet ~]# /etc/init.d/nginx start

[root@benet ~]# sed -i 's/apache/nginx/g' /etc/php-fpm.d/www.conf
[root@benet ~]# /etc/init.d/php-fpm start

[root@benet ~]# mkdir /{logs/www}
[root@benet ~]# chown -R nginx:nginx /{logs,www}
[root@benet ~]# /etc/init.d/nginx restart

关闭防火墙
[root@benet ~]# /etc/init.d/iptables stop

查看监听端口
[root@benet ~]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name              
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      13414/nginx                        
tcp        0      0 127.0.0.1:9000          0.0.0.0:*                   LISTEN      13036/php-fpm      
tcp        0      0 0.0.0.0:3306              0.0.0.0:*                   LISTEN      13192/mysqld 

编写测试PHP脚本
[root@benet ~]# vim /var/www/index.php
  <?php
     phpinfo();
?>

5. 给mysql授权
[root@benet ~]# mysql
mysql> grant all privileges on *.* to root@localhost identified by '123456';
mysql> flush privileges;

5. 安装redis
[root@benet ~]# wget -c -t 0 http://download.redis.io/releases/redis-2.8.19.tar.gz
[root@benet ~]# mkdir /usr/local/redis
[root@benet ~]# tar xvf redis-2.8.19.tar.gz 
[root@benet ~]# cd redis-2.8.19
[root@benet redis-2.8.19]# make
[root@benet ~]# cd redis-2.8.19/src/
[root@benet src]# cp redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server /usr/local/redis/
[root@benet ~]# cd redis-2.8.19
[root@benet redis-2.8.19]# cp redis.conf sentinel.conf /usr/local/redis/

启动redis服务
[root@benet ~]# /usr/local/redis/redis-server 

6. 安装php的redis扩展
[root@benet ~]# wget -c -t 0 https://github.com/owlient/phpredis/archive/master.zip
[root@benet ~]# unzip master.zip
[root@benet ~]# cd phpredis-master/
[root@benet phpredis-master]# phpize
[root@benet phpredis-master]# ./configure --with-php-config=/usr/bin/php-config
[root@benet phpredis-master]# make && make install

#修改php的配置文件,如果没有“extension=redis.so”,就加上这一行
[root@benet ~]# vim /etc/php.ini
extension=redis.so

启动php-fpm服务
[root@benet ~]# /etc/init.d/php-fpm restart

查看php是否已经成功支持 redis
 


修改redis配置文件
[root@benet ~]# vim /usr/local/redis/redis.conf
daemonize yes
port 6379
logfile "/var/logs/redis/redis.log"                 #修改生成默认日志文件位置
dir /usr/local/redis/redisData                        #配置持久化文件存放位置

启动redis服务
[root@benet ~]# /usr/local/redis/redis-server

7. PHP模拟Redis给mysql数据库加速过程
在mysql中插入一些测试数据
[root@benet ~]# mysql -uroot -p123456
mysql> create database mytest;
mysql> use mytest;
mysql> create teble test (id int(7) not null auto_increment, name char(8) default null, PRIMARY KEY (id)) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
mysql> INSERT INTO `test` VALUES (1,'sven'),(2,'jim'),(3,'zhu'),(4,'wang'),(5,'ftd'),(6,'test'),(7,'test01'),(8,'test02'),(9,'test03');

8. 编写php的测试代码
[root@benet ~]# vim /var/www/index.php
  <?php
 $redis=new redis();
 $redis->connect('127.0.0.1',6379)or die("could net redis server");
 $query="select * from test limit8";
 for($key=1;$key < 9;$key++)
 {
  if(!$redis->get($key))
  {
   $connect = mysql_connect('127.0.0.1','root','123456');
   mysql_select_db(mytest);
   $result=mysql_query($query);
   echo "results from mysql";
   echo "<hr>";
   while ($row = mysql_fetch_assoc($result))
                        {
                         $redis->set($row['id'],$row['name']);
                         $id=$row['id'];$name=$row['name'];
                         echo "number is <b><font color=#225511>$id</font></b>";
                         echo "<br>";
                         echo "name is <b><font color=#225511>$name</font></b>";
                         echo "<br>";
                        }
  $myserver='mysql';
  exit;
  }
  else
  {
   $myserver="redis";
   $data[$key] = $redis->get($key);
  }
}
  echo "results from redis";
  echo "<hr>";
 
 for ($key = 1;$key < 9;$key++)
 {
  echo "number is <b> <font color=#FF0000>$key</font></b>";
  echo "<br>";
  echo "number is <b><font color=#FF000>$data[$key]</font></b>";
  echo "<br>";
}
?>

测试
 
刷新页面

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深海天哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值