zoukankan      html  css  js  c++  java
  • Linux 学习笔记11-lamp+redis主从

    LAMP+REDIS主从

    环境:主机:192.168.176.124(lamp)

          主机:192.168.176.122(redis)

          主机:192.168.176.123(redis从)

    Lamp+redis原理

    用户通过LAMP访问网站时首次访问网站并用用户名和密码方式登录时redis缓存默认是没有改用户的用户名和密码对应列表Php第一次从mysql读取用户信息后,将其缓存在redis中,下次在请求数据时,就从redis中读取数据,来降低mysql的服务器的访问压力。

    Redis的所有的数据都是保存在内存中,然后不定期的通过异步方式保存成快照,再将快照保存到磁盘上(半持久化模式),也可以每一次将数据的变化,写入到一个日志中再保存到磁盘,(全持久化模式)

    安装Apache

    #cd /usr/src

    #wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.34.tar.bz2

    #wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.6.3.tar.bz2

    #wget http://mirrors.shu.edu.cn/apache//apr/apr-util-1.6.1.tar.gz

    #yum install gcc-c++ apr-util-devel pcre* -y

    #tar jxf httpd-2.4.34.tar.bz2

    #tar jxf apr-1.6.3.tar.bz2

    #tar zxf apr-util-1.6.1.tar.gz

    #mv apr-1.6.3/* /usr/src/ httpd-2.4.34/srclib/apr/

    #mv apr-util-1.6.1/* /usr/src/httpd-2.4.34/src/lib/apr-util/

    #cd httpd-2.4.34

    #./configure --prefix=/usr/local/apache --with-mpm=worker --with-apr --with-apr-util --enable-rewrite --enable-so

    #make&&make install

    安装完成后

    #echo “ServerName localhost:80”>>/usr/loacl/apach/conf/httpd.conf

    在客户端浏览器输入如下内容

     

    表示apache安装成功

    安装mysql5.5

    #wget http://down1.chinaunix.net/distfiles/mysql-5.5.20.tar.gz

    # tar –zxf mysql-5.5.20

    # yum install -y gcc c ncurses-devel cmake libaio bison gcc-c++  git  cmake  ncurses-devel ncurses -y

    #wget http://down1.chinaunix.net/distfiles/mysql-5.5.20.tar.gz

    tar –zxf mysql-5.5.20

    #yum install -y gcc c ncurses-devel cmake libaio bison gcc-c++  git  cmake  ncurses-devel ncurses -y

    #cmake  .  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql55/

    -DMYSQL_UNIX_ADDR=/tmp/mysql.sock

    -DMYSQL_DATADIR=/data/mysql

    -DSYSCONFDIR=/etc

    -DMYSQL_USER=mysql

    -DMYSQL_TCP_PORT=3306

    -DWITH_XTRADB_STORAGE_ENGINE=1

    -DWITH_INNOBASE_STORAGE_ENGINE=1

    -DWITH_PARTITION_STORAGE_ENGINE=1

    -DWITH_BLACKHOLE_STORAGE_ENGINE=1

    -DWITH_MYISAM_STORAGE_ENGINE=1

    -DWITH_READLINE=1

    -DENABLED_LOCAL_INFILE=1

    -DWITH_EXTRA_CHARSETS=1

    -DDEFAULT_CHARSET=utf8

    -DDEFAULT_COLLATION=utf8_general_ci

    -DEXTRA_CHARSETS=all

    -DWITH_BIG_TABLES=1

    -DWITH_DEBUG=0

    #make &&make install

    #cp /usr/local/mysql55/support/my-large.cnf /etc/my.cnf

    #cp /usr/loca;/mysql55/support/mysql.server /etc/init.d/mysqld

    #chkconfig --add mysqld

    #chkconfig --level 35 mysqld on

    #mkdir -p /data/mysql

    #useradd mysql

    #/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql55

    #ln -s /usr/local/mysql55/bin/* /usr/bin/

    #chown -R mysql /data/mysql/

    #service mysqld start

    测试

     

    安装php

    # wget http://mirrors.sohu.com/php/php-5.6.8.tar.bz2

    #tar -jxf php-5.6.8.tar.bz2

    #cd php-5.6.8

    #yum install libxml2 libxml2-devel -y

    #./configure --prefix=/usr/local/php5  --with-config-file-path=/usr/local/php/etc --with-mysql=mysqlnd   --with-mysqli=mysqlnd   --with-pdo-mysql=mysqlnd  --with-apxs2=/usr/local/apache/bin/apxs

    #make -j4&&make -j4 install

    整合apache和php

    #vim /usr/local/apache/conf/httpd.conf

    添加如下配置

    AddType application/x-httpd-php .php

    DirectoryIndex index.php index.html index.htm

    保存并退出

    #ehco “<?php phpinfo(); ?>”>>/usr/local/apache/htdocs/index.php

    安装php-redis链接驱动

    #wget  https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz

    #tar zxf 3.1.2.tar.gz

    #yum install m4 autoconf -y

    #cd phpredis

    #mkdir -p /usr/local/php/etc(注意一定是将php.ini放在预编译指定的配置文件中)

    #cp /usr/src/php-5.6.8/php.ini-development /usr/local/php/etc/php.ini

    #/usr/local/php5/bin/phpize

    #./configure  --with-php-config=/usr/local/php5/bin/php-config  --enable-redis

    #make&&make install

    #vim /usr/local/php/etc/php.ini

    加入如下行

     

    extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-zts-20131226"

    extension=redis.so

    重启apache测试

    安装redis主库和从库

    # wget  http://download.redis.io/releases/redis-4.0.9.tar.gz

    #tar zxf redis-4.0.9.tar.gz

    #cd redis-4.0.9

    #make PREFIX=/usr/local/redis MALLOC=libc install

    #cp redis.conf /usr/local/redis/

    #vim /etc/profile

    添加如下行

    export PATH=/usr/local/redis/bin:$PATH

    source /etc/profile使环境变量生效

    #vim /usr/redis/redis.conf

    将主库bind 127.0.0.1 改为 bind 0.0.0.0保存退出

     

    #vim /usr/redis/redis.conf

    从库在bind下添加一行

     启动redisz主库和从库,并加入

    nohup  /usr/local/redis/bin/redis-server  /usr/local/redis/redis.conf  &

    搭建discuz论坛

    在lamp上

    #wget  http://download.comsenz.com/DiscuzX/3.3/Discuz_X3.3_SC_UTF8.zip

    #yum install unzip -y

    #unzip unzip  Discuz_X3.3_SC_UTF8.zip -d  /usr/local/apache/htdocs/

    #cd upload

    #chmod -R 757 data/  uc_server/  config/  uc_client/

    浏览器上输入192.168.176.124/upload

    根据提示搭建论坛

     

    在lamp上配置redis的主的地址

    #vim config/config_global.php

     

    重启apache

    重新登录discuz

    切换至redis服务器

    #redis-cli

    127.0.0.1:6379>KEYS *

     看到如上内容

    Redis主库宕机测试

    Redis主库宕机后

     

    配置从库

    正常访问OK

  • 相关阅读:
    ros 使用笔记
    GLog 初始化说明
    面试-重写基础功能函数
    C++后台服务崩溃堆栈日志
    Linux下FTP服务器(vsftpd)配置:
    Windows 命令行解析工具(getopt)
    C/C++ 宏技巧
    Sublime Keymap 设置
    C++程序设计的技巧-Pimple的使用
    TCP的长连接与短连接
  • 原文地址:https://www.cnblogs.com/juanNote/p/9527237.html
Copyright © 2011-2022 走看看