LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 999|回复: 10

问一个java的问题

[复制链接]
发表于 2004-2-15 08:48:27 | 显示全部楼层 |阅读模式
就是我连接mysql数据库时出现"Server configuration denies access to data source" 这到底是java的问题还是mysql数据库本身的安全定义?如果是mysql安全定义怎么把它的安全级别降下来呢?下面是源码
import java.sql.*;
public class Query
{
        private String mysqlDriver = "org.gjt.mm.mysql.Driver";
        private String mysqlUrl = "jdbc:mysql://127.0.0.1/footstep";
        private String user = "root";
        private String password = "";
        private String sql = "select * from login";
        String name;


        void display()
        {
                try
                {
                        Class.forName(mysqlDriver).newInstance();
                        Connection con = DriverManager.getConnection(mysqlUrl,user,password);
                        Statement stmt = con.createStatement();
                        ResultSet rs = stmt.executeQuery(sql);
                        while(rs.next())
                        {
                                name = rs.getString("id");
                                System.out.println(name);
                        }
                        con.close();
                }
                catch(SQLException es)
                {
                        System.err.println("数据库查询错误"+es.getMessage());
                }
                catch(ClassNotFoundException ec)
                {
                        System.err.println("数据库意外错误"+ec.getMessage());
                }
                catch(InstantiationException ei)
                {
                        System.err.println("初始化错误"+ei.getMessage());
                }
                catch(IllegalAccessException ee)
                {
                        System.err.println("入口错误"+ee.getMessage());
                }
        }
        public static void main(String args[])
        {
                Query query = new Query();
                query.display();
        }
}
发表于 2004-2-17 13:02:58 | 显示全部楼层
[PHP]String user = "root";[/PHP]

密码。。用户名对吗
发表于 2004-2-17 13:09:32 | 显示全部楼层
你的用户名于数据库没有关联,应该新建一个锁定于数据库的用户
发表于 2004-2-17 14:17:28 | 显示全部楼层
应该是数据库的问题
建议添加一个新的用户专门用于访问你需要的数据库

和使用 linux 的原则一样:如非必须,不要用 root

另外,使用空密码,通常是在你刚刚安装好 mysql 的时候
有的时候会产生拒绝连接的信息。
最好使用 mysqlcc 配置一下你的服务器。

另外,你设置了那么多异常捕获,好像过分了点,哈。
 楼主| 发表于 2004-2-17 14:27:33 | 显示全部楼层

re

我就是在测试吗!原来是可以的,不知道怎么的就不行了。还有我用的是fedora
发表于 2004-2-17 18:27:27 | 显示全部楼层
private String mysqlUrl = "jdbc:mysql://127.0.0.1/footstep";

这个是???没问题吧
 楼主| 发表于 2004-2-17 21:01:41 | 显示全部楼层

re

能告诉我怎么添加用户吗?或者mysql怎么进行管理的!Thanks
发表于 2004-2-18 09:01:11 | 显示全部楼层
mysql 管理有很多方法
一个是通过 mysql 客户端
也就是运行 mysql 命令
进入 mysql> 提示符
具体操作指令可以看 mysql manual

另外就是使用工具
比较流行的是 phpadmin,需要 php 环境。
这个工具还是很好用的

还有就是 mysql AB 自己的 mysqlcc
是个类似 mssql server 企业管理器一样的图形界面
能够完成一些基本的功能。
发表于 2004-2-18 09:13:04 | 显示全部楼层
我直接把 mysql 在线文档中关于用户管理部分的网址给你:
http://mysql.linuxforum.net/doc/en/User_Account_Management.html

JDBC URL 的写法:
  1. jdbc:mysql://[host][,failoverhost...][:Port]/[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...
复制代码


程序实例化:
  1. Class.forName("com.mysql.jdbc.Driver").newInstance();
复制代码
发表于 2004-2-18 10:12:06 | 显示全部楼层

回复: re

最初由 menglianjing 发表
我就是在测试吗!原来是可以的,不知道怎么的就不行了。还有我用的是fedora

只有一个数据库时用root是没有问题的,当mysql里有多于两个数据库时就要锁定用户了
另外,你设置了那么多异常捕获,好像过分了点,哈。

对每个异常都进行捕获是一个很好的习惯嘛,这样对程序的调试有很大的帮助。
最差的习惯就是捕获了没处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表