在Ubuntu上实现MySQL负载均衡可以通过多种方法,以下是一些常见的方法和步骤:
sudo apt-get update
sudo apt-get install haproxy
sudo nano /etc/haproxy/haproxy.cfg
在配置文件中添加以下内容:
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
expose-fd listeners
stats timeout 30s
user haproxy
group haproxy
daemon
defaults
log global
mode tcp
option tcplog
timeout connect 5000
timeout client 50000
timeout server 50000
frontend mysql_loadbalancer
bind *:3306
default_backend mysql_servers
backend mysql_servers
balance roundrobin
server master 192.168.1.1:3306 check
server slave1 192.168.1.2:3306 check
server slave2 192.168.1.3:3306 check
sudo systemctl restart haproxy
sudo apt-get update
sudo apt-get install nginx-mod-stream
sudo nano /etc/nginx/nginx.conf
在配置文件中添加以下内容:
stream {
log_format basic '$remote_addr [$time_local] $protocol $status $bytes_sent $bytes_received $session_time';
access_log /var/log/nginx/stream-access.log basic buffer=32k;
include /etc/nginx/conf.d/*.stream;
}
upstream mysql_servers {
server 192.168.1.1:3306;
server 192.168.1.2:3306;
server 192.168.1.3:3306;
}
server {
listen 3306;
proxy_pass mysql_servers;
}
sudo systemctl restart nginx
wget https://github.com/actiontech/dble/releases/download/2.19.01.0/actiontech-dble-2.19.01.0.tar.gz
tar xvf actiontech-dble-2.19.01.0.tar.gz
cd dble-2.19.01.0
./install.sh
./start.sh
wget https://dev.mysql.com/get/mysql-router_0.23.17-1_all.deb
sudo dpkg -i mysql-router_0.23.17-1_all.deb
以上是在Ubuntu上实现MySQL负载均衡的几种常见方法,具体选择哪种方法可以根据实际需求和场景来决定。