Mysql远程连接报错的坑

本文详述了Mysql远程连接报错的常见问题,如服务未启动、权限设置、配置文件限制等,并提供了详细的步骤来修复,包括验证密码策略调整和防火墙设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有关Mysql远程连接报错的坑

  1. 服务未启动

  2. 服务已经启动, 本机可登入,其他机器均不可

    在其他机器上可以ssh/ping通,但是telnet ip port失败

    有可能是配置文件的原因

    /etc/mysql/mysql.conf.d/mysqld.cnf

    # Instead of skip-networking the default is now to listen only on
    # localhost which is more compatible and is not less secure.
    bind-address           = 127.0.0.1
    mysqlx-bind-address    = 127.0.0.1
    

    将这两行(3-4)注释掉

  3. ERROR 1698 (28000): Access denied for user 'root'@'XXX'

    这是表内定义的权限问题

    先登入mysql(8.0以上版本)

    create user root@'%' identified by '密码';
    grant all privileges on *.* to root@'%' with grant option;
    

    其中设置密码可能不符合其中规范会报错,所以可以先修改规范,然后再运行上面两条语句

    mysql> show variables like 'validate_password%';
    +--------------------------------------+--------+
    | Variable_name                        | Value  |
    +--------------------------------------+--------+
    | validate_password.check_user_name    | ON     |
    | validate_password.dictionary_file    |        |
    | validate_password.length             | 8      |
    | validate_password.mixed_case_count   | 1      |
    | validate_password.number_count       | 1      |
    | validate_password.policy             | MEDIUM |
    | validate_password.special_char_count | 1      |
    +--------------------------------------+--------+
    
    set global validate_password.policy=0;
    
    mysql> show variables like 'validate_password%';
    +--------------------------------------+-------+
    | Variable_name                        | Value |
    +--------------------------------------+-------+
    | validate_password.check_user_name    | ON    |
    | validate_password.dictionary_file    |       |
    | validate_password.length             | 8     |
    | validate_password.mixed_case_count   | 1     |
    | validate_password.number_count       | 1     |
    | validate_password.policy             | LOW   |
    | validate_password.special_char_count | 1     |
    +--------------------------------------+-------+
    
    set global validate_password.length = 6;
    
  4. 重启mysql服务后,即可再次登入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值