mysql主从复制和读取分离与LNMP结合

项目:配置LAMP和mysql读取分离和主从分离
mysql主从复制和读取分离与LNMP结合
实验环境:
centos01mysql backup和centos02mysql backup和centos03位mysql master和LNMP 和centos04为amoeba和 win702为客户端验证使用

  1. 安装三台mysql服务器和master上安装ntp同步时间使用
    同步时间主MySQL服务器上设置开机自动启动ntp
    [[email protected] ~]# vim /etc/ntp.cong
    18 restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap 允许192.168.100.0段使用时间服务器
    19 server 127.127.1.0 时间服务器地址ntp监听地址
    20 fudge 127.127.1.0 stratum 8 设置时区
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    其他两个从mysql服务器同步主mysql的时间使用ntpdate 192.168.100.30
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    安装mysql主和从1从2

    安装依赖程序
    mysql主从复制和读取分离与LNMP结合
    切换linux.iso光盘tar解压mysql压缩包
    mysql主从复制和读取分离与LNMP结合
    进入安装位置
    mysql主从复制和读取分离与LNMP结合
    配置mysql
    mysql主从复制和读取分离与LNMP结合
    编译安装mysql
    mysql主从复制和读取分离与LNMP结合
    验证安装是否成功
    mysql主从复制和读取分离与LNMP结合
    生成主配置文件
    mysql主从复制和读取分离与LNMP结合
    生成服务控制文件
    mysql主从复制和读取分离与LNMP结合
    添加服务开机自动启动
    mysql主从复制和读取分离与LNMP结合
    优化MySQL命令
    mysql主从复制和读取分离与LNMP结合
    立即生效优化
    mysql主从复制和读取分离与LNMP结合
    创建mysql用户和组并加入mysql组中
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    设置目录所有者为mysql用户和组
    mysql主从复制和读取分离与LNMP结合
    初始化mysql服务
    mysql主从复制和读取分离与LNMP结合
    启动服务并设置开机自动启动
    mysql主从复制和读取分离与LNMP结合
    验证端口号3306
    mysql主从复制和读取分离与LNMP结合
    创建mysql账户并登录验证
    mysql主从复制和读取分离与LNMP结合
    从01和从02验证(操作和主03一样)
    01
    mysql主从复制和读取分离与LNMP结合
    02
    mysql主从复制和读取分离与LNMP结合
  2. 修改主配置文件实现主从复制

    [[email protected] ~]# vim /etc/my.cnf
    49 log-bin=mysql-bin 启二进制日志
    57 server-id = 10 sql服务器的ID为10
    58 log-slave-update = ture 开启日志复制功能 允许从服务器复制主
    mysql主从复制和读取分离与LNMP结合
    重启服务
    mysql主从复制和读取分离与LNMP结合
    从1
    [[email protected] ~]# vim /etc/my.cnf
    49 log-bin=mysql-bin 开启二进制功能
    57 server-id = 20 从MySQL服务器的ID为20
    58 relay-log=relay-log-bin 设置读取日志
    59 relay-log-index=slave-relay-bin.index 从master复制日志
    mysql主从复制和读取分离与LNMP结合
    重启服务
    mysql主从复制和读取分离与LNMP结合
    从2
    [[email protected] ~]# vim /etc/my.cnf
    49 log-bin=mysql-bin 开启二进制功能
    57 server-id = 30 从MySQL服务器的ID为30
    58 relay-log=relay-log-bin 设置读取日志
    59 relay-log-index=slave-relay-bin.index 从master复制日志
    mysql主从复制和读取分离与LNMP结合
    重启服务
    mysql主从复制和读取分离与LNMP结合
    在主msyql服务器给从服务器授权
    grant replication slave on . to ‘slave’@‘192.168.100.%’ identified by ‘[email protected]’;
    mysql主从复制和读取分离与LNMP结合
    查看主服务的状态
    mysql主从复制和读取分离与LNMP结合
    登录从服务器设置数据同步
    change master to master_host=‘192.168.100.30’,master_user=‘slave’,master_password=‘[email protected]’,master_log_file=‘mysql-bin.000004’,master_log_pos=263;
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    启动节点
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    查看节点状态
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    验证主从复制
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
  3. 配置读写分离
    环境增加amoeba centos04
    Centos05为客户端
    配置hosts文件指定名字
    [[email protected] ~]# vim /etc/hosts
    192.168.100.30 master
    192.168.100.10 slave01
    192.168.100.20 slave02
    mysql主从复制和读取分离与LNMP结合
    Scp复制到其他两个服务器上
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    从主中复制jdk和amoeba到centos04amoeba服务器中
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    然后在centos04上进行解压配置安装jdk和amoeba服务也安装mysql
    解压jdk中间输入yes
    [[email protected] src]# ./jdk-6u14-linux-x64.bin
    mysql主从复制和读取分离与LNMP结合
    移动安装目录
    [[email protected] src]# mv jdk1.6.0_14/ /usr/local/jdk
    mysql主从复制和读取分离与LNMP结合
    创建amoeba安装目录
    [[email protected] ~]# mkdir /usr/local/amoeba
    mysql主从复制和读取分离与LNMP结合
    授权
    [[email protected] ~]# chmod -R 755 /usr/local/amoeba
    mysql主从复制和读取分离与LNMP结合
    解压到安装目录
    [[email protected] ~]# tar zxvf /usr/src/amoeba-mysql-binary-2.2.0.tar.gz -C usr/local/amoeba
    mysql主从复制和读取分离与LNMP结合
    设置环境变量
    [[email protected] ~]# vim /etc/profile.d/jdk.sh
    export JAVA_HOME=/usr/local/jdk
    export CLASSPATH= C L A S S P A T H : CLASSPATH: CLASSPATH:JAVA_HOME/lib: J A V A H O M E / j r e / l i b e x p o r t P A T H = JAVA_HOME/jre/lib export PATH= JAVAHOME/jre/libexportPATH=JAVA_HOME/lib: J A V A H O M E / j r e / b i n / : JAVA_HOME/jre/bin/: JAVAHOME/jre/bin/:PATH: H O M E / b i n e x p o r t A M O E B A = / u s r / l o c a l / a m o e b a / e x p o r t P A T H = HOME/bin export AMOEBA=/usr/local/amoeba/ export PATH= HOME/binexportAMOEBA=/usr/local/amoeba/exportPATH=PATH:$AMOEBA/bin
    mysql主从复制和读取分离与LNMP结合
    更新变量
    [[email protected] ~]# source /etc/profile.d/jdk.sh
    mysql主从复制和读取分离与LNMP结合
    检查jdk版本
    [[email protected] ~]# java -version
    mysql主从复制和读取分离与LNMP结合
  4. 配置amoeba服务
    设置amoeba访问mysql账户(在主服务器上创建bob)
    mysql> grant all on . to ‘bob’@'192.168.100.%'identified by ‘[email protected]’;
    mysql主从复制和读取分离与LNMP结合
    修改amoeba登录的用户和密码
    [[email protected] ~]# vim /usr/local/amoeba/conf/amoeba.xml
    mysql主从复制和读取分离与LNMP结合
    30 amoeba 设置账户
    31 [email protected] 设置密码
    mysql主从复制和读取分离与LNMP结合
    114 master 默认池为master
    115 master 指定被写的服务器
    116 slaves 指定被读的服务器 slaves有多个从服务器
    mysql主从复制和读取分离与LNMP结合
    修改amoeba服务器配置文件添加服务器
    [[email protected] ~]# vim /usr/local/amoeba/conf/dbServers.xml
    mysql主从复制和读取分离与LNMP结合
    映射账户密码bob [email protected]
    26 bob 映射账户主服务器数据库中的bob
    27 [email protected] 映射密码
    mysql主从复制和读取分离与LNMP结合
    在池中添加服务器
    42 在池中添加master
    43
    44 192.168.100.10 IP地址
    45
    46
    47 添加第一台从服务器
    48
    49 192.168.100.20 IP地址
    50
    51
    52 添加第二台从服务器
    53
    54 192.168.100.30 IP地址
    55
    56
    mysql主从复制和读取分离与LNMP结合
    设置组
    58 添加组slaves
    59
    60 1
    61 slave01,slave02 包含的服务器salve01和slave02
    62
    63
    mysql主从复制和读取分离与LNMP结合
    启动服务并监听端口号
    [[email protected] ~]# /usr/local/amoeba/bin/amoeba start&
    mysql主从复制和读取分离与LNMP结合
    配置客户端验证主从复制和读取分离
    [[email protected] ~]# yum -y install mariadb
    mysql主从复制和读取分离与LNMP结合
    登录amoeba服务器
    [[email protected] ~]# mysql -uamoeba [email protected] -h 192.168.100.40 -P8066
    mysql主从复制和读取分离与LNMP结合
    创建测试表
    mysql主从复制和读取分离与LNMP结合
    查看从服务器是否同步
    mysql主从复制和读取分离与LNMP结合
    停止从服务器客户端添加表数据验证是否是读写分离
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    客户端创建tom并查看验证
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    开启从服务在验证读写分离
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
  5. 配置LNMP
    L:linux系统
    N:nginx
    M:mysql
    P:php
    安装nginx
    创建管理账户
    mysql主从复制和读取分离与LNMP结合
    安装依赖程序
    mysql主从复制和读取分离与LNMP结合
    切换光盘linux.iso解压nginx压缩包
    mysql主从复制和读取分离与LNMP结合
    配置
    mysql主从复制和读取分离与LNMP结合
    编译安装
    mysql主从复制和读取分离与LNMP结合
    优化nginx命令
    mysql主从复制和读取分离与LNMP结合
    启动nginx服务并检查配置文件 -t
    [[email protected] ~]# nginx
    [[email protected] ~]# nginx -t 检查
    [[email protected] ~]# killall -s HUP nginx 停止 -1=-s HUP
    [[email protected] ~]# killall -s QUIT nginx 重启 -3=-s QUIT
    mysql主从复制和读取分离与LNMP结合
    监听端口号 80
    mysql主从复制和读取分离与LNMP结合
    客户端访问验证
    mysql主从复制和读取分离与LNMP结合
    配置nginx和DNS实现域名访问www.benet.com
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    启动服务设置开机自动启动
    mysql主从复制和读取分离与LNMP结合
    配置DNS指定
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    验证
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
  6. 安装配置php发布phpmyadmin程序
    安装php依赖程序libxml2 libjpeg-devel libpng-devel
    mysql主从复制和读取分离与LNMP结合
    解压缩包
    mysql主从复制和读取分离与LNMP结合
    配置php
    mysql主从复制和读取分离与LNMP结合
    编译安装
    mysql主从复制和读取分离与LNMP结合
    查看安装是否成功
    mysql主从复制和读取分离与LNMP结合
    生成php主配置文件
    mysql主从复制和读取分离与LNMP结合
    优化命令
    mysql主从复制和读取分离与LNMP结合
    移动加速安装zendguardloader
    mysql主从复制和读取分离与LNMP结合
    配置php主配置文件
    mysql主从复制和读取分离与LNMP结合
    生成php-fpm主配置文件
    mysql主从复制和读取分离与LNMP结合
    修改php-fpm进程解析php
    [[email protected] ~]# vim /usr/local/php/etc/php-fpm.conf
    25 pid = run/php-fpm.pid 确认pid文件位置
    140 user = nginx 运行的用户
    142 group = nginx 运行的组
    152 listen = 192.168.100.10:9000 监听IP地址100.30
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    mysql主从复制和读取分离与LNMP结合
    启动php-fpm模块监听端口9000
    mysql主从复制和读取分离与LNMP结合
  7. 修改nginx支持LNMP平台部署论坛项目
    修改nginx主配置文件
    location ~ .php$ {
    root /var/www/benetcom/;
    fastcgi_pass 192.168.100.30:9000;
    fastcgi_index index.php;
    include fastcgi.conf; 调用php-fpm进程
    }
    mysql主从复制和读取分离与LNMP结合
    配置PHP测试文件
    [[email protected] ~]# vim /var/www/benetcom/index.php
<?php phpinfo(); ?>

mysql主从复制和读取分离与LNMP结合
验证
mysql主从复制和读取分离与LNMP结合
8. 部署项目
将mnt下的项目cp到/root目录下
mysql主从复制和读取分离与LNMP结合
解压到根目录下
mysql主从复制和读取分离与LNMP结合
删除测试页并上上线目录
删除
mysql主从复制和读取分离与LNMP结合
上线目录
mysql主从复制和读取分离与LNMP结合
修改目录权限
mysql主从复制和读取分离与LNMP结合mysql主从复制和读取分离与LNMP结合
进入数据库中创建论坛数据库
mysql主从复制和读取分离与LNMP结合
授权bbs账户访问bbs数据库
mysql主从复制和读取分离与LNMP结合
安装项目
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
mysql主从复制和读取分离与LNMP结合
验证从服务器是否复制项目保存数据的数据库bbs
mysql主从复制和读取分离与LNMP结合