Topic: 如何设置以便连接非本机的MySQL?

  Print this page

1.如何设置以便连接非本机的MySQL? Copy to clipboard
Posted by: jfml
Posted on: 2003-04-21 17:05

连接本机成功
但连接其他机器就失败
(ConnectionManager.java:76) - Caught an exception :
java.sql.SQLException: Invalid authorization specification: Access denied for user: 'root@localhost '(Using password: YES)
  at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:652)
  at com.mysql.jdbc.Connection.createNewIO(Connection.java:1532)
  at com.mysql.jdbc.Connection.<init>(Connection.java:486)
  at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:326)
  at java.sql.DriverManager.getConnection(DriverManager.java:512)
  at java.sql.DriverManager.getConnection(DriverManager.java:172)
  at com.utstar.osn.util.ConnectionManager.getConnection(ConnectionManager.java:68)
  at com.utstar.osn.client.logview.LogDataService.getRows(LogDataService.java:153)
  at com.utstar.osn.client.logview.LogDataService.main(LogDataService.java:34)

2.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: floater
Posted on: 2003-04-22 00:15

username is not right:

Access denied for user: 'root@localhost '(Using password: YES)

3.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-22 09:33

我就不明白为什么jdbc url 里指明的是别人的机器

为什么错误报出来还是

root@localhost呢?

4.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-22 09:39

我的JDBC URL 如下

jdbc:mysql://别人的机器名/omc_o?useUnicode=true&characterEncoding=gb2312

但是报错怎么还是

root@localhost我的机器名阿?

是不是要修改MySQL的设置?

5.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: struggle
Posted on: 2003-04-22 15:01

如果你是用程序直接连,请这样写:
jdbc:mysql://XX.XX.XX.XX:3306/数据库名?user=用户名&password=密码&useUnicode=true&characterEncoding=8859_1

如果你是用DBTOOLS连接MYSQL则用以下方法
Server Name和 Hostname都填上你要连的机器的IP。
User ID最好写root及相应Password。
Database如果不知道可以不填。
这样如果还出现'root@localhost '(Using password: YES)
则保存后再重新启动DBTOOLS。
如果出现Enter Password for Server窗口,可心不用管它,点OK即可。
如此多试两次,就可以连接上。

6.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-22 15:44

我是用程序连

明明jdbc url指明了别人的IP

但是报错总是

root@我本机的机器名 访问限制

请问到底是为什么阿?

7.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: struggle
Posted on: 2003-04-22 18:06

如果你是用程序直接连,请这样写:
jdbc:mysql://XX.XX.XX.XX:3306/数据库名?user=用户名&password=密码&useUnicode=true&characterEncoding=8859_1
这里面的root和password写上!

8.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-22 18:47

确实阿,都写上了

还是报错root@我机器的名字 不可访问

真是火大了

9.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: kkkchen
Posted on: 2003-04-22 22:20

可能你的不是完整版的驱动,好像不是完整版的只能访问本地的数据库。

10.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: floater
Posted on: 2003-04-22 23:41

ok, a dirty, quick way.

remove that root@localhost from your db, create a new user with password and put them in your url.

11.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-23 09:28

请问哪位能给出完整版的驱动下载地址呢

谢谢

我的是mysql-connector-java-3.0.7-stable-bin.jar

不知道是不是好的

12.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: 牛老板
Posted on: 2003-04-29 00:46

兄弟,我想你看看mysql的用户管理相关章节,可能会有帮助.

好象有权限设置.

13.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-04-29 12:00

呵呵,都不是,是驱动的问题,我自己解决了

原来用的是3.0X stable的驱动

只能连接localhost

我现在换了旧的2.xx的驱动就好了

14.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: 牛老板
Posted on: 2003-05-04 10:44

晕啊~~

我用的“org.gjt.mm.mysql.Driver”,所以没见过这种现象.

15.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: caojiqun
Posted on: 2003-05-08 01:14

CrazyJavar wrote:
呵呵,都不是,是驱动的问题,我自己解决了

原来用的是3.0X stable的驱动

只能连接localhost

我现在换了旧的2.xx的驱动就好了

不会吧

16.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-05-15 11:12

同志们,我晕啊

今天突然发现2.xx的驱动也连不上其它机器的MySQL了

我觉得还是要对MySQL设置啊

17.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: floater
Posted on: 2003-05-15 22:10

Now I am 晕了. Big Smile.

Did you read the manual on how to set up new users, CrazyJava-er?

18.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-05-16 10:32

没有,呵呵

19.aaa [Re: CrazyJavar] Copy to clipboard
Posted by: jfml
Posted on: 2003-05-16 10:33

我的机器A,假如要连接机器B的MySQL

那么在B上的MySQL里是不是要给A专门设置一个用户啊?

20.Re:如何设置以便连接非本机的MySQL? [Re: CrazyJavar] Copy to clipboard
Posted by: caojiqun
Posted on: 2003-05-17 13:31

mysql.user表是控制主机、用户权限的,前面三个字段Host,User,Password控制主机、用户和对应的密码,一般的,Host可以是localhost(本机)、%(任何其他主机)或者指定的主机名,看一看这个表的内容,就可以知道为什么会出现有的可连接而有的不行。
user表的后面的十几个字段控制各种权限(例如:select、update、insert等),还有其他的表安装时基本都是空的,db表中有一条记录,允许对test库操作,这些表用来进一步控制存取权限到库、表和字段级。
JDBC驱动版本不同只是对字符集处理不同,没有可不可以连接本地或remote的差别。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923