Access denied for user 'root'@'localhost' (using password: YES) 问题解决

我上网馊了一大箩筐, 在网上好多人说是权限不够,那我就修改权限吧,在当前的sql界面下输入如下命令:

grant all on mysql.* to 'root'@'localhost' identified by 'password';

password是修改的密码。

在输入如下命令就可以搞定

FLUSH PRIVILEGES ;

他们都说这样可以解决问题了。

 

 

可是我的还是死活出现这个问题。彻底无语了。

 

有的说可能ecplise可能没有自动编译,要进行重新编译,于是我郑重的重新编译了一下。问题还是出现,

我想这到底怎么回事。我想是不是mysql的安装版本问题。于是我就重装了mysql,问题依旧,

我真有点蒙了。最后想起来是不是因为mysql驱动的版本问题。换版本,问题还是依旧,

最后我都怀疑到是不是程序那儿出问题了,是不是通过文件配置的参数会不会有权限问题,于是我就把数据库连接参数,直接写死在程序了,运行通过,

我想是不是从配置文件提取出来的文件有错误,我运行打印出配置的参数,结果让我大吃一惊,一摸一样的啊。那我活见鬼了,

我发现虽然打印出来的一样可是从配置文件提取的参数里面有个我多加了一个“/”,因为要连接上数据库的名字,我想很有可能是他的问题,我把它直接弄掉,就写死在url里面。果然问题解决。

这个问题有点诡异,我想很可能是mysql对这个/就行了过滤,可能认为他不够安全,可是我在配置文件里也有/,为何不过滤,这个我就没有深入研究了,不过可以看看mysql驱动源码,应该能找到根源所在,等有空下载源码看下到底怎么回事。

你可能感兴趣的:(J2EE)