mysql 长连接(tcp协议)模拟负载均衡

1.存在member,member的port与mysql服务port一致为3306

2.vip绑定浮动ip

3.开启mysql服务:


#service mysqld start(centos6.5) #systemctl start mysqld (centos7)

4.关闭云主机防火墙:


#service iptables stop(centos6.5) #systemctl stop firewalld(centos7)

5.允许mysql服务远程访问,并新建一个数据库


#GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; #create database test

6.远程访问mysql


#mysql -u<远程登陆的用户> -p -h<ip> -P<port>

Mysql实现负载均衡:

两台云主机上安装mysql服务,云主机ip分别为:server1:192.168.5.11、server2:192.168.5.12 vip浮动ip:25.0.0.165

分别创建不同的数据库:

Server1:

>mysql -uroot -p
>create database member1;

Server2:

>mysql -uroot -p
>create database member2;

客户端测试一下数据库服务:

Mysql -u root -p 12345 -h 192.168.5.11 -e “show databases;”

Mysql -u root -p 12345 -h 192.168.5.12 -e “show databases;”

修改mysql配置文件:

vi /etc/my.cnf 修改监听端口

查看haproxy配置文件中是否更新配置

Vim /var/lib/neutron/lbaas/<pool-id>/conf

使用脚本持续访问mysql

create_connections.sh
#!/usr/bin/expect
#配置登陆数据库的端口
set vipport 80
#配置登陆数据库的ip地址
set vipip 25.0.4.194
#配置数据库用户名
set username admin
#配置数据库登陆密码
set password admin spawn mysql -h $vipip -u $username -P $vipport -p
#spawn ssh -p $port oracle@$oracleip
expect "Enter password:"
send "$password\r"
expect "mysql> "
#send "spool content.txt\r"
send "show databases;\r"
expect "mysql> "
send "select sleep(600);\r"
expect "mysql> "
send "show databases;\r"
#send "spool off\r"
#send "quit\r"
expect eof
loop.sh
#!/bin/bash i=0 main ()
{
for i in {1..1000}
do
{
i=i+1
expect -f create_connections.sh
}&
done
}
main

使用&实现shell脚本的并行

如果负载均衡不生效,在pool所在节点监听一下member是否正常:

ipnetns exec qlbaas-<vip-port-id> curl http://<member-ip>

ipnetns相关命令:

查看namespace:ip netns list

监听服务:ip netns exec qlbaas- telnet

遇到的问题及解决方法:

1.远程访问返回2013错误,可以依照网上说的方式先试着解决一下,如果仍然无法实现,需要检查负载均衡的协议是否为tcp协议

使用mysql服务实现负载均衡的更多相关文章

  1. 搭建MySQL高可用负载均衡集群

    1.简介 使用MySQL时随着时间的增长,用户量以及数据量的逐渐增加,访问量更是剧增,最终将会使MySQL达到某个瓶颈,那么MySQL的性能将会大大降低.这一结果也不利于软件的推广. 那么如何跨过这个 ...

  2. 搭建MySQL高可用负载均衡集群(转)

    阅读目录 1.简介 2.基本环境 3.配置MySQL主主复制 4.中间件简述 4.1.Haproxy介绍 4.2.keepalived介绍 5.中间件的安装与配置(haproxy.keepalived ...

  3. [转]搭建MySQL高可用负载均衡集群

    转自:http://www.cnblogs.com/phpstudy2015-6/p/6706465.html 阅读目录 1.简介 2.基本环境 3.配置MySQL主主复制 4.中间件简述 4.1.H ...

  4. 【Nginx】如何使用Nginx实现MySQL数据库的负载均衡?看完我懂了!!

    写在前面 Nginx能够实现HTTP.HTTPS协议的负载均衡,也能够实现TCP协议的负载均衡.那么,问题来了,可不可以通过Nginx实现MySQL数据库的负载均衡呢?答案是:可以.接下来,就让我们一 ...

  5. 关于Ocelot和Consul 实现GateWay(网关) 服务注册 负载均衡等方面

    Ocelot   路由  请求聚合  服务发现 认证  鉴权 限流熔断 内置负载均衡器 Consul   自动服务发现    健康检查 通过Ocelot搭建API网关   服务注册   负载均衡 1. ...

  6. .net core grpc consul 实现服务注册 服务发现 负载均衡(二)

    在上一篇 .net core grpc 实现通信(一) 中,我们实现的grpc通信在.net core中的可行性,但要在微服务中真正使用,还缺少 服务注册,服务发现及负载均衡等,本篇我们将在 .net ...

  7. 搭建服务与负载均衡的客户端-Spring Cloud学习第二天(非原创)

    文章大纲 一.Eureka中的核心概念二.Spring RestTemplate详解三.代码实战服务与负载均衡的客户端四.项目源码与参考资料下载五.参考文章 一.Eureka中的核心概念 1. 服务提 ...

  8. 一起来学Spring Cloud | 第三章:服务消费者 (负载均衡Ribbon)

    一.负载均衡的简介: 负载均衡是高可用架构的一个关键组件,主要用来提高性能和可用性,通过负载均衡将流量分发到多个服务器,多服务器能够消除单个服务器的故障,减轻单个服务器的访问压力. 1.服务端负载均衡 ...

  9. .Net Core Grpc Consul 实现服务注册 服务发现 负载均衡

    本文是基于..net core grpc consul 实现服务注册 服务发现 负载均衡(二)的,很多内容是直接复制过来的,..net core grpc consul 实现服务注册 服务发现 负载均 ...

随机推荐

  1. python pylab.plot() 方法使用

    Python 中用pylab模块, pylab.plot() 函数,绘制折线统计图 import pylab as pl x = [, , , ] y = [, , , ] ''' plot参数说明: ...

  2. 【代码学习】PYTHON 进程

    一.进程和程序的区别 编写完毕的代码,在没有运行的时候称之为程序 正在运行的代码,称之为进程 进程除了包含的代码意外,还需要运行的环境等 二.fork import os import time # ...

  3. qq音乐解析API

    文档:www.tjit.net 开放的接口:api88.net 个人代码: input2(event){ //将字符转化为encodeURL编码,才能进行正确请求,这是这个接口要求的 //js自带的转 ...

  4. mysql 多次分组查询 数据最大的一行

    SELECT B, D, Max(E)FROM `总表`WHERE B = '张士建'GROUP BY B, D 通过查询创建工具 编写查询语句

  5. windows ,linux永久和临时修改pip源

    临时修改(建议)pypi镜像源方法:如果有untrust 报错,可使用https开头的网站,或加上--trusted 例如: pip install pywin32 -i http://mirrors ...

  6. Composer包收录

    doctrine/annotations #注解 nesbot/carbon #日期和时间处理 gregwar/captcha symfony/console nikic/fast-route #路由 ...

  7. ➡️➡️➡️IELTS reading by Simon on Bili

    高分必备 雅思考官Simon手把手教你做阅读 p1 https://www.bilibili.com/video/av40131278?p=2 p2 https://www.bilibili.com/ ...

  8. java面试(二)

    1.java常见的容器 几乎所有的容器都继承了Collecton接口,包括List.Set.Queue.Map List包括Vector.ArrayList.LinkedList,      Set包 ...

  9. 转载和补充:Oracle中的一些特殊字符

    oracle通配符,运算符的使用 用于where比较条件的有: 等于:=.<.<=.>.>=.<> 包含:in.not in exists.not exists 范 ...

  10. Pipenv & 虚拟环境

    本教程将引导您完成安装和使用 Python 包. 它将向您展示如何安装和使用必要的工具,并就最佳做法做出强烈推荐.请记住, Python 用于许多不同的目的.准确地说,您希望如何管理依赖项可能会根据 ...