mysql主从复制读取分离与LNMP的yum安装过程结合

项目:配置LNMP和mysql读取分离和主从分离yum安装LAMP
在这里插入图片描述
实验环境:
centos01mysql backup和centos02mysql backup和centos03位mysql master和LNMP 和centos04为amoeba和 win702为客户端验证使用

  1. 安装三台mysql服务器和master上安装ntp同步时间使用
    同步时间主MySQL服务器上设置开机自动启动ntp
    [root@centos02 ~]# 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服务器同步主mysql的时间使用ntpdate 192.168.100.30
    在这里插入图片描述
    在这里插入图片描述
    安装mysql主和从1从2

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

    [root@centos02 ~]# vim /etc/my.cnf
    49 log-bin=mysql-bin 启二进制日志
    57 server-id = 10 sql服务器的ID为10
    58 log-slave-update = ture 开启日志复制功能 允许从服务器复制主
    在这里插入图片描述
    重启服务
    在这里插入图片描述
    从1
    [root@centos01 ~]# 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复制日志
    在这里插入图片描述
    重启服务
    在这里插入图片描述
    从2
    [root@centos02 ~]# 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复制日志
    在这里插入图片描述
    重启服务
    在这里插入图片描述
    在主msyql服务器给从服务器授权
    grant replication slave on . to ‘slave’@‘192.168.100.%’ identified by ‘pwd@123’;
    在这里插入图片描述
    查看主服务的状态
    在这里插入图片描述
    登录从服务器设置数据同步
    change master to master_host=‘192.168.100.30’,master_user=‘slave’,master_password=‘pwd@123’,master_log_file=‘mysql-bin.000004’,master_log_pos=263;
    在这里插入图片描述
    在这里插入图片描述
    启动节点
    在这里插入图片描述
    在这里插入图片描述
    查看节点状态
    在这里插入图片描述
    在这里插入图片描述
    验证主从复制
    在这里插入图片描述
    在这里插入图片描述
  3. 配置读写分离
    环境增加amoeba centos04
    Centos05为客户端
    配置hosts文件指定名字
    [root@centos01 ~]# vim /etc/hosts
    192.168.100.30 master
    192.168.100.10 slave01
    192.168.100.20 slave02
    在这里插入图片描述
    Scp复制到其他两个服务器上
    在这里插入图片描述
    在这里插入图片描述
    从主中复制jdk和amoeba到centos04amoeba服务器中
    在这里插入图片描述
    在这里插入图片描述
    然后在centos04上进行解压配置安装jdk和amoeba服务也安装mysql
    解压jdk中间输入yes
    [root@centos04 src]# ./jdk-6u14-linux-x64.bin
    在这里插入图片描述
    移动安装目录
    [root@centos04 src]# mv jdk1.6.0_14/ /usr/local/jdk
    在这里插入图片描述
    创建amoeba安装目录
    [root@centos04 ~]# mkdir /usr/local/amoeba
    在这里插入图片描述
    授权
    [root@centos04 ~]# chmod -R 755 /usr/local/amoeba
    在这里插入图片描述
    解压到安装目录
    [root@centos04 ~]# tar zxvf /usr/src/amoeba-mysql-binary-2.2.0.tar.gz -C usr/local/amoeba
    在这里插入图片描述
    设置环境变量
    [root@centos04 ~]# 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
    在这里插入图片描述
    更新变量
    [root@centos04 ~]# source /etc/profile.d/jdk.sh
    在这里插入图片描述
    检查jdk版本
    [root@centos04 ~]# java -version
    在这里插入图片描述
  4. 配置amoeba服务
    设置amoeba访问mysql账户(在主服务器上创建bob)
    mysql> grant all on . to ‘bob’@'192.168.100.%'identified by ‘pwd@123’;
    在这里插入图片描述
    修改amoeba登录的用户和密码
    [root@centos04 ~]# vim /usr/local/amoeba/conf/amoeba.xml
    在这里插入图片描述
    30 amoeba 设置账户
    31 pwd@123 设置密码
    在这里插入图片描述
    114 master 默认池为master
    115 master 指定被写的服务器
    116 slaves 指定被读的服务器 slaves有多个从服务器
    在这里插入图片描述
    修改amoeba服务器配置文件添加服务器
    [root@centos04 ~]# vim /usr/local/amoeba/conf/dbServers.xml
    在这里插入图片描述
    映射账户密码bob pwd@123
    26 bob 映射账户主服务器数据库中的bob
    27 pwd@123 映射密码
    在这里插入图片描述
    在池中添加服务器
    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
    在这里插入图片描述
    设置组
    58 添加组slaves
    59
    60 1
    61 slave01,slave02 包含的服务器salve01和slave02
    62
    63
    在这里插入图片描述
    启动服务并监听端口号
    [root@centos04 ~]# /usr/local/amoeba/bin/amoeba start&
    在这里插入图片描述
    配置客户端验证主从复制和读取分离
    [root@centos05 ~]# yum -y install mariadb
    在这里插入图片描述
    登录amoeba服务器
    [root@centos05 ~]# mysql -uamoeba -ppwd@123 -h 192.168.100.40 -P8066
    在这里插入图片描述
    创建测试表
    在这里插入图片描述
    查看从服务器是否同步
    在这里插入图片描述
    停止从服务器客户端添加表数据验证是否是读写分离
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    客户端创建tom并查看验证
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    开启从服务在验证读写分离
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  5. 配置LNMP
    L:linux系统
    A:apache
    M:mysql
    P:php
    yum安装LNMP网络源
    [root@centos01 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
    在这里插入图片描述
    安装epel-release
    [root@centos01 yum.repos.d]# yum -y install epel-release
    在这里插入图片描述
    安装nginx
    [root@centos01 yum.repos.d]# yum -y install nginx
    在这里插入图片描述
    启动服务设置开机自动启动
    [root@centos01 yum.repos.d]# systemctl start nginx
    [root@centos01 yum.repos.d]# systemctl enable nginx
    在这里插入图片描述
    访问验证
    [root@centos01 yum.repos.d]# curl http://192.168.100.10
    在这里插入图片描述
    默认网站位置
    [root@centos01 yum.repos.d]# cd /usr/share/nginx/html/
    在这里插入图片描述
    修改网站主页为www.benet.com
    在这里插入图片描述
  6. 安装php
    [root@centos01 ~]# yum install -y php php-devel php-fpm php-mysql php-common php-devel php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel
    在这里插入图片描述
    修改nginx主配置文件
    43 index index.html index.php;
    location ~ .php$ {
    root /usr/share/nginx/html/;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    index index.html index.php;
    include fastcgi.conf; 调用php-fpm进程
    }
    在这里插入图片描述
    启动php-fpm并监听端口号9000
    [root@centos01 ~]# systemctl start php-fpm
    [root@centos01 ~]# netstat -anptu | grep 9000
    在这里插入图片描述
    创建/var/www/benetcom目录
    [root@centos01 ~]# mkdir -p /var/www/benetcom/
    在这里插入图片描述
    修改php-fpm配置文件
    在这里插入图片描述
    在这里插入图片描述
    创建测试页
    [root@centos01 www]# vim /var/www/benetcom/index.php
<?php phpinfo(); ?>

在这里插入图片描述
验证
在这里插入图片描述
5. 验证通过部署服务
上传需要上线的服务
在这里插入图片描述
解压
在这里插入图片描述
找到服务目录
在这里插入图片描述
上线服务
在这里插入图片描述
在这里插入图片描述
修改目录权限和所有者
[root@centos01 html]# chmod -R 755 /usr/share/nginx/html/
[root@centos01 html]# chown -R nginx:nginx /usr/share/nginx/html/
在这里插入图片描述
在这里插入图片描述
进入数据库中创建论坛数据库
MariaDB [(none)]> create database bbs;
在这里插入图片描述
授权bbs账户访问bbs数据库
MariaDB [(none)]> grant all on bbs.* to ‘bbs’@‘localhost’ identified by ‘pwd@123’;
在这里插入图片描述
验证
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

删除index.html
在这里插入图片描述
访问验证
在这里插入图片描述

在从服务器上验证主从复制
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值