【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)

本文详细描述了如何解决Navicat/SQLyog在Ubuntu中连接MySQL时遇到的10061错误,涉及安装MySQL、配置bind-address、创建新用户并设置安全规则,以及修改mysqld.cnf以允许远程连接。
摘要由CSDN通过智能技术生成

在这里插入图片描述

🏡浩泽学编程个人主页

 🔥 推荐专栏《深入浅出SpringBoot》《java对AI的调用开发》
              《RabbitMQ》《Spring》《SpringMVC》

🛸学无止境,不骄不躁,知行合一


前言

遇到一个Navicat/SQLyog连接Ubuntu中的数据库(MySQL)的报错:中文意思是不能在x.x.x.x(主机号)上连接mysql服务,这个报错号是10061。如果你遇到其他的可能也能用我的方法解决。


一、安装

简述安装,很简单。

1.更新列表
sudo apt-get update

2.安装MySQL服务器
sudo apt-get install mysql-server

3.运行MySQL初始化安全脚本
sudo mysql_secure_installation
mysql_secure_installation脚本设置:修改root密码、移除MySQL的匿名用户、禁止root远程登录、删除test数据库和重新加载权限。除了询问是否要更改root密码时,看情况是否需要更改,其余的问题都可以按Y,然后回车键接受所有后续问题的默认值。使用上面的这些选项可以提高MySQL的安全。

4.查看MySQL运行状态
systemctl status mysql.service
结果如下:
mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2024-02-20 11:13:05 UTC; 10s ago
    Process: 65515 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
   Main PID: 65523 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 4515)
     Memory: 365.8M
        CPU: 801ms
     CGroup: /system.slice/mysql.service
             └─65523 /usr/sbin/mysqld

Feb 20 11:13:04 dragonservice systemd[1]: Starting MySQL Community Server...
Feb 20 11:13:05 dragonservice systemd[1]: Started MySQL Community Server.


5.补充命令,无需运行
启动MySQL数据库服务
sudo service mysql start
或
sudo systemctl start mysql.service

二、原因

经过网上搜索和查阅,分析主要原因如下:

  • root用户不能连接,要创建一个用户
  • mysqld.cnf文件内的bind-address绑定地址是默认127.0.0.1

三、解决

创建新用户

create user '用户名'@'%' identified by '密码'

这里需要注意,密码无法设置成功,主要是现在mysql的密码有了规则,有三个强度:low,medium,strong。

show variables like 'validate_password%';

在这里插入图片描述
policy是强度属性,length是密码长度,上图可以看到默认的密码规则,这里我为了方便我就改了一下这个密码规则,你也可以不修改,就直接设置长度不小于8位,且含有大小写英文和数字。

设置密码规则:

设置密码强度
set global validate_password.policy=0;
设置密码长度
set global validate_password.length=4;
这是我设置的密码
CREATE USER '用户名'@'%' IDENTIFIED BY '123456';

创建完新用户后注意要授权:

grant all on *.* to '用户名'@'%';

刷新一下权限:

flush privileges

登录测试一下是否成功创建:

 mysql -u 用户名 -p
 回车后输入密码,然后成功登入;尝试错误密码是否能登录,可以说明未设置成功。

修改mysqld.cnf文件

在/etc/mysql/mysql.conf.d文件夹下:

进入编辑
vim /etc/mysql/mysql.conf.d

在这里插入图片描述
光标移至mysqld.cnf回车就进入mysqld.cnf
找到bind-address,修改为:

bind-address = 0.0.0.0

重启:

sudo service mysql restart
或
sudo systemctl restart mysql.service

最后连接:
在这里插入图片描述
用户名和密码就是创建的那个新用户,主机号是你虚拟机的,不知道的话就ip addr查询。
在这里插入图片描述


总结

以上就是Navicat/SQLyog连接Ubuntu中的数据库(MySQL)报错的解决。

  • 61
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 96
    评论
评论 96
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浩泽学编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值