第一种方法:直接输入账户名和密码进入数据库。找到mysql数据库的user表,直接update root用户的Host,将Host:localhost, user:root改成Host:%, user:root
然后 mysql> flush privileges; (运行此句才生效,或者重启MySQL)。因为mysql的权限都在cache里,所以要刷新一下。
改成%后,任意IP都可访问mysql服务器,十分不安全。可以将%将换成一个IP地址,即只允许来自该IP地址的访问。
第二种方法:直接输入账户名和密码进入数据库。
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
mysql> flush privileges;
可以将%将换成一个IP地址,即只允许来自该IP地址的访问。
root用户权限过大,建议新建用户,赋予其对某个数据库的部分权限
在mysql里加个远程用户就可以了,例如:
GRANT ALL PRIVILEGES ON *.* TO 'muser'@'%' IDENTIFIED BY 'mpassword' ;
FLUSH PRIVILEGES;
然后用muser就可以远程登录mysql了