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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)



前言

遇到一个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)报错的解决。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
关系型数据库 MySQL 分布式数据库
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
《MySQL 简易速速上手小册》第6章:MySQL 复制和分布式数据库(2024 最新版)
43 2
|
4天前
|
SQL 存储 关系型数据库
数据库开发之mysql前言以及详细解析
数据库开发之mysql前言以及详细解析
14 0
|
2天前
|
缓存 NoSQL 关系型数据库
在Python Web开发过程中:数据库与缓存,MySQL和NoSQL数据库的主要差异是什么?
MySQL与NoSQL的主要区别在于数据结构、查询语言和可扩展性。MySQL是关系型数据库,依赖预定义的数据表结构,使用SQL进行复杂查询,适合垂直扩展。而NoSQL提供灵活的存储方式(如JSON、哈希表),无统一查询语言,支持横向扩展,适用于处理大规模、非结构化数据和高并发场景。选择哪种取决于应用需求、数据模型及扩展策略。
10 0
|
9天前
|
SQL 关系型数据库 MySQL
MySQL环境搭建——“MySQL数据库”
MySQL环境搭建——“MySQL数据库”
|
9天前
|
SQL NoSQL 关系型数据库
初识MySQL数据库——“MySQL数据库”
初识MySQL数据库——“MySQL数据库”
|
12天前
|
关系型数据库 MySQL 数据库
数据库基础(mysql)
数据库基础(mysql)
|
12天前
|
JavaScript 关系型数据库 MySQL
❤Nodejs 第二章(Node连接本地数据库)
【4月更文挑战第2天】本文介绍了如何使用Node.js连接本地MySQL数据库。首先,提到了在MySQL官网下载安装数据库和使用Navicat for MySQL进行数据库管理。接着,通过`yarn add mysql`在项目中安装数据库依赖。然后,创建`app.js`文件,设置数据库连接参数,并建立连接进行查询操作。遇到导入模块的错误后,修改导入方式为CommonJS语法。
30 1
|
3天前
|
SQL 存储 关系型数据库
MySQL Cluster集群安装及使用
MySQL Cluster集群安装及使用
|
18天前
|
关系型数据库 MySQL 数据库
mysql卸载、下载、安装(window版本)
mysql卸载、下载、安装(window版本)
|
7天前
|
关系型数据库 MySQL 数据库
《MySQL 简易速速上手小册》第1章:MySQL 基础和安装(2024 最新版)
《MySQL 简易速速上手小册》第1章:MySQL 基础和安装(2024 最新版)
33 4