• home > DB > mysql >

    登录服务器上的mysql:root登录开启远程访问权限

    Author:zhoulujun Date:

    MySql-Server 出于安全方面考虑默认只允许本机(localhost, 127 0 0 1)来连接访问。那么必须给root修改远程访问权限!具体如何操作。

    MySql-Server 出于安全方面考虑默认只允许本机(localhost, 127.0.0.1)来连接访问.

    那么必须给root修改远程访问权限!步骤如下:

    1、登录msyql

    mysql -u root -p

    2、更改root密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'pwd';

    在mysql8版本中更改用户密码需要加入with mysql_native_password,并且要加入;所以一下两种写法都是不对的。

    • alter user 'root'@'localhost' identified by 'amp';

    • alter user 'root'@'localhost' identified with mysql_native_password by 'amp'

    alter user 'root'@'localhost' identified with mysql_native_password by 'pwd';

    4、设置远程登录

    use mysql
    update user set host='%' where user='root';
    flush privileges;

     将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。   

    5,再执行授权语句:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

    可能存在的其它问题:

    mysql8.0 引入了新特性 caching_sha2_password;这种密码加密方式Navicat 12以下客户端不支持;

    Navicat 12以下客户端支持的是mysql_native_password 这种加密方式;

    查看 mysql当前加密方式,看root加密方式方式是否是caching_sha2_password 

    select host,user,plugin from user;

    使用命令将他修改成mysql_native_password加密模式:

    update user set plugin='mysql_native_password' where user='root';


    参考文章:

    mysql8.0.15用户root登录开启远程访问权限 https://blog.csdn.net/liliuqing/article/details/88723409

    MySQL8.0允许外部访问 https://blog.csdn.net/h996666/article/details/80921913



    转载本站文章《登录服务器上的mysql:root登录开启远程访问权限》,
    请注明出处:https://www.zhoulujun.cn/html/DB/mysql/2022_0619_8849.html