用数据库管理工具连接数据库显示1045的错误,一开始以为是密码不对,于是尝试着修改密码,但是修改之后发现还是存在1045的问题,把只好将mysql卸载了重装,但是重新安装好了以后还存在这个问题。这就不是密码的问题了,而是访问权限的问题。
通过dos进入数据库,显示mysql下的user表 ,user表里的authentication_string对应着访问数据库的密码,但是是通过加密的,所以修改方式为authentication_string=password('新密码') .在者就是修改权限问题可以通过人为添加赋予权限,如
grant all privileges on *.* to '用户名'@'%' identified by '密码';
(all privileges 表示对数据库拥有所有操作权限,如增删改查等;*.*表示对所有数据库和表都有权限;'用户名'为连接时的用户名;‘%’代表任何连接地址都可以访问,但是不能不填;'密码'是连接时需要的密码)
详细操作如下:
https://jingyan.baidu.com/article/9f63fb918d3cdfc8410f0e52.html
这条语句执行成功后会在mysql.user表插入一条数据,对应这条语句的内容,同时grant 语句也可以为user表存在的用户进行赋予权限。
通过grant 语句给任何地址访问权限,就可以解决1045的问题了