您现在的位置是: 首页 > 个人博客 > 关于Access denied问题的解决办法 个人博客
关于Access denied问题的解决办法
2018-11-06 22:30:20
【文章】11966人已围观
简介 再启动javaweb项目的时候,我们不经意间会遇到一个如下问题:造成这种问题的原因有很多种,比如,账户密码错误,或者数据库权限设置问题。首先确认自己项目配置文件的数据库名和密码是否配置正确,这个原因也可能导致。如果配置文件中你的数据库账户和密码确认无误,但依然出现以上错误,请按照如下步骤操作:1.登......
再启动javaweb项目的时候,我们不经意间会遇到一个如下问题:
造成这种问题的原因有很多种,比如,账户密码错误,或者数据库权限设置问题。
首先确认自己项目配置文件的数据库名和密码是否配置正确,这个原因也可能导致。
如果配置文件中你的数据库账户和密码确认无误,但依然出现以上错误,请按照如下步骤操作:
1.登录mysql
cd D:\mysql-5.6.24-win32.1432006610\mysql-5.6.24-win32\bin
mysql -u root -p
输入你的数据库密码,按enter确定登录。
2.修改数据库密码
切换到mysql自带库:use mysql;
如果你的mysql版本是5.7以下(不包括5.7),请使用如下sql命令修改密码:
update user set Password = password ('123456') where User = 'root';
如果你的mysql版本是5.7及以上,请使用如下sql命令修改密码:
update user set authentication_string=password('123456') where user='root';
3.刷新权限
flush privileges;
4.退出数据库
quit;
5.重启数据库
net stop mysql
net start mysq
具体演示操作如下:
最后在使用navicat for mysql测试一下是否可以登录。如果可以,在eclipse重启项目,使用浏览器访问页面,如果不在报错,那么恭喜你,问题解决了。
如果你不记得你的数据库密码了,你可以通过在数据库安装目录bin下,添加配置skip-grant-tables
添加这个配置的作用是为了使用cmd控制台登录数据库时,跳过密码验证,不必输入密码,直接enter即可进入数据库。
然后重启mysql服务器。
Tags: mysql
上一篇: 据说是一道华为Java面试题
下一篇: 已经是最后一篇了
随机图文
有趣的Java字符串
先上代码:public class Test3 { public static void main(String[] args) { String str = 1+1+"1"; String str_ = "1"+1+1; System.out.println("str:"+str); System.out.println("str_:"+str_); }}程序输出:str:21str_:111可以看到,如果运算在字符串的前面,那么会先执行运算,再讲运算结果与字符串拼接;如果运算在字符串的后面,那么运算将变得毫无意义。^_^大家可以去试试。据说是一道华为Java面试题
请问下面程序将会输出什么?程序如下:public class Test { class A{ private static final int m = 10; public A(){ change(); } public void change(){ System.out.println(m); } } class B extends A{ private static final int num = 20; public void change(){ System.out.println(num); } }}输出测试:public class Test2 { public static void main(String[] args) { new Test().new B(); }}结果公布,最终会输出:20,为什么?分析一下继承的初始化顺序。继承的初始化顺序一般如下:父类的静态变量-->父类的静态代码块-->子类的静态变量-->子类的静态代码快-->父类的非静态变量(父类的非静态代码块)-->父类的构造函数-->子类的非静态变量(子类的非静态代码块)-->子类的构造函数值得注意的是:父类的非静态变量(父类的非静态代码块)是同一级的,看哪个部分写在类的最前面谁就先被执行,子类的非静态变量(子类的非静态代码块)也是一样。所以这道题,实例化一个子类,首先会去执行父类的构造方法,执行构造方法中的函数change,但是由于change函数被子类重写了,所以执行的将是子类的change,所以会输出20;但是,如果我们把子类的中的private static final int num = 20;改为private int m = 20;那么结果又会输出什么呢?结果是0,因为在父类的构造方法中调用子类的change方法输出num的时候,num作为一个实例变量,这时候还没有被实例化赋值,所以取得是初始值0。mysql卸载步骤图解
mysql的安装步骤稍微有点复杂,有些同学第一次安装可能因为各种原因导致失败。 mysql安装失败或者想要更换新的mysql版本,必须卸载干净,才能进行重装,下面介绍mysql卸载的详细步骤。 win+r搜services.msc调出计算机服务列表,停止mysql服务器(如果没有该服务,直接下一步)。 控制面板,卸载所有MySQL开头的软件。 删除所有mysql相关的注册表值。 Win+R,在搜索框中输入指令regedit,进去注册表。 注意有部分同学,可能不一定是如下5个目录,如果没有对应的文件夹就不用删除了。 主要保证,有多少个ControlSet就检查多个,并且删除下面目录下的MySQL。 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services\Eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet004\Services\Eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\ControlSet005\Services\Eventlog\Application\MySQL HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 删除原来旧的安装文件,一般安装目录没有修改的情况下都是在如下几个文件夹: C:\Program Files\MySQL C:\Program Files (x86)\MySQL C:\ProgramData\MySQL 注意,ProgramData文件是系统隐藏文件,需要设置对隐藏文件可见。 如果计算机服务列表中,还存在上一次安装的服务残余(比如我第一张图的MySQL服务),可以在cmd中使用命令删除。 当然你也可以不删除,在重装的时候修改一下MySQL的服务名就可以了。关于Access denied问题的解决办法
再启动javaweb项目的时候,我们不经意间会遇到一个如下问题:造成这种问题的原因有很多种,比如,账户密码错误,或者数据库权限设置问题。首先确认自己项目配置文件的数据库名和密码是否配置正确,这个原因也可能导致。如果配置文件中你的数据库账户和密码确认无误,但依然出现以上错误,请按照如下步骤操作:1.登录mysql cd D:\mysql-5.6.24-win32.1432006610\mysql-5.6.24-win32\bin mysql -u root -p 输入你的数据库密码,按enter确定登录。 2.修改数据库密码 切换到mysql自带库:use mysql; 如果你的mysql版本是5.7以下(不包括5.7),请使用如下sql命令修改密码: update user set Password = password ('123456') where User = 'root'; 如果你的mysql版本是5.7及以上,请使用如下sql命令修改密码: update user set authentication_string=password('123456') where user='root';3.刷新权限 flush privileges;4.退出数据库 quit;5.重启数据库 net stop mysql net start mysq具体演示操作如下:最后在使用navicat for mysql测试一下是否可以登录。如果可以,在eclipse重启项目,使用浏览器访问页面,如果不在报错,那么恭喜你,问题解决了。如果你不记得你的数据库密码了,你可以通过在数据库安装目录bin下,添加配置skip-grant-tables添加这个配置的作用是为了使用cmd控制台登录数据库时,跳过密码验证,不必输入密码,直接enter即可进入数据库。然后重启mysql服务器。
点击排行
