当前位置: 首页 > news >正文

网站的总体方案与功能设计瀑布式网站

网站的总体方案与功能设计,瀑布式网站,做网站的文章,网站模板 div一、MHA概述 1.1 什么是 MHA MHA#xff08;MasterHigh Availability#xff09;是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。 MHA 的出现就是解决MySQL 单点故障的问题。 MySQL故障切换过程中#xff0c;MHA能做到0-30秒内自动完成故障切换操作。 MHA能在…一、MHA概述 1.1 什么是 MHA MHAMasterHigh Availability是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。 MHA 的出现就是解决MySQL 单点故障的问题。 MySQL故障切换过程中MHA能做到0-30秒内自动完成故障切换操作。 MHA能在故障切换的过程中最大程度上保证数据的一致性以达到真正意义上的高可用。 1.2 MHA 的组成 1MHA Node数据节点 MHA Node 运行在每台 MySQL 服务器上。 2MHA Manager管理节点 MHA Manager 可以单独部署在一台独立的机器上管理多个 master-slave 集群也可以部署在一台 slave 节点上。MHA Manager 会定时探测集群中的 master 节点。当 master 出现故障时它可以自动将最新数据的 slave 提升为新的 master 然后将所有其他的 slave 重新指向新的 master。整个故障转移过程对应用程序完全透明。 1.3 MHA 的特点 自动故障切换过程中MHA试图从宕机的主服务器上保存二进制日志最大程度的保证数据不丢失。使用半同步复制可以大大降低数据丢失的风险如果只有一个slave已经收到了最新的二进制日志MHA可以将最新的二进制日志应用于其他所有的slave服务器上因此可以保证所有节点的数据一致性。目前MHA支持一主多从架构最少三台服务器即一主两从。 二、MySQL MHA搭建准备  节点服务器    系统    主机名    IP地址    安装工具及服务 MHA manager 服务器    CentOS7.4(64 位)    manager    192.168.52.100    MHA node 和 manager 组件 Master 服务器    CentOS7.4(64 位)    mysql1    192.168.52.140    MHA node 组件 Slave1 服务器    CentOS7.4(64 位)    mysql2    192.168.52.130    MHA node 组件 Slave2 服务器    CentOS7.4(64 位)    mysql3    192.168.52.120    MHA node 组件   三、搭建 MySQL MHA  1、 配置主从复制 1.1所有服务器关闭防火墙与selinux systemctl stop firewalld systemctl disable firewalld setenforce 0 1.2 Master、Slave1、Slave2 节点安装mysql5.7  1.3修改 Master、Slave1、Slave2 节点的主机名 #Master 节点 hostnamectl set-hostname mysql1 su #Slave1节点 hostnamectl set-hostname mysql2 su ​ #Slave2节点 hostnamectl set-hostname mysql3 su 1.4在Master、Slave1、Slave2添加主机映射关系 #三台添加同样的配置 vim /etc/hosts 192.168.92.7 mysql1 192.168.92.6 mysql2 192.168.92.9 mysql3 网络连通性测试  1.5修改 Master、Slave1、Slave2 节点的 Mysql主配置文件/etc/my.cnf Master节点开启二进制日志。 Slave1、Slave2 节点开启二进制日志和中继日志。 #Master 节点 vim /etc/my.cnf [mysqld] server-id 1 log_bin master-bin #开启二进制日志 log-slave-updates true #允许slave从master复制数据时可以写入到自己的二进制日志 -------------------------------------------- ​ systemctl restart mysqld #重启mysql​ #Slave1节点 vim /etc/my.cnf [mysqld] server-id 2 #三台服务器的 server-id 不能相同 log_bin master-bin #开启中继日志 relay-log relay-log-bin relay-log-index slave-relay-bin.index ----------------------------------------------------- ​ systemctl restart mysqld​ #Slave2节点 vim /etc/my.cnf [mysqld] server-id 3 #三台服务器的 server-id 不能相同 log_bin master-bin #开启中继日志 relay-log relay-log-bin #添加定义中继日志文件位置与名称一般与二进制文件在同一目录 relay-log-index slave-relay-bin.index ------------------------------------------------ systemctl restart mysqld #重启mysql 1.6在 Master、Slave1、Slave2 节点上都创建两个软链接 ln -s /usr/local/mysql/bin/mysql /usr/sbin/ ln -s /usr/local/mysql/bin/mysqlbinlog /usr/sbin/ ​ ls /usr/sbin/mysql* #查看软链接 1.7登录数据库进行授权  所有数据库节点mysql主从同步的授权 grant replication slave on *.* to myslave192.168.92.% identified by 123123; #从服务器同步使用 所有数据库节点授权给manager服务器  #所有数据库节点进行manager授权 grant all privileges on *.* to my192.168.92.% identified by abc123; #为了防止因主机名导致的连接不上问题再次对登录地址进行授权​ grant all privileges on *.* to mymysql1 identified by abc123; grant all privileges on *.* to mymysql2 identified by abc123; grant all privileges on *.* to mymysql3 identified by abc123; flush privileges; #刷新权限 1.8配置主从同步  在 Master 节点查看二进制文件和同步点 #在 Master 节点查看二进制文件和同步点即偏移量 show master status; 在 Slave1、Slave2 节点执行同步操作 #在 Slave1、Slave2 节点执行同步操作 change master to master_host192.168.92.7, master_usermyslave, master_password123123, master_log_filemaster-bin.000001, master_log_pos1893; ------------------------------------------------ ​ start slave; #开启同步如有报错执行 reset slave; ------------------------------------ ​ #在 Slave1、Slave2 查看节点状态 show slave status\G #确保 IO 和 SQL 线程都是 Yes代表同步正常。Slave_IO_Running: YesSlave_SQL_Running: Yes 一般Slave_IO_Running:No的可能性 网络不通my.cnf配置有问题密码、file文件名、pos偏移量不对防火墙没有关闭 两个从库设置为只读模式 #两个从库必须设置为只读模式set global read_only1; 在Master主库插入数据  #在Master主库插入数据测试数据库同步## create database my; use my; create table city(id int); insert into city values (1); 从数据库中验证数据同步 #从数据库中验证是否同步成功 show databases; use my; show tables; select * from city; 2 、配置MHA  2.1安装MHA软件 所有服务器上都安装MHA依赖的环境首先安装 epel 源 对于每个操作系统版本不一样这里 CentOS7.4 必须选择 0.57 版本。在所有服务器上必须先安装 node 组件最后在 MHA-manager 节点上安装 manager 组件因为 manager组件 依赖 node 组件。 #安装epel源 yum install epel-release --nogpgcheck -y​ #安装 MHA依赖环境 yum install -y perl-DBD-MySQL \ perl-Config-Tiny \ perl-Log-Dispatch \ perl-Parallel-ForkManager \ perl-ExtUtils-CBuilder \ perl-ExtUtils-MakeMaker \ perl-CPAN 所有服务器上首先安装epel源  所有服务器安装MHA依赖的环境  安装 MHA 软件包必须先在所有服务器上安装 node 组件  在所有服务器上安装 node 组件 #将安装包上传到/opt/目录中解压安装node组件 cd /opt/ tar zxvf mha4mysql-node-0.57.tar.gz cd mha4mysql-node-0.57 perl Makefile.PL make make install 最后在 MHA manager 节点上安装 manager 组件 在 MHA manager 节点上安装 manager 组件##manager组件依赖node 组件 cd /opt/ tar zxvf mha4mysql-manager-0.57.tar.gz cd mha4mysql-manager-0.57 perl Makefile.PL make make install manager 组件安装后在/usr/local/bin 下面会生成几个工具主要包括以下几个 masterha_check_ssh #检查 MHA 的 SSH 配置状况 masterha_check_repl #检查 MySQL 复制状况 masterha_manger #启动 manager的脚本 masterha_check_status #检测当前 MHA 运行状态 masterha_master_monitor #检测 master 是否宕机 masterha_master_switch #控制故障转移自动或者手动 masterha_conf_host #添加或删除配置的 server 信息 masterha_stop #关闭manager node 组件安装后也会在/usr/local/bin/ 下面会生成几个脚本这些工具通常由 MHAManager 的脚本触发无需人为操作主要如下 save_binary_logs #保存和复制 master 的二进制日志 apply_diff_relay_logs #识别差异的中继日志事件并将其差异的事件应用于其他的slave filter_mysqlbinlog #去除不必要的 ROLLBACK 事件MHA 已不再使用这个工具 purge_relay_logs #清除中继日志不会阻塞 SQL 线程 2.2在所有服务器上配置无密码认证 在 manager 节点上配置到所有数据库节点的无密码认证 ssh-keygen -t rsa #一路按回车键生成密钥。-t rsa指定密钥的类型。 ssh-copy-id 192.168.92.7 #将公钥传给所有数据库节点形成免密码连接登录 ssh-copy-id 192.168.92.6 ssh-copy-id 192.168.92.9 在 manager 节点上配置到所有数据库节点的无密码认证 在 mysql1主节点服务器上配置到数据库节点 mysql2 和 mysql3 的无密码认证 ssh-keygen -t rsa #将公钥传给两个从节点形成免密码连接登录 ssh-copy-id 192.168.92.6 ssh-copy-id 192.168.92.9 在 mysql2即slave1 上配置到数据库节点 mysql1 和 mysql3 的无密码认证 ssh-keygen -t rsa ssh-copy-id 192.168.52.140 #master服务器 ssh-copy-id 192.168.52.120 #slave2服务器
http://www.pierceye.com/news/144567/

相关文章:

  • 学生成绩管理系统 网站建设站长之家源码下载
  • wap多用户网站微信端的网站开发python
  • 网络营销中自建网站厦门湖里区建设局网站
  • 公司建设网站的申请信用卡做盗版影视网站违法吗
  • 商务网站推广技巧包括什么移动网站开发教程
  • 北京网站备案域名温州制作网站公司
  • 门户网站建设工作流程做网站的背景图片
  • 用360云盘做网站简洁个人博客网站模板
  • 沈阳网站建设 网络服务wordpress媒体库图片不显示
  • 什么公司做网站出名大商创 多用户商城
  • 学校网站管理网站制作开发及优化是什么
  • wordpress获取所有标签页那些网站用不着做优化
  • 大有网网站现在较为常用的网站开发技术
  • 太原建站公司有哪些网站统计 wordpress
  • 网站轮播图怎么保存盛锡福网站
  • 做网站用百度浏览器网络营销案例分析试题
  • 当建设部门网站南宁网站的优化
  • wordpress访问文件夹成都黑帽seo
  • 上海市建设工程安全质量监督总站网站做配资网站
  • 网站管理建设的需求分析小程序开发教程免费
  • 石家庄网站建设电话重庆最便宜的网站建设
  • 人才网站建设策划书pc网站建设
  • 做网站用哪几个端口 比较好微信营销
  • 网站开发价格有专业做网站的吗网站公司
  • 西安网站建设全包做网站要多少
  • 如何建设传奇网站怎样做招嫖网站
  • 企石镇网站仿做连云港网站开发
  • php 网站做分享功能重庆建设工程信息网30系统
  • 西部数码创建php网站北京上云网站建设公司
  • 中标建设集团有限公司 网站游戏开发软件有哪些