1、背景描述

  • 在真实业务场景下,Linux服务器一般位于内网,所以无法直接访问互联网资源;

  • 特别是安装数据库的Linux服务器,在网络方面的管控只会更加严格;

  • 因此,需要提前下载好相关资源,再传输到内网Linux服务器进行安装;

2、下载Mysql的安装包

下载地址:https://dev.mysql.com/downloads/mysql/

注意:官网的下载速度可能很慢,有任务时间要求的须尽快下载,或者使用其他可靠的下载源

2.1、选择对应Linux版本的安装包

2.2、以游客的身份直接下载安装包

3、安装Mysql

3.1、传输安装包到Linux

3.2、校验安装包

在下载或传输过程中,安装包可能会损坏,因此要校验其md5是否与官方的(见2.1节的下载截图)保持一致

md5sum 安装包名称

3.3、查询并卸载系统自带的Mariadb

rpm -qa | grep mariadb
rpm -e --nodeps 查询到的名称

3.4、查询并卸载系统老旧版本的Mysql

rpm -qa | grep mysql

本例中没有查找到旧版本的Mysql(因为没安装过),所以不用卸载

rpm -e --nodeps 查询到的名称

3.5、确保系统已安装libaio

一般Linux系统默认就已安装,除非被手动卸载了

rpm -qa | grep libaio

3.6、解压安装包

tar -xvf 安装包名称

3.7、按顺序执行rpm包安装

安装时,注意实际rpm包版本号的差异;

此外,还应尽可能使用root用户来执行安装命令,以避免各种权限不足问题;

rpm -ivh mysql-community-common-5.7.43-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.43-1.el7.x86_64.rpm

rpm -ivh mysql-community-devel-5.7.43-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-compat-5.7.43-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.43-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.43-1.el7.x86_64.rpm

3.8、可能出现的报错及处理

安装Mysql的server包时,可能会报错;这是安装Linux时,选择了“最小安装”环境导致缺少了服务器方面的相关软件依赖;

如果是自己安装的Linux虚拟机,可以重装Linux,基本环境选择“基础设施服务器”即可,参考该博文3.6节

如果是第三方(例如信息中心)提供的Linux,可以尝试联系其重新分配具备类似“基础设施服务器”环境的Linux;

如果必须使用该Linux环境安装Mysql,须离线安装perl离线安装net-tools后,再继续安装Mysql的server包;

警告:mysql-community-server-5.7.43-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
错误:依赖检测失败:
/usr/bin/perl 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
net-tools 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
perl(Getopt::Long) 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
perl(strict) 被 mysql-community-server-5.7.43-1.el7.x86_64 需要

4、启动Mysql

4.1、查看Mysql服务是否启动

systemctl status mysqld

4.2、启动Mysql服务

systemctl start mysqld

4.3、核查Mysql服务是否启动

4.4、设置开机自启动

systemctl enable mysqld

设置开机自启动mysqld服务后,还需要重新加载systemd服务,以使配置生效

systemctl daemon-reload

5、调整MySQL登录配置

5.1、查看随机初始密码

MySQL安装成功后,会自动为root账号生成一个随机的初始密码,并存储在/var/log/mysqld.log文件中,本例的密码为QloZfk).h6t,

cat /var/log/mysqld.log | grep password

5.2、使用初始密码登录

mysql -uroot -p

5.3、修改root账号的密码

@后面的localhost表示本地机器,即允许本机的连接

SET PASSWORD FOR 'root'@'localhost'= "Rain@123";

5.4、授权root账号远程访问

@后面的%表示任意地址,即允许来自任何ip的连接

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Rain@123' WITH GRANT OPTION;
FLUSH PRIVILEGES;

5.5、退出MySQL

exit

6、调整Linux防火墙

MySQL默认使用的端口是3306,想远程访问MySQL数据库,Linux防火墙的3306端口要对外开放

firewall-cmd --add-port=3306/tcp --permanent

增加开放端口后,需要重新加载防火墙配置

firewall-cmd --reload

本文参考

https://www.cnblogs.com/lemon-feng/p/11233227.html

https://www.cnblogs.com/lingyao/p/11984091.html

https://zhidao.baidu.com/question/134136394.html

Linux离线安装Mysql-5.7的更多相关文章

  1. Linux离线安装mysql 5.6详细步骤

    一.安装MySQL 1.下载安装包 mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz 2.卸载系统自带的Mariadb rpm -qa|grep mariadb / ...

  2. linux 离线安装mysql 配置开机自启动

    系统版本:centos7.8 | mysql版本:5.7.35 安装配置mysql数据库 mysql数据库配置开机自启动 1. 安装配置mysql数据库 mysql版本:5.7.35 点击下载 提取码 ...

  3. Linux下离线安装MySQL

    Linux下安装mysql 1 检查并卸载已安装mysql 命令:rpm -qa|grep -i mysql 命令:rpm -e --nodeps ‘上个命令后显示的本机已安装mysql依赖’ 如果存 ...

  4. Linux下安装mysql(离线安装和在线安装)

    一:在线安装mysql 1.首先检测一下,mysql之前有没有被安装 命令:rpm -qa | grep mysql 2.删除mysql的命令: rpm -e --nodeps `rpm -qa | ...

  5. CentOS 7离线安装MySQL 5.7

    系列文章首发平台为果冻想个人博客.果冻想,是一个原创技术文章分享网站.在这里果冻会分享他的技术心得,技术得失,技术人生.我在果冻想等待你,也希望你能和我分享你的技术得与失,期待. 前言 网上已经有那么 ...

  6. 离线安装mysql数据库

    开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...

  7. centOS 7 离线安装 MySQL 5.6 完美安装

    centOS 7 离线安装 MySQL 5.6 centOS 7 离线安装 MySQL 5.6 准备环境 1.离线 centOS 7(此处为 centOS 7 最小安装) 2.nginx 安装文件 ( ...

  8. ubuntu Linux离线安装软件包

    ubuntu Linux离线安装软件包 http://www.myir-tech.com/bbs/thread-337-1-1.html(出处: 米尔科技论坛) 方法一 在可上网的ubuntu电脑上, ...

  9. 【云服务器部署】---Linux下安装MySQL

    [云服务器部署]---Linux下安装MySQL 有关如何阿里云ECS建网站,推荐一片文章,我是是通过这篇文章安装tomcat和jdk的 网址:阿里云ECS建网站(建站)超详细全套完整图文教程! 注意 ...

  10. Linux 下安装mysql 5.7

    Linux 下安装mysql 5.7 本人首次安装时按照菜鸟教程的步骤一步一步来的,结果意外的是 装成5.6了,而且各种无厘头的问题,例如无法启动... 本文参照 大佬:‘这个名字想了很久~’ 的&l ...

随机推荐

  1. IIC通信协议

    1.IIC 通信协议简介 I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的, 由于它引脚少,硬件实现简单,可扩展性强,不需要 USART.CAN 等 ...

  2. 【python基础】if语句-条件测试

    1.初识if语句 编程时经常需要检查一系列条件,并据此决定采取什么措施.在Python中,使用if语句能够检查程序的当前状态,并据此采取相应措施. 其语法格式之一: 假设有一个学员名单的列表,想将其中 ...

  3. 新风向标:学术界开始从 Python 转向 Rust

    作者 | Jeffrey M. Perkel 策划 | Tina 来源 | Rust语言中文社区 Rust 现在已经越来越受到科学家们的欢迎了,比起 Python,Rust 有着更高效的性能,同时在社 ...

  4. Python 列表推导式:简洁、高效的数据操作艺术

    Python 列表推导式:简洁.高效的数据操作艺术 Python 的列表推导式,这个看似简单的语法糖,实则内含无限威力.在 Python 代码编写中,列表推导式的灵活性和简洁性让它成为了不可或缺的一部 ...

  5. FTL潜规则:调优,才是算法精华

    前言 在存储领域中有一个FTL的概念,这是一种Flash的内存管理算法,属于各个厂商的核心机密,每个厂商的处理方式不同,有的处理简单,有的处理复杂. FTL,即Flash Translations l ...

  6. Scalpel:解构API复杂参数Fuzz的「手术刀」

    Scalpel简介 Scalpel是一款自动化Web/API漏洞Fuzz引擎,该工具采用被动扫描的方式,通过流量中解析Web/API参数结构,对参数编码进行自动识别与解码,并基于树结构灵活控制注入位点 ...

  7. 前端Vue仿滴滴打车百度地图定位查找附近出租车或门店信息(更新版)

    前端vue仿滴滴打车百度地图定位查找附近出租车或门店信息, 下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12982 效果图如下 ...

  8. 如何构建您的第一部AWS机器学习服务

    目录 <如何构建您的第一部 AWS 机器学习服务> 背景介绍 随着深度学习的广泛应用于机器学习领域的各个方面,AWS 成为了一种重要的深度学习平台.作为 AWS 机器学习服务的第一部,如何 ...

  9. Oracle将用户权限移植到另一个用户上

    问题描述:往往有些需求,A用户依赖于B用户创建,A用户想要获取B用户的权限,oracle没找到有命令可以直接继承,只能写一些语句来代替 1.查询用户下的权限有哪些 SET PAGESIZE 100 S ...

  10. PostgreSQL 12 文档: PostgreSQL 服务端程序

    PostgreSQL 服务器应用   这一部分包含PostgreSQL服务器应用和支持工具的参考信息.这些命令只在数据库服务器所在的主机上运行才有用.其他工具程序在PostgreSQL 客户端应用中列 ...