Linux centOS yum install MySQL5.7

下载并安装 MySQL YUM 仓库

复制代码
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm

这将为您的 CentOS 系统安装 MySQL YUM 仓库。
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

这个命令主要用于从 MySQL 的官方网站下载 MySQL YUM 仓库的 RPM 包。

在这个命令中:

1.wget 是一个自由的网络下载工具,常用于在终端环境中下载网络文件。它支持 HTTP, HTTPS, FTP 等多种网络协议。

2.https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 是 MySQL YUM 仓库的 RPM 包的下载地址。

这个 RPM 包包含了设置 YUM 仓库的配置信息,一旦安装,就可以通过 yum 命令方便地管理(比如安装、更新、卸载)MySQL。安装这个包是在 CentOS 系统下安装 MySQL 5.7 的第一步。
安装 MySQL 服务器

执行以下命令来安装 MySQL 服务器:

复制代码
sudo yum install mysql-community-server

提示 "mysql-community-common-5.7.43-1.el7.x86_64.rpm 的公钥尚未安装" 意味着在尝试安装该 RPM 包时,系统无法验证这个包的真实性和完整性,因为它需要一个对应的公钥来验证。

当你从外部资源(例如 MySQL 的官方仓库)获取 RPM 包并试图安装它们时,为了安全起见,系统会检查 RPM 包的签名。如果你的系统中没有安装对应的公钥,你会看到这样的错误信息。

为了解决这个问题,你需要导入相应的公钥。

命令

复制代码
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

的作用是将 MySQL 的公共 GPG 密钥导入到您的 RPM 包管理器。这个密钥用于验证从 MySQL 仓库下载的 RPM 包的完整性和来源。

在详细描述这个操作前,我们先明确一下 GPG 密钥和 RPM 包管理器的作用。

1.GPG 密钥:也叫做 GNU Privacy Guard 密钥。这是一种用于安全地传输信息的密钥,经常用于验证下载文件的真实性。当你从一个来源下载文件时,该文件的提供者通常会提供一个 GPG 密钥用于确认文件没有被篡改。

2.RPM 包管理器:RPM 是一个 Linux 下的包管理器,用于安装、卸载、更新、查询和验证软件包。它处理 .rpm 文件,并且会在安装软件包时检查 GPG 密钥。

当你运行上述命令rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022时,你的系统会从给定的 URL 下载 MySQL 的公钥,并将其导入 RPM 包管理器的密钥数据库。在安装 RPM 包时,RPM 会检查该包是否已用这个 密钥进行签名。

这样做是为了确保你正在安装的软件包实际上就是开发者发布的原始包,而不是被第三方修改过的。如果包的签名与导入数据库的公钥不匹配,RPM 将会停止安装并给出警告。

获取url:

https://dev.mysql.com/doc/refman/5.7/en/checking-rpm-signature.html
启动 MySQL 服务
安装完成后,您需要启动 MySQL 服务:

复制代码
sudo systemctl start mysqld

开机启动
如果您想要 MySQL 在系统启动时自动运行,可以执行以下命令:

复制代码
sudo systemctl enable mysqld

登录 MySQL

默认安装完成后,root 用户的密码在 /var/log/mysqld.log 文件中。您可以使用以下命令查看:

复制代码
grep 'temporary password' /var/log/mysqld.log

使用获得的临时密码,您可以登录 MySQL:

复制代码
mysql -u root -p

更改 MySQL 密码:

1.首先,你需要以 root 用户身份登录 MySQL。在命令行中输入以下命令:

复制代码
mysql -u root -p

然后输入你的当前 root 用户密码。

2.在登陆MySQL后,选择mysql数据库,因为用户数据保存在这里。运行以下命令:

复制代码
USE mysql;

3.更改密码,替换 'new_password' 为你想要设定的新密码:

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

4.刷新权限,使得更改立即生效:

复制代码
FLUSH PRIVILEGES;

5.退出 MySQL:

复制代码
quit

linux设置mysql数据库允许远程连接:

1.以 root 用户身份登录 MySQL

2、选中mysql数据库

复制代码
use mysql
复制代码
grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;

此语句意思是给root用户在任何IP都可以登录数据库,操作任何数据库中的任何对象。

*.* 第一个*是指数据库

*代表所有数据库

第二个*指数据库对象

*代表数据库中所有对象

'root'@'%' root是制定要授权的数据库用户

%代表允许登录的IP

假如要限制只能在192.168.80.1登录,把%改成192.168.80.1

这是一个MySQL命令,用于在Linux环境中授予用户权限。下面是对这个命令的详细解释:

  • grant all privileges on *.*:这表示授予所有权限给所有数据库和所有表。*.*代表所有数据库的所有表。

  • to 'root'@'%':这表示授权给用户名为root的用户。@'%'表示这个用户可以从任何主机连接到数据库。%是一个通配符,代表所有可能的主机。

  • identified by '密码':这表示设置用户的密码为密码。

  • with grant option:这表示用户可以将他的权限授予给其他用户。

总的来说,这个命令是将所有数据库的所有权限授予用户名为root的用户,用户可以从任何主机连接到数据库,用户的密码为密码,并且用户可以将他的权限授予给其他用户。

复制代码
select Host,User from user;

4.刷新权限,使得更改立即生效:

复制代码
FLUSH PRIVILEGES;

5.退出 MySQL:

复制代码
quit

6.重启mysql

复制代码
service mysql restart

可以使用以下命令让防火墙开放 3306 端口,否则在防火墙启动的情况下无法远程连接MySQL

复制代码
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

Navicat 远程连接MySQL

相关推荐
charlie11451419114 分钟前
2026年IMX6ULL正点原子Alpha开发板学习方案——U-Boot完全移植概览:从官方源码到你的自制板,这条路有多远
linux·学习·嵌入式·uboot·嵌入式linux·工程实践·编程指南
高梦轩35 分钟前
LNMP 环境部署笔记
linux·笔记
HAPPY酷39 分钟前
Linux `shutdown` 命令速查:安全关机与重启
linux·chrome·安全
zhping101140 分钟前
Linux 系统上使用 GitHub 加速工具
linux·运维·github
dreamread43 分钟前
Linux下MySQL的简单使用
linux·mysql·adb
YXXY3131 小时前
Linux进程概念(一)
linux
于眠牧北1 小时前
ubuntu22.04安装docker以及安装过程中报错解决方法
运维·docker·容器
煜3642 小时前
Linux初识与基本指令
linux·运维·服务器
执笔论英雄2 小时前
【大模型推理】cudastream 学习
linux·运维·学习
shada2 小时前
在Linux x86_64系统中编译mission
linux