final String PARAMATER_STR = "user=dwdyoung&password=12345";
final String URL = "jdbc:mysql:http://192.168.1.102:3306/myfirst?" + PARAMATER_STR;如你看到,我上面写是JDBC,数据库连接字符串。192.168.1.102是我在局域网里的IP,上面这样写是连接不到的
我把192.168.1.102改成127.0.0.1就能连接,说明除了IP,其他的都没有问题。现在就是问,为什么用局域网的连接连不上。我的防火墙什么都关了,权限也给了,就是不知道还有什么地方没弄好。
mysql> select user,host from user;
+----------+-----------+
| user     | host      |
+----------+-----------+
| dwdyoung | %         |
| root     | %         |
| root     | 127.0.0.1 |
| root     | ::1       |
| root     | localhost |
+----------+-----------+大虾呼叫转移~!!!

解决方案 »

  1.   

    估计是 linux 系统,检查你的sock设置
      

  2.   

    windows系统的
    我用命令行直接用
    C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql -h192.168.1.103 -u dwdyoung -p 12345
    是可以连到数据库并且查到我自己建的那个表。
    但就是java写的那里进不去。一运行到conn = DriverManager.getConnection(CONN_STR);就会跳异常我也在mysql图形界面[SQL Workbench]里[new connection]了一个192.168.1.102的ip的连接,[test connection]是可以过的。连接也开启了。楼主持续追查原因中,感谢各位给予的帮助。
      

  3.   


    没用到ini,就这么一段,楼主在学习中。
    Class.forName(CLASS_STR);
    conn = DriverManager.getConnection(CONN_STR);
    state = conn.createStatement();
    state.execute("select * from UserTable");
    result = state.getResultSet();
    while(result.next())
    {
    System.out.println(result.getString(2));
    }
      

  4.   

    my.ini(cnf)内容是什么
    在安装目录中找找试试,登录后
    grant all privileges on *.* to root@'%' identified by "Passwd" 再重新启动MYSQL登录试试