【服务器部署Redis、Mysql等】-解决方式

  在服务器上部署Redis集群、mysql等服务时,没有经验的程序员们经常会按照自己在本地虚拟机里的配置一样,但总会代码报错-连接超时,

百般无解,一样的配置,为什么部署在服务器上就不行了呢?

  首先,本地和线上有几点区别:

    1. IP地址

       本地虚拟机IP是由此电脑的局域网虚拟划分的,在局域网内是可以直接访问的

       而服务器不同,他是一个真实的IP地址(公网ip)里面的一个Linux虚拟机,

       这个虚拟机也是由服务器自己的局域网划分的一个虚拟IP(私网)

    2.防火墙

       本地虚拟机中,你可以关闭防火墙来达到连接,或者开放对应端口这两种方式

       服务器上则需要多加一项,在公网开放对应端口以后,在Linux上也开放端口才行

       附上命令和截图:

        

       centos6:

          开放端口80,22,3306,8080命令

              /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
              /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
              /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
              /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

  

 

          保存之前输入已开放端口号语句的命令

              
              /etc/rc.d/init.d/iptables save

  

          查看打开端口命令

              /etc/init.d/iptables status  

  

       centos7:

          开启端口

              firewall-cmd --zone=public --add-port=80/tcp --permanent

  

          查询端口号80 是否开启:

              firewall-cmd --query-port=80/tcp

  

          重启防火墙:

              firewall-cmd --reload

  

          查询有哪些端口是开启的:

              firewall-cmd --list-port

  

                    
原文地址:https://www.cnblogs.com/xiaoluohao/p/12502485.html