开始使用Linux连接mysql数据库的时候,出现了1045错误。当出现这个问题的时候,应该是用户被数据库拒绝访问了,我们应该为你的数据库开辟权限。
1.登录数据库输入linux指令
mysql -uroot -padmin
登录你的数据库输入用户名和密码
2.使用数据库,查询权限
mysql> use mysql;
mysql> select host,user from user;
+--------+--------------+
| user | host |
+--------+--------------+
| myuser | % |
| root | % |
| server | % |
| root | 127.0.0.1 |
| root | 192.168.1.60 |
| ted | 192.168.1.60 |
| xuys | 192.168.1.60 |
| root | ::1 |
| | iz94w6ieqtwz |
| root | iz94w6ieqtwz |
| | localhost |
| root | localhost |
+--------+--------------+
可以查询用户和权限
3.想要远程mysql服务器,需要增加普通权限的用户
mysql> grant select,update,insert,delete on mas.* to root@localhost identified by "admin";
这句命令的意思是:新建用户root,并且只允许该用户在本地(localhost)登录,密码是admin,并且赋予它对mas库中所有表select,update,insert的权限。我们在这有一个mas库,所以用mas.*代表mas库下的所有表。 现在该root用户,已经可以登录mysql了,但是也还是只能本地登录。
若要想root用户可以远程登录mysql,则还需要以下命令:
mysql> update user set host = '%' where user = 'root';
我们也可以直接给用户权限 grant all on *.* to 用户名@"%" identified by "密码";
flush privileges;刷新权限