MySQL 数据库允许外部IP访问

1首先通过密码登录
2.

use mysql;

select host,user from user;

update user set host='%' where user ='root';

FLUSH PRIVILEGES;

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

50bf505b-ad42-4eb8-8933-4ac3d9654e1e.png

之前也说过如何操作内容基本一致。最后条SQL就是在MySQL数据库中为root用户授予所有权限

方案2: https://www.172u.cn/news/671.html

HTTP 请求头方式(application/x-www-form-urlencoded 或者application/json;charset=utf-8)

设置请求头 封装axios的时候,给它全局设置 application/x-www-form-urlencoded 或者application/json;charset=utf-8

axios.defaults.baseURL = 'https://www.172u.cn';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

或者jQuery 中 $.ajax application/x-www-form-urlencoded 或者application/json;charset=utf-8

$.ajax({
   type: 'POST',
   contentType: 'application/json;charset=utf-8', // 发送的数据类型
   dataType: 'json',   // 接收的数据类型
   url: 'http://www.172u.cn',
   data: JSON.stringfy(formData),
   success: function (res) {
      console.log(res.data)
   }
}) 

nginx 分布式方案

配置这情况默认就会自动分流到这2台服务器上

   server 127.0.0.1:8080;
   server 127.0.0.2:8080;
    # 反向代理配置
    upstream server_list{
       # 这个是tomcat的访问路径
       server 127.0.0.1:8080;
       server 127.0.0.2:8080;
    }
    server {
            listen       80;
            server_name  localhost;
    
            location / {
                root   html;
                proxy_pass http://server_list;
                index  index.html index.htm;
            }
    
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }

2.weight 权重
权重越高分配的越多,下面就是5是最多的。

# 反向代理配置
upstream server_list{
server 127.0.0.1:8080 weight=5;
server 127.0.0.2:8080 weight=1;
}

3.ip每个请求按访问ip的hash值分配
这样就不会跳转到其他服务器会固定到一个服务器上

upstream backserver { 
        ip_hash; 
        server 127.0.0.1:8080; 
        server 127.0.0.2:8080; 
}

4.least_conn 按哪个服务器最少访问就去访问

upstream backserver { 
    least_conn;
        server 127.0.0.1:8080; 
        server 127.0.0.2:8080; 
}    

设置mysql wait_timeout过大影响如何

这样假如程序写的不够完善会出现大量sleep超过几千的进程,这样会引起性能变差,链接中断,
所以建议如下修改.
全局和会话变量一起改 具体多少变量自己决定。

show VARIABLES like '%timeout%' ;
set  wait_timeout=600;
set  interactive_timeout=600;
set global wait_timeout=600;
set global interactive_timeout=600;
show VARIABLES like '%timeout%' ;
show global VARIABLES like '%timeout%' ;