记录抒写 - Tcp转发
type: channel
link: https://wojc.cn/tag/Tcp%E8%BD%AC%E5%8F%91/
items: Mysql5.7基于GTID部署数据库主主模式，并配置nginx负载均衡转发访问
items: Nginx反向代理tcp请求

Mysql5.7基于GTID部署数据库主主模式，并配置nginx负载均衡转发访问
type: item
date: 2021-05-12T19:09:00+08:00
description: centos7系统下 mysql5.7使用gtid复制，搭建主主模式（互指为主从）,也就是双主，同时读写 服务器2台：第一台192.168.16.200 (主从) | 第二台192.168.16.201 (主从) mysql版本：mysql-5.7.34-linux-glibc2.12 准备：2台服务器上都安装好mysql 修改（第一台）mysql配置文件，然后重启下服务##第一台 ······· # gtid gtid-mode=on enforce-gtid-consistency=on log-slave-updates=1 server-id=200 auto_increment_offset = 1 auto_increment_increment = 2 relay_log_recovery=ON relay_log_info_repository=TABLE master_info_repository=TABLE sync_master_info=1 master_verify_checksum=1 slave_sql_verify_checksum=1 slave_parallel_workers=2 slave_parallel_type=logical_clock #binlog log-bin = master-bin log-slave-updates=1 binlog_format=Row log_bin_trust_function_creators=1 # 不同步的数据库 binlog-ignore-db=mysql,sys,performance_schema,information_schema # 不复制的数据库 replicate_wild_ignore_table=mysql.% replicate_wild_ignore_table=sys.% replicate_wild_ignore_table=performance_schema.% replicate_wild_ignore_table=information_schema.% ······· 修改（第二台）mysql配置文件,然后重启下服务##第二台 ······· # gtid gtid-mode=on enforce-gtid-consistency=on log-slave-updates=1 server-id=201 auto_increment_offset = 2 auto_increment_increment = 2 relay_log_recovery=ON relay_log_info_repository=TABLE master_info_repository=TABLE sync_master_info=1 master_verify_checksum=1 slave_sql_verify_checksum=1 slave_parallel_workers=2 slave_parallel_type=logical_clock #binlog log-bin = master-bin log-slave-updates=1 binlog_format=Row log_bin_trust_function_creators=1 # 不同步的数据库 binlog-ignore-db=mysql,sys,performance_schema,information_schema # 不复制的数据库 replicate_wild_ignore_table=mysql.% replicate_wild_ignore_table=sys.% replicate_wild_ignore_table=performance_schema.% replicate_wild_ignore_table=information_schema.% .% ·······登录2台mysql，创建用于同步的用户##第一台 mysql> grant replication slave on *.* to 'master'@'%' identified by "1q2w3e4r"; ##第二台 mysql> grant replication slave on *.* to 'master'@'%' identified by "1q2w3e4r";登录2台mysql，分别配置同步用户连接到对方mysql ##第一台 mysql> stop slave; mysql> change master to master_host='192.168.16.201' ,master_user='master',master_passwor…

Nginx反向代理tcp请求
type: item
date: 2020-12-15T11:29:00+08:00
description: 需要访问的服务没有一个合适的访问地址(例如云服务没有公网地址的)，就可以使用nginx的tcp反向代理来实现访问 前提：nginx需启用ngx_stream_core_module模块，在编译时加上此参数 --with-stream 即代表启用 redis反向代理示例(修改nginx配置文件)： #stream 要写http模块之前 # so_keepalive=on 配置是否在监听的端口启用“TCP keepalive”机制 # proxy_connect_timeout 定义用于与代理服务器建立连接的超时。请注意，此超时通常不能超过75秒 # max_fails=2 fail_timeout=20s; 连接失败2次，10秒内不再次尝试此连接 ······ events { worker_connections 65532; multi_accept on; use epoll; } #tcp反向代理 stream { # 定义负载均衡组 upstream redis{ hash $remote_addr consistent; server 10.12.12.12:6379 max_fails=2 fail_timeout=10s; } # 设置反向代理 server { listen 30010 so_keepalive=on; proxy_connect_timeout 60s; proxy_pass redis; } } http { ······ server { ······ } }