美文网首页
linux xampp navicate 连接数据库 连接不上

linux xampp navicate 连接数据库 连接不上

作者: 一位先生_ | 来源:发表于2020-06-01 11:09 被阅读0次

    linux下mysql开启远程访问权限及防火墙开放3306端口

    默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限

    主流的有两种方法,改表法和授权法。

    解决这类问题方法如下,报10038是服务器防火墙没有开启3306端口

    1.打开防火墙配置文件

    vim /etc/sysconfig/iptables

    添加这样一行(其实你直接把上面80端口那行复制粘贴端口改成3306就可以了,这样能保证不会错):

    -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

    注意:如果文件中已有该代码则不需要二次添加

    2.然后重启防火墙

    service iptables restart

    这主要是解决Navicat连接mysql出现2003-10038,链接不上的问题

    如果还是不好你就要更改mysq里面的权限了

    步骤如下:

    1)、登陆mysql

    mysql -u root -p

    2)、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。

    更改数据库用户权限grant all privileges on portal.* to root@zq27 identified by 'root';

    mysql> use mysql;

    mysql> grant all privileges on portal.* to root@zq27 identified by 'root';

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

    mysql> select host, user from user;

    mysql> flush privileges;

    1. 查看3306端口是否开放
      netstat -ntlp


      image.png

    结果 端口是开放着的

    1. 然后如果还发现连接不上 可以改变下连接方式 使用ssh连接

    1).设置好常规连接


    image.png

    账户和密码 是你数据库的账户密码;

    2). 设置好ssh连接


    image.png

    这里的账号密码是你的 连接服务器的账号和密码;

    设置完毕,点击连接测试 ok 完美解决!

    相关文章

      网友评论

          本文标题:linux xampp navicate 连接数据库 连接不上

          本文链接:https://www.haomeiwen.com/subject/dmyjzhtx.html