zoukankan      html  css  js  c++  java
  • 本地如何连接虚拟机上的MySql

    今天在本地链接虚拟机上的MySql,然而链接失败了!甚是尴尬!

    首先想一想是什么原因导致链接失败;

    基础环境:在Linux上安装mysql

    1、检查虚拟机IP在本地是否可以ping 通过

      虚拟机IP:192.168.217.129

      

      本地执行一下,没有问题

      

    2、检查虚拟机Mysql的端口是否对外开放(这个必须要开放)

           比如我们能用xshell等远程工具连接虚拟机上的linux,是因为开放了22端口

      查看mysql的端口,在mysql命令行模式下执行以下命令就可以查看,查到的结果是3306

      

          查看虚拟机的3306端口是否开放

      cmd下执行telnet 192.168.217.129 3306

      无法执行,别方,这是因为Windows telnet默认是关闭的

      

      重新打开cmd窗口执行命令,结果是无法连接,这是因为虚拟机上的3306并没有对外开放,可以用22的试下效果就知道了

     3、开通虚拟机的3306端口

      查看虚拟机防火墙的状态  

    service iptables status
    

      可以看到目前只有22端口对外开放

      编辑防火墙文件打开3306端口

    vim /etc/sysconfig/iptables
    

      模仿22端口开放命令添加如图所示的一行即表示对外开放3306端口

      重启防火墙

    service iptables restart
    

      可以看到3306已经开放

    4、远程连接虚拟机数据库访问

      端口都开启了,但还是连不上,看提示说明至少已经关联到mysql,不允许是因为权限不够

      原因:一般mysql是不允许除了本机用户以外的用户进行访问的,所以需要给特定ip的用户开放权限,通过这个用户去访问连接

      创建用户并附有所有权限

        

    create user 'cici'@'%' identified by '123123';
    grant all on *.* to 'cici'@'%';
    flush privileges;
    

      重新使用cici链接数据库,成功了!!

      

      

      

  • 相关阅读:
    实现连续测试,要做的事情【译】
    Go语言HTTPServer开发的六种实现
    JSON必知必会【PDF+视频教程】
    给JSONObject添加自定义遍历方法
    利用守护线程隐式关闭线程池
    从错误中学习
    Groovy动态添加方法和属性及Spock单测
    持续测试、持续集成、持续交付、持续部署和DevOps
    有关OAuth 2.0简化模式中步骤D-F的解释
    Spring笔记(五):bean的自动装配
  • 原文地址:https://www.cnblogs.com/dump/p/9238543.html
Copyright © 2011-2022 走看看