使用nginx 负载MySQL

使用nginx 负载mysql

编译nginx时使用Nginx的ngx_http_upstream_module模块将请求代理到多个MySQL数据库服务器,从而实现MySQL负载均衡。
在配置文件中添加以下内容:

http{
    
    
   upstream mysql {
    
    
      # 在此处添加 MySQL 服务器 IP 地址和端口号
      server 192.168.1.110:3306;
      server 192.168.1.111:3306;
      server 192.168.1.112:3306;
   }
   server {
    
    
      listen 80;
      server_name example.com;
      location /mysql {
    
    
         proxy_pass http://mysql;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
   }
}

我们创建了一个名为“mysql”的upstream,其中包括多个MySQL数据库服务器的IP地址和端口号。

然后,在server块中,我们设置了监听端口和服务器名,并配置了一个location块,该块将匹配以/mysql结尾的所有URL,并将其转发到定义的upstream中。

最后,我们还配置了代理传递相关的头信息,以便MySQL服务器能够正确识别客户端的来源。

猜你喜欢

转载自blog.csdn.net/weixin_46010834/article/details/130605949