Centos7 两种方式安装 MySQL5.7 步骤 yum 、本地 tar 文件

news2024/11/18 20:19:59

一、使用 yum 源方式安装

1、卸载系统自带 mariadb

MariaDB Server 是最流行的开源 关系型数据库 之一。它由 MySQL 的原始开发者制作,并保证保持开源。

在 CentOS 7 中默认安装有 MariaDB

可忽略,安装完成之后可以直接覆盖掉 MariaDB。

  • 查看并卸载系统自带的 Mariadb
[root@localhost /]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost /]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost /]# rpm -qa|grep mariadb

2、下载并安装 MySQL 官方的 Yum

由于 CentOS 的 yum 源中没有 mysql,需要到 mysql 的官网下载 yum repo 配置文件

2.1 下载 mysql 的 yum 源配置
[root@localhost ~]#  wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

--2023-02-25 06:24:11--  https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
正在解析主机 repo.mysql.com (repo.mysql.com)... 23.212.157.5
...
...
100%[=========================================================================>] 25,680      --.-K/s 用时 0s      

2023-02-25 06:24:19 (180 MB/s) - 已保存 “mysql57-community-release-el7-11.noarch.rpm” [25680/25680])

[root@localhost ~]# ls
anaconda-ks.cfg       mysql57-community-release-el7-11.noarch.rpm  模板  图片  下载  桌面
initial-setup-ks.cfg  公共                                         视频  文档  音乐

2.2 安装 mysql 的 yum 源

命令执行完成后会在 /etc/yum.repos.d/ 目录下生成两个 repo 文件

mysql-community.repo

mysql-community-source.repo

[root@localhost ~]# yum -y install mysql57-community-release-el7-11.noarch.rpm

已加载插件:fastestmirror, langpacks
正在检查 mysql57-community-release-el7-11.noarch.rpm: mysql57-community-release-el7-11.noarch
mysql57-community-release-el7-11.noarch.rpm 将被安装
...
...
已安装:
  mysql57-community-release.noarch 0:el7-11                                                                        

完毕!
[root@localhost ~]# ls /etc/yum.repos.d/
CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo          mysql-community-source.repo
CentOS-CR.repo         CentOS-Media.repo      CentOS-x86_64-kernel.repo
CentOS-Debuginfo.repo  CentOS-Sources.repo    mysql-community.repo

2.3 使用 yum 方式安装 mysql
[root@localhost ~]# yum -y install mysql-server

2.3.1 安装过程中报错解决

如果没有提示错误可忽略

  • 问题描述
警告:/var/cache/yum/x86_64/7/mysql57-community/packages/mysql-community-common-5.7.41-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
mysql-community-common-5.7.41-1.el7.x86_64.rpm 的公钥尚未安装


mysql-community-libs-compat-5.7.41-1.el7.x86_64.rpm 的公钥尚未安装

 失败的软件包是:mysql-community-libs-compat-5.7.41-1.el7.x86_64
 GPG  密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
  • 解决方案
    运行命令rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
    在重新安装
运行命令
[root@localhost ~]# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
重新安装
[root@localhost ~]# yum -y install mysql-server

3、使用并设置 mysql

3.1 启动 mysql 并查看状态
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl status mysqld.service

3.2 获取临时密码

在第一次登录时需要,登录后可修改密码

[root@localhost ~]# cat /var/log/mysqld.log | grep password
2023-02-25T12:00:58.723624Z 1 [Note] A temporary password is generated for root@localhost: 1!L#qo3?d6i=

3.3 登录 mysql

密码为刚才获取的临时密码,即1!L#qo3?d6i=

[root@localhost ~]# mysql -u root -p
Enter password:

3.4 修改登录密码

如果密码设置太简单,会提示错误:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Wxq3012@';
Query OK, 0 rows affected (0.00 sec)

4、设置远程访问

4.1 开启 mysql 的远程访问权限

在 mysql 命令行中输入

命令中的用 % 代表所有 IP,如有需要,可换成指定 IP

mysql> grant all privileges on *.* to 'root'@'%' identified by 'Wxq3012@' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

4.2 为 firewalld 添加开放端口 3306
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
重启配置
[root@localhost ~]# firewall-cmd --reload
success

4.3 远程连接测试

5、至此,mysql 安装结束

完结,撒花

(二)、本地 tar 文件方式安装

1、获取 tar 安装包文件

1.1 下载 mysql5.7 安装包
  • MySQL 安装包官方下载地址:https://dev.mysql.com/downloads/mysql/5.7.html

1.2 包上传到 Linux 服务器

可以通过 XFTP 软件将安装包上传到服务器

  • 在 Linux 服务器根目录下创建两个文件夹:
    • tools 文件夹,存放软件安装包
    • az 文件夹,存放安装后的软件
[root@localhost /]# cd /
[root@localhost /]# mkdir tools
[root@localhost /]# mkdir az
  • 将下载好的 MySQL 安装包上传至 tools 文件夹下:
[root@localhost /]# ls /tools/
mysql-5.7.41-linux-glibc2.12-x86_64.tar

2、安装前查看设置

2.1 卸载 CentOS7 系统自带 mariadb

MariaDB Server 是最流行的开源关系型数据库之一。它由 MySQL 的原始开发者制作,并保证保持开源。

在 CentOS 7 中默认安装有 MariaDB

  • 查看并卸载系统自带的 Mariadb
[root@localhost /]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost /]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost /]# rpm -qa|grep mariadb

2.2 检查系统是否安装过 MySQL
[root@localhost /]# rpm -qa | grep mysql

  • 如果系统中 MySQL ,查询所有 MySQL 对应的文件夹,全部删除
[root@localhost /]# whereis mysql
 [root@localhost /]# find / -name mysql
2.3 检查有无 MySQL 用户组

检查有无 MySQL 用户组,没有则创建

  • 检查 mysql 用户组是否存在
[root@localhost /]# cat /etc/group | grep mysql
[root@localhost /]# cat /etc/passwd | grep mysql
  • 创建 mysql 用户组和用户
[root@localhost /]# groupadd mysql
[root@localhost /]# useradd -r -g mysql mysql

3、安装 MySQL5.7

3.1 解压下载的 tar 文件
  • 解压下载的 mysql-5.7.41-linux-glibc2.12-x86_64.tar 文件后
    得到 mysql-5.7.41-linux-glibc2.12-x86_64.tar.gz 文件
[root@localhost /]# mysql-5.7.41-linux-glibc2.12-x86_64.tar.gz

3.2 解压 tar.gz 文件
  • 解压 mysql-5.7.41-linux-glibc2.12-x86_64.tar.gz 文件到 /az/ 文件夹

3.3 修改文件夹名称
  • 修改文件夹名称为 mysql5.7
[root@localhost az]# mv mysql-5.7.41-linux-glibc2.12-x86_64/ mysql5.7
[root@localhost az]# ls
mysql5.7

3.4 更改文件夹权限
  • 为了避免权限问题,更改 mysql5.7 目录下所有文件夹所属的用户组、用户以及权限
[root@localhost az]# chown -R mysql:mysql /az/mysql5.7/
[root@localhost az]# chmod -R 755 /az/mysql5.7/

3.5 初始化 mysql 和获取密码
  • ** 进入 /az/mysql5.7/bin/ 目录,编译安装并初始化 mysql **
    务必记住数据库管理员临时密码
[root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/az/mysql5.7/data --basedir=/az/mysql5.7
2023-02-23T22:43:52.131986Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
...
...
2023-02-23T22:43:52.554378Z 1 [Note] A temporary password is generated for root@localhost: Pyq#VB8mieDS

3.6 编译 my.cnf 配置文件
3.6.1 修改 my.cnf 配置文件
[root@localhost bin]# vim /etc/my.cnf

[mysqld]
datadir=/az/mysql5.7/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
表名存储在磁盘是小写的,但是比较的时候是不区分大小写
lower_case_table_names=1

3.6.1 修改 my.cnf 权限
[root@localhost bin]# chmod -R 755 /etc/my.cnf
3.7 编译 mysql.server 文件

因为没有安装下 / usr/local/mysq 目录下,所以需要修改成安装的 / az/mysql5.7 目录。

[root@localhost bin]# vim /az/mysql5.7/support-files/mysql.server

4、设置 mysql 服务

4.1 查询服务
[root@localhost ~]# ps -ef | grep mysql
root       2031   1778  0 06:27 pts/0    00:00:00 tar -x mysql-5.7.41-linux-glibc2.12-x86_64.tar
root       2396   1778  0 06:55 pts/0    00:00:00 grep --color=auto mysql
[root@localhost ~]# ps -ef | grep mysqld
root       2398   1778  0 06:55 pts/0    00:00:00 grep --color=auto mysqld

4.2 启动服务
[root@localhost ~]# /az/mysql5.7/support-files/mysql.server start
Starting MySQL.Logging to '/az/mysql5.7/data/localhost.localdomain.err'.
 SUCCESS!
4.3 添加软连接,并重启服务
[root@localhost ~]# ln -s /az/mysql5.7/support-files/mysql.server /etc/init.d/mysql
[root@localhost ~]# ln -s /az/mysql5.7/bin/mysql /usr/bin/mysql


[root@localhost ~]# service mysql restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 
[root@localhost ~]#

5、使用并设置 mysql

5.1 登录 mysql

密码就是初始化时生成的临时密码

[root@localhost ~]# mysql -u root -p
Enter password:

5.2 修改密码
mysql> set password for root@localhost = password('root');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql>

6、设置远程访问

6.1 开启 mysql 的远程访问权限
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set user.Host='%' where user.User='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

6.2 设置开机自启
将服务文件拷贝到init.d下,并重命名为mysql
[root@localhost ~]# cp /az/mysql5.7/support-files/mysql.server /etc/init.d/mysqld

赋予可执行权限
[root@localhost ~]# chmod +x /etc/init.d/mysqld

添加服务
[root@localhost ~]# chkconfig --add mysqld

显示服务列表
[root@localhost ~]# chkconfig --list

6.3 开放 3306 端口
开放3306端口命令
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success

重启防火墙
[root@localhost ~]# firewall-cmd --reload
success

6.4 远程连接测试

7、至此,mysql 安装结束

完结,撒花

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1407013.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何在阿里云提交使用工单

有时候大家在使用阿里云的服务时候,可能会遇到一些问题,或许是云服务器如何升级了如何改套餐啊之类的,亦或者是域名ICP备案啊看进度啊等等问题,遇到问题怎么办不要慌。我们可以使用阿里云的工单系统,阿里云工单系统可以…

虚拟机网络配置及Moba工具的使用

A、设置IP和网关 1、设置IP [roothadoop00 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 (修改如下标红内容,没有的就添加) DEVICEeth0 HWADDR08:00:27:BD:9D:B5 #不用改 TYPEEthernet UUID53e4e4b6-9724-43ab-9da7-68792e611031…

Confluence6+mysql5.7破j安装避坑详细记录

目录 一、前言 二、下载与安装 1、版本和安装环境 2、安装数据库 3、配置数据库 4、安装confluence 三、Pj confluence 1、选择语言和产品安装 2、Pj 3、上传mysql驱动 4、重启Confluence服务继续安装 四、Confluence重启卸载方法 重启方法 方法一 方法二 卸载…

acwing 动态规划dp 0 1背包问题

前言 hello小伙伴们,最近由于个人放假原因颓废了一段时间很长时间没有更新CSDN的内容了,唉,毕竟懂得都懂寒暑假静下心来学习的难度远比在学校里大的多。 但是,也不是毫无办法克服,今天我来了我们当地的一家自习室来学习…

《WebKit 技术内幕》学习之四(3): 资源加载和网络栈

3. 网络栈 3.1 WebKit的网络设施 WebKit的资源加载其实是交由各个移植来实现的,所以WebCore其实并没有什么特别的基础设施,每个移植的网络实现是非常不一样的。 从WebKit的代码结构中可以看出,网络部分代码的确比较少的,它们都在…

Mybatis 全局配置文件(三)

文章目录 第一章:概述第二章:properties (了解)第三章:settings第四章:typeAliases (别名处理器)第五章:typeHandlers (类型处理器)第六章:plugins(插件)第七章:environments (环境)第八章&…

k8s-基础知识(Service,NodePort,CusterIP,NameSpace,资源限制)

Node Node 是 Pod 真正运行的主机,可以是物理机,也可以是虚拟机。 Annotations 原文链接 Annotations 是 key/value 形式附加于对象的注解。不同于 Labels 用于标志和选择对象,Annotations 则是用来记录一些附加信息,用来辅助应…

深入理解JS语法与变量

深入理解JS语法与变量 前言初识JavaScriptJavaScript的语言风格和特性 JavaScript的书写位置认识输出语句学会处理报错REPL 环境 变量定义变量改变变量变量的合法命名变量的默认值变量的常见错误等号表示赋值同时声明多个变量 变量声明提升注意事项 结语 前言 在现代Web开发中…

Vue构建项目断点调试过程问题总结

Vue构建项目断点调试过程问题总结 问题背景 前端开发过程中,碰到问题时需要debug,快速分析和解决问题。一般除了console.log的方式打印日志外,更方便直观的方式就是打断点debug。本文对vue项目debug过程可能碰到的问题进行总结,…

Kafka(二)原理详解

一 、kafka核心总控制器(Controller) 在Kafka集群中会有一个或者多个broker,其中有一个broker会被选举为控制器(Kafka Controller),它负责管理整个集群中所有分区和副本的状态。 作用:leader副…

FireAlpaca:轻量级、免费的Mac/Win绘图软件,让你的创意如火燃烧!

FireAlpaca是一款轻量级、免费的绘图软件,适用于Mac和Win系统,让你的创作过程更加快捷、简便。无论是绘制漫画、插图、设计作品还是进行简单的图片编辑,FireAlpaca都能满足你的需求。 首先,FireAlpaca具有直观友好的用户界面&…

国辰智企资产管理系统:实现资产精细化管理的首选

在市场竞争日益激烈、金融环境不断变化的背景下,有效的资产管理已成为企业保持竞争优势和实现财务目标的关键。传统资产管理方法已显不足以适应现代经济环境的快速变化。为了迎接这一挑战,越来越多企业纷纷采用先进的资产管理系统,以提高效率…

【面试突击】微信亿级朋友圈的社交系统设计

微信亿级朋友圈的社交系统设计 先来说一下业务需求吧: 每个用户可以发朋友圈,可以点赞,评论可以设置权限,不看某些人朋友圈、不让某些人看你的朋友圈可以刷朋友圈中其他人的动态 对于这样的系统设计,主要从业务来考虑…

Springboot项目启动报错:Command line is too long问题解决

启动项目报错:Error running ‘xxxxxxxx’: Command line is too long. Shorten command line for ‘xxxxxxxx’ or also for Application default configuration 方法一 点击提示中的:default:然后在弹出窗口中选择:JAR xxxx xxx&#xff0…

搭建k8s集群实战(一)系统设置

1、架构及服务 Kubernetes作为容器集群系统,通过健康检查重启策略实现了Pod故障自我修复能力,通过调度算法实现将Pod分布式部署,并保持预期副本数,根据Node失效状态自动在其他Node拉起Pod,实现了应用层的高可用性。 …

手势识别MATLAB代码

手势识别是智能设备常用的需求, 下面我们用MATLAB来识别手部的形态: 主程序main.m clc;clear all;close all;%清除命令行和窗口 imimread(DSC05815.JPG); [skin,bwycbcr,w,h] hand_segmentation(im); im1bwycbcr; % se strel(ball,[1 1 1;1 1 1;1 1 1]); im1 imdilate(im…

HarmonyOS鸿蒙学习笔记(22)@Builder实战

Builder标签是一种更轻量的UI元素复用机制,下面通过一个简单的例子来具体说明: 比如如下布局效果:上面是一个轮播的Swiper,下面是一个Grid 布局代码如下: build() {Navigation() {Scroll() {Column({ space: CommonConstants.CO…

html+css浮动小练习

以下是代码&#xff1a; <!DOCTYPE html> <!-- 2024.1.23 --> <html lang"en"> <head><meta charset"UTF-8"><title>浮动布局练习</title><style>.leftfix{float: left;}.rightfix{float:right;}/* 问题…

Leetcode—24. 两两交换链表中的节点【中等】

2023每日刷题&#xff08;八十七&#xff09; Leetcode—24. 两两交换链表中的节点 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x),…

如何进行H.265视频播放器EasyPlayer.js的中性化设置?

H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器&#xff0c;可支持多种流媒体协议播放&#xff0c;可支持H.264与H.265编码格式&#xff0c;性能稳定、播放流畅&#xff0c;能支持WebSocket-FLV、HTTP-FLV&#xff0c;HLS&#xff08;m3u8&#…