百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> mysql重装后连接数据库提示1045错误
分享文章到:

mysql重装后连接数据库提示1045错误

发布时间:01/15 来源: 浏览: 关键词:
今天发现一个奇怪的问题把mysql重新安装之后发现再去连接mysql提示1045错误了,无法正常连接mysql数据库了,下面我们一起来看此问题解决办法。

之前因为没有正常关机 mysql 服务无法正常启动。后来重新安装了之后还是不能进入root账户提示1045错误。

解决方法:

1、停止服务

2、修改my.ini,找到【mysqld】,在其下加上一行 skip-grant-tables

3、启动mysql服务。

这样就可以进入了。进入之后修改 mysql库下面的user 表里面的root 密码改为空。

然后去掉 skip-grant-tables 重启mysql。 把之前的库都拷贝到新的数据库路径。网站即可正常访问。

如果还是不行可参考下面方法尝试一下

根据网上的介绍,通过命令

 代码如下

mysql> use mysql; mysql> select host,user from user;

得到如下结果 +---------------+------+ | host | user | +---------------+------+ | localhost | root | +---------------+------+ 5 rows in set (0.00 sec)

发现root用户仅允许本地(localhost)登录

,如果要远程登录该mysql服务器的话,就需要新建一个普通权限的用户,新建用户使用如下命令:

 代码如下

 mysql> grant select,update,insert,delete on mas.* to duan@localhost identified by "123456";

这句命令的意思是:新建用户duan,并且只允许该用户在本地(localhost)登录,密码是123456,并且赋予它对mas库中所有表select,update,insert的权限。我们在这有一个mas库,所以用mas.*代表mas库下的所有表。现在该duan用户,已经可以登录mysql了,但是也还是只能本地登录。

若要duan用户可以远程登录mysql,则还需要如下命令:

 代码如下

 mysql> update user set host = '%' where user = 'duan';

现在我们再查看mysql的管理库:

 mysql> select host,user from user; +-----------+------+ | host | user | +-----------+------+ | % | duan | | localhost | root | +-----------+------+ 5 rows in set (0.00 sec) 这时,在MySQL-Front上新建连接,输入连接名,远端的Linux的IP地址,输入用户名duan和密码123456,选择连接端口,mysql默认的是3306,还是连接不上。

经过多番查找,发现还需要执行

 代码如下

mysql> flush privileges;

把缓存flush后,终于大功告成了。 因为使用update语句修改用户记录,还需要FLUSH语句告诉服务器重载授权表。当你使用GRANT和REVOKE语句时,表自动重载,而你直接修改授权表时不是。
所以更简便的方法是

 代码如下

mysql> grant select,update,insert,delete on mas.* to duan@“%” identified by "123456";

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有7人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板