CentOS7安装MySQL 8.4 + Navicat远程连接新手教程

 更新时间:2025年12月23日 09:50:48   作者:丨四块五丨  
Navicat是高效数据库管理工具,支持多数据库操作,远程连接MySQL是常见的一种功能,这篇文章主要介绍了CentOS7安装MySQL 8.4 + Navicat远程连接的相关资料,需要的朋友可以参考下

一、前置准备:配置阿里云镜像源

1.1 下载并替换为阿里云镜像源

使用wget命令下载阿里云CentOS 7专属镜像源配置文件,覆盖原有文件:

sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

1.2 刷新yum缓存(使镜像源生效)

镜像源配置完成后,需清理旧缓存并生成新缓存,确保yum能识别新源:

sudo yum clean all && sudo yum makecache

二、MySQL 服务器安装步骤

2.1 下载MySQL YUM配置包

从MySQL官方获取适用于CentOS 7的YUM配置包,该包会生成MySQL专属的repo源文件:

sudo wget https://dev.mysql.com/get/mysql84-community-release-el7-2.noarch.rpm

2.2 安装YUM配置包

通过yum本地安装刚下载的配置包,安装后会在/etc/yum.repos.d/目录下生成MySQL相关的repo文件:

sudo yum localinstall mysql84-community-release-el7-2.noarch.rpm -y

2.3 验证MySQL repo配置有效性

执行以下命令查看已启用的repo源,确认MySQL相关源已生效:

yum repolist enabled | grep "mysql"

正常输出会显示mysql等相关条目,表明配置生效。

2.4 安装MySQL服务器

使用yum安装MySQL社区版服务器,-y参数用于自动确认所有安装提示,无需手动交互:

sudo yum install mysql-community-server -y

三、MySQL 服务基础管理

3.1 启动MySQL服务

安装完成后,执行以下命令启动mysqld服务:

sudo systemctl start mysqld

3.2 查看服务运行状态

确认服务是否正常启动,正常状态会显示“active (running)”:

sudo systemctl status mysqld

若启动失败,可通过以下命令查看日志排查原因:sudo journalctl -u mysqld

3.3 设置开机自启

CentOS 7默认不会将MySQL设置为开机自启,需手动配置,确保服务器重启后服务自动运行:

sudo systemctl enable mysqld

四、MySQL 初始化配置

4.1 提取临时root密码

MySQL 8.4+安装后会自动为root用户生成临时密码,存储在日志文件中,执行以下命令提取:

sudo grep 'temporary password' /var/log/mysqld.log

输出示例:2025-12-03T08:00:00.123456Z 6 [Note] A temporary password is generated for root@localhost: AbC123!@#,复制“: ”后的字符串(即临时密码)备用。

4.2 使用临时密码登录MySQL

执行以下命令登录MySQL命令行,输入临时密码时不显示明文,粘贴后回车即可:

mysql -u root -p

4.3 修改root用户密码

MySQL 8.4+强制要求密码复杂度(大小写字母+数字+特殊字符,长度≥8位),执行以下SQL语句修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码'; -- 替换为自定义密码

示例密码:MySQLRoot@123,若提示“密码不满足复杂度要求”,需调整密码后重新执行。

4.4 配置root远程访问(可选操作)

默认root仅允许本地登录,若需远程管理(如通过Navicat连接),执行以下SQL配置(生产环境建议限制指定IP):

-- 创建允许远程访问的root用户(%表示所有IP,可替换为具体IP如192.168.1.100)
CREATE USER 'root'@'%' IDENTIFIED BY '你的新密码';
-- 赋予远程用户所有权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
-- 刷新权限使配置生效
FLUSH PRIVILEGES;
-- 退出MySQL命令行
EXIT;

4.5 开放防火墙3306端口(远程访问必备-可选操作)

CentOS 7默认防火墙会拦截3306端口,需开放端口并重新加载防火墙规则:

# 永久开放3306端口
sudo firewall-cmd --permanent --add-port=3306/tcp
# 重新加载防火墙规则
sudo firewall-cmd --reload
# 验证端口是否开放成功(输出yes表示成功)
sudo firewall-cmd --query-port=3306/tcp

五、安装验证与基础操作

5.1 本地登录验证

使用修改后的新密码重新登录,确认登录成功:

mysql -u root -p

5.2 查看MySQL版本

登录后执行以下SQL语句,确认安装的MySQL版本:

SELECT VERSION();

5.3 获取服务器IP地址

在CentOS 7 终端中执行如下操作获取IP地址:

5.4 远程连接验证(可选)

在远程机器上通过MySQL客户端(如Navicat、DBeaver)连接:

  • 主机:服务器IP地址

  • 端口:3306

  • 用户名:root

  • 密码:修改后的新密码

连接成功即表示远程访问配置生效。

六、常见问题排查

6.1 临时密码找不到

若执行提取临时密码的命令无输出,可尝试以下方法:

# 方法1:扩大日志搜索范围
sudo cat /var/log/mysqld.log | grep 'password'
# 方法2:重新初始化MySQL(谨慎操作,会清空数据)
sudo systemctl stop mysqld
sudo rm -rf /var/lib/mysql
sudo systemctl start mysqld
# 重新提取临时密码
sudo grep 'temporary password' /var/log/mysqld.log

6.2 服务启动失败

通过日志查看失败原因:

sudo journalctl -u mysqld

常见原因及解决:

  • 端口被占用:执行sudo netstat -tulpn | grep 3306查看占用进程,停止占用进程或修改MySQL端口。

  • 数据目录权限异常:执行sudo chown -R mysql:mysql /var/lib/mysql修复权限。

6.3 密码修改失败

确保密码满足“大小写字母+数字+特殊字符,长度≥8位”的复杂度要求,若需临时降低复杂度(仅测试环境),可修改配置文件后重启服务。

总结

到此这篇关于CentOS7安装MySQL 8.4 + Navicat远程连接的文章就介绍到这了,更多相关安装MySQL+Navicat远程连接内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql高效查询left join和group by(加索引)

    mysql高效查询left join和group by(加索引)

    这篇文章主要给大家介绍了关于mysql高效查询left join和group by,这个的前提是加了索引,以及如何在MySQL高效的join3个表 的相关资料,需要的朋友可以参考下
    2021-06-06
  • 详解MySQL中的字符集和排序规则

    详解MySQL中的字符集和排序规则

    MySQL字符集用于定义数据库中存储的文本数据的编码格式,而排序规则则用于确定如何对文本数据进行排序和比较,本文将给大家讲讲MySQL中的字符集和排序规则,需要的朋友可以参考下
    2023-09-09
  • MySQL回表机制的原理及优化实战

    MySQL回表机制的原理及优化实战

    本文主要介绍了MySQL回表机制的原理及优化实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-08-08
  • MySQL查询语句简单操作示例

    MySQL查询语句简单操作示例

    这篇文章主要介绍了MySQL查询语句简单操作,结合实例形式分析了MySQL数据库、数据表创建、数据插入、数据查询等相关操作技巧,需要的朋友可以参考下
    2019-11-11
  • mybatis mysql delete in操作只能删除第一条数据的方法

    mybatis mysql delete in操作只能删除第一条数据的方法

    这篇文章主要介绍了mybatis mysql delete in操作只能删除第一条数据的问题及解决方法,需要的朋友可以参考下
    2018-09-09
  • mysql 模糊搜索的方法介绍

    mysql 模糊搜索的方法介绍

    本文将提供两种方法,第一种最土的方法:使用like语句第二种用全文索引,接下来将为你详细介绍
    2012-11-11
  • 解决mysql不是内部或外部命令的问题

    解决mysql不是内部或外部命令的问题

    这篇文章主要介绍了解决mysql不是内部或外部命令的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • MySQL数据库复合查询操作实战

    MySQL数据库复合查询操作实战

    mysql表的查询都是对一张表进行查询,在实际开发中这远远不够,下面这篇文章主要给大家介绍了关于MySQL数据库复合查询的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • driver-class-name: com.mysql.jdbc.Driver爆红的问题解决

    driver-class-name: com.mysql.jdbc.Driver爆红的问题解决

    在springboot项目工程中想要进行数据库配置,driver-class-name: com.mysql.cj.jdbc.Driver始终报错,本文就来介绍一下如何解决,感兴趣的可以了解一下
    2024-07-07
  • 一文解答为什么MySQL的count()方法这么慢

    一文解答为什么MySQL的count()方法这么慢

    这篇文章主要介绍了一文解答为什么MySQL的count()方法这么慢,mysql用count方法查全表数据,在不同的存储引擎里实现不同,myisam有专门字段记录全表的行数,直接读这个字段就好了
    2022-07-07

最新评论