part_81:lnmp架构的mysql缓存服务器(redis)

缓存机制:client --> app --> redis --> mysql(redis没有缓存的数据时再访问mysql)–> redis --> client

实验环境

  • rhel7.3
主机名 IP
server1 172.25.60.1(nginx 服务器)
server2 172.25.60.2(redis )
server3 172.25.60.3(mysql)

redis 结合lnmp架构做mysql的缓存服务器

  • 先将上个实验中的redis集群节点服务全部关闭
killall -9 redis-server

如果没有killall指令,则需要先安装
在这里插入图片描述

  • server1(nginx服务器(web))
  • 先查看系统中是否存在nginx,如果存在,建议重新用一个新的虚拟机做;
    如果系统中不存在nginx,先下载安装nginx:tar zxf nginx-1.16.0.tar.gz
    在这里插入图片描述
  • 安装依赖性:yum install pcre-devel zlib-devel gcc -y
  • 进入nginx-1.16.0后,编译配置文件vim auto/cc/gcc,先将debug注释掉后编译:./configure --prefix=/usr/local/nginx
    在这里插入图片描述
  • make && make install
  • 编辑配置文件 :vim /usr/local/nginx/conf/nginx.conf
  • 将php打开 将index.php添加上
    在这里插入图片描述
    在这里插入图片描述
  • 开启nginx:
/usr/local/nginx/sbin/nginx -t
 /usr/local/nginx/conf/sbin/nginx

在这里插入图片描述

  • 安装php,将所需的安装包下载好,并安装:yum install -y *
    在这里插入图片描述
  • 开启php:systemctl start php-fpm
  • 通过端口查看是否开启(9000端口): netstat -tnlp
    在这里插入图片描述
  • 下载测试页面test.php并重新命名为index.php:mv test.php index.php
    在这里插入图片描述
  • 修改测试页面的index.php 将redis和mysql的ip更改好,数据库密码设置好
    在这里插入图片描述
  • 重加载nginx: /usr/local/nginx/sbin/nginx -s reload
  • server2 ( redis )
  • 如果之前做过redis直接开启就好:/etc/init.d/redis_6379 start
  • 将之前的做的redis主从复制的编译文件删除vim /etc/redis/6379.conf (删除最后一行)
  • 进入redis测试:redis-cli --> get name(如果有值就删除del name)
    在这里插入图片描述
  • 重启:/etc/init.d/redis_6379 restart
    在这里插入图片描述
  • 如果之前没有安装,则重新下载安装包,解压编译安装,修改配置文加vim /etc/redis/6379.conf --> bind 0.0.0.0 修改完后重启
  • server3( mysql )
  • 查看之前是否安装mysql : rpm -qa | grep mysql
  • 如果已安装就删除: rpm -e rpm -qa | grep mysql --nodeps
  • 将以前安装过mysql编译的文件删除:cd /var/lib/mysql/ --> rm -rf *
  • 安装mariadb:yum install -y mariadb-server
  • 开启mariadb:systemctl start mariadb
  • 初始化:mysql_secure_installation
    在这里插入图片描述
  • 修改密码(redhat)
  • 进入数据库,创建test数据库
    在这里插入图片描述
  • 创建授权用户,并刷新授权表: grant all on test.* to redis@'%' identified by 'redhat';-->flush privileges;
    在这里插入图片描述
  • 将测试数据库导入:mysql -predhat < test.sql
    在这里插入图片描述
  • 测试
    机制:redis里面有数据就从redis里面拿,没有就去mysql里面去取。
    在浏览器上输入安装nginx的虚拟机的ip:浏览的是mysql的数据库的数据,刷新后浏览的是redis的数据,之后刷新一直访问的是redis的数据,因为有了缓存。
    在这里插入图片描述
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42311209/article/details/90179644
今日推荐