MySQL初始安装登录:ERROR 2003 (HY000): Can‘t connect to MySQL server on

安装环境:

bash 复制代码
[root@localhost ~]# hostnamectl
   Static hostname: (unset)
Transient hostname: localhost
         Icon name: computer-vm
           Chassis: vm 🖴
        Machine ID: 1d71fe6ef4c74a1684adcdaa8b7d4823
           Boot ID: bf812fd7a4374a74b891c8c55a6ebd1b
    Virtualization: vmware
  Operating System: CentOS Stream 9
       CPE OS Name: cpe:/o:centos:centos:9
            Kernel: Linux 5.14.0-527.el9.aarch64
      Architecture: arm64
   Hardware Vendor: VMware, Inc.
    Hardware Model: VMware20,1
  Firmware Version: VMW201.00V.24006586.BA64.2406042154
[root@localhost ~]#

MySQL版本:

bash 复制代码
[root@localhost ~]# mysql --version
mysql  Ver 8.0.36 for Linux on aarch64 (Source distribution)

安装完毕,远程登录报错:

bash 复制代码
➜  ~ mysql -h 192.168.86.129  -u root -p
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.86.129:3306' (61)

排查

1、开放端口
bash 复制代码
[root@localhost ~]# firewall-cmd --zone=public --permanent --add-port=3306/tcp
success
2、检查MySQL服务
bash 复制代码
[root@localhost ~]# systemctl status mysqld
● mysqld.service - MySQL 8.0 database server
     Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; preset: disabled)
     Active: active (running) since Sun 2024-12-29 19:55:39 CST; 1h 24min ago
   Main PID: 36797 (mysqld)
     Status: "Server is operational"
      Tasks: 39 (limit: 10104)
     Memory: 399.1M
        CPU: 51.468s
     CGroup: /system.slice/mysqld.service
             └─36797 /usr/libexec/mysqld --basedir=/usr
3、检查MySQL用户是否允许远程访问
bash 复制代码
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SELECT user, host FROM mysql.user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)

如果都为localhost,则根据规则设置允许远程访问

bash 复制代码
mysql> UPDATE mysql.user SET host = '%' WHERE user = 'root' AND host = 'localhost';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

设置完毕,此时再次尝试远程连接

bash 复制代码
➜  ~ mysql -h 192.168.86.129  -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.36 Source distribution

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit;
Bye
相关推荐
高溪流6 分钟前
3.数据库表的基本操作
数据库·mysql
alonewolf_9915 分钟前
深入剖析MySQL锁机制与MVCC原理:高并发场景下的数据库核心优化
数据库·mysql
一 乐38 分钟前
绿色农产品销售|基于springboot + vue绿色农产品销售系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·宠物
黄宝康1 小时前
sqlyog密钥亲测有效
mysql
Codeking__1 小时前
Redis初识——什么是Redis
数据库·redis·mybatis
YIN_尹1 小时前
【MySQL】数据类型(上)
android·mysql·adb
k***1951 小时前
Spring 核心技术解析【纯干货版】- Ⅶ:Spring 切面编程模块 Spring-Instrument 模块精讲
前端·数据库·spring
程序员黄老师1 小时前
主流向量数据库全面解析
数据库·大模型·向量·rag
Full Stack Developme1 小时前
Redis 可以实现哪些业务功能
数据库·redis·缓存
rgeshfgreh2 小时前
Spring事务传播机制深度解析
java·前端·数据库