【MySQL】1.在Centos 7上如何卸载/安装/配置MySQL(保姆级教程)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【MySQL】1.在Centos 7上如何卸载/安装/配置MySQL(保姆级教程)

MySQL 在 Centos 7环境安装

说明:
• 安装与卸载中,用户全部切换成为root,⼀旦安装,普通用户能使用的
• 初期练习,mysql不进行用户管理,全部使用root进行,尽快适应mysql语句,后⾯学习用户管理后再考虑新建普通用户

1. 卸载不要的环境

[root@iZ0jl69kyvg0h181cozuf5Z ~]# ps ajx |grep mariadb # 先检查是否有mariadb存在
13529 13551 13550 13529 pts/0    13550 S+       0   0:00 grep --color=auto mariadb

这里博主是新建的云服务器,所以这些东西都没有(如果有的话,如下列代码所示:)

[whb@VM-0-3-centos ~]$ ps ajx |grep mariadb # 先检查是否有mariadb存在
13134 14844 14843 13134 pts/0 14843 S+ 1005 0:00 grep --color=auto mariadb
19010 19187 19010 19010 ? -1 Sl 27 16:55 /usr/libexec/mysqld --
basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin 
--log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid
--socket=/var/lib/mysql/mysql.sock

如果存在mariadb 要先将mariadb服务先停止

[whb@VM-0-3-centos ~]$ systemctl stop mariadb.service # 停⽌mariadb 服务
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to manage system services or units.
Authenticating as: root
Password:
==== AUTHENTICATION COMPLETE ===

停止完服务如下所式:

[whb@VM-0-3-centos ~]$ ps axj |grep mariadb # 停⽌完成
13134 14976 14975 13134 pts/0 14975 S+ 1005 0:00 grep --color=auto mariadb

2. 检查系统安装包

[whb@VM-0-3-centos ~]$ rpm -qa | grep mariadb
or
[whb@VM-0-3-centos ~]$ rpm -qa | grep mysql
mysql-community-common-5.7.41-1.el7.x86_64
mysql-community-server-5.7.41-1.el7.x86_64
mysql57-community-release-el7-11.noarch
mysql-community-client-5.7.41-1.el7.x86_64
mysql-community-libs-5.7.41-1.el7.x86_64

3. 卸载这些默认安装包

#卸载显⽰出来的mariadb/mysql安装包
[whb@VM-0-3-centos ~]$ sudo yum remove mariadb # 还是试着将上⾯的包都⼀个⼀个卸载吧
# 备份/etc/my.cnf,备份/var/lib/mysql数据(如果不需要再使用之前MySQL当中的数据可以不用进行备份)

4. 获取mysql官方yum源

获取mysql官⽅yum源 点击该链接获取yum源!
⼀定要看下⾯的⽂字!如果后⾯⾃⼰安装不成功,就看看这个
注意:最好安装和自己系统⼀致的mysql版本,否则可能会存在软件兼容性问题
在这里插入图片描述
在这里插入图片描述

# 查看⾃⼰的系统版本
[root@iZ0jl69kyvg0h181cozuf5Z ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

可以看到这里博主的系统是CentOS 7.9 版本的
在这里插入图片描述
如果是7.1 / 7.2 .... 没找到后缀相同的版本,选择下载el7.rpm即可
在这里插入图片描述
下载完成后放到桌面上
执行rz命令,将安装包导入到Linux系统

如果出现如下报错:
请下载lrzsz安装包
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
执行rz命令找到自己下载的安装包
在这里插入图片描述
到这里rpm的安装包就安装完成啦!

5. 安装mysql yum 源,对比前后yum源

查看你本地的yum源 [yum源各不相同,我们可以发现没有mysql相关的yum源]
[root@iZ0jl69kyvg0h181cozuf5Z ~]# ls /etc/yum.repos.d/ -l
total 8
-rw-r--r-- 1 root root 675 Mar 10 13:16 CentOS-Base.repo
-rw-r--r-- 1 root root 230 Mar 10 13:16 epel.repo

安装mysql的yum源

[root@iZ0jl69kyvg0h181cozuf5Z ~]# rpm -ivh mysql57-community-release-el7-9.noarch.rpm 
warning: mysql57-community-release-el7-9.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql57-community-release-el7-9  ################################# [100%]
[root@iZ0jl69kyvg0h181cozuf5Z ~]# ls /etc/yum.repos.d/ -l
total 16
-rw-r--r-- 1 root root  675 Mar 10 13:16 CentOS-Base.repo
-rw-r--r-- 1 root root  230 Mar 10 13:16 epel.repo
-rw-r--r-- 1 root root 1416 Sep 12  2016 mysql-community.repo
-rw-r--r-- 1 root root 1440 Sep 12  2016 mysql-community-source.repo

前后进行对比发现MySQL 的 yum 源安装上了

# 安装完成后,这个rpm的安装包就没有作用了 可以进行删除命令
[root@iZ0jl69kyvg0h181cozuf5Z ~]# ll
total 12
-rw-r--r-- 1 root root 9224 Mar 11 08:20 mysql57-community-release-el7-9.noarch.rpm
[root@iZ0jl69kyvg0h181cozuf5Z ~]# rm mysql57-community-release-el7-9.noarch.rpm 
rm: remove regular file ‘mysql57-community-release-el7-9.noarch.rpm’? y

6. 看看能不能正常工作

[root@iZ0jl69kyvg0h181cozuf5Z ~]#  yum list |grep mysql
mysql57-community-release.noarch         el7-9                         installed
akonadi-mysql.x86_64                     1.9.2-4.el7                   base     
anope-mysql.x86_64                       2.1.2-1.el7                   epel     
apr-util-mysql.x86_64                    1.5.2-6.el7_9.1               updates  
calligra-kexi-driver-mysql.x86_64        2.9.10-2.el7                  epel     
collectd-mysql.x86_64                    5.8.1-1.el7                   epel     
dmlite-plugins-mysql.x86_64              1.15.2-15.el7                 epel     
dovecot-mysql.x86_64                     1:2.2.36-8.el7                base     
dpm-copy-server-mysql.x86_64             1.13.0-1.el7                  epel     
dpm-name-server-mysql.x86_64             1.13.0-1.el7                  epel     
dpm-server-mysql.x86_64                  1.13.0-1.el7                  epel     
dpm-srm-server-mysql.x86_64              1.13.0-1.el7                  epel     
dspam-mysql.x86_64                       3.10.2-12.el7                 epel     
exim-mysql.x86_64                        4.97.1-1.el7                  epel     
freeradius-mysql.x86_64                  3.0.13-15.el7                 base     
fts-mysql.x86_64                         3.12.0-1.el7                  epel     
gnokii-smsd-mysql.x86_64                 0.6.31-17.el7                 epel     
holland-mysql.noarch                     1.1.22-1.el7                  epel     
holland-mysqldump.noarch                 1.1.22-1.el7                  epel

7. 安装mysql服务

[root@iZ0jl69kyvg0h181cozuf5Z ~]# yum install -y mysql-community-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-server.x86_64 0:5.7.44-1.el7 will be installed
--> Processing Dependency: mysql-community-common(x86-64) = 5.7.44-1.el7 for package: mysql-community-server-5.7.44-1.el7.x86_64
--> Processing Dependency: mysql-community-client(x86-64) >= 5.7.9 for package: mysql-community-server-5.7.44-1.el7.x86_64
...
Installing : mysql-community-common-5.7.33-1.el7.x86_64 #公共模块
Installing : mysql-community-libs-5.7.33-1.el7.x86_64 #库
Installing : mysql-community-client-5.7.33-1.el7.x86_64 #客⼾端
Installing : mysql-community-server-5.7.33-1.el7.x86_64 #服务器
... #安装了服务和客⼾端

安装遇到秘钥过期的问题:

Failing package is: mysql-community-client-5.7.39-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

解决⽅案:

# 执行该命令再重新进行安装
[root@iZ0jl69kyvg0h181cozuf5Z ~]# rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

在这里插入图片描述

8. 查看配置文件和数据存储位置

[root@iZ0jl69kyvg0h181cozuf5Z ~]# ls /etc/my.cnf
/etc/my.cnf
[root@iZ0jl69kyvg0h181cozuf5Z ~]# which mysqld
/usr/sbin/mysqld
[root@iZ0jl69kyvg0h181cozuf5Z ~]# which mysql
/usr/bin/mysql

9. 启动服务并查看

[root@iZ0jl69kyvg0h181cozuf5Z ~]# systemctl start mysqld
[root@iZ0jl69kyvg0h181cozuf5Z ~]# ps axj | grep mysqld
    1 13984 13983 13983 ?           -1 Sl      27   0:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
13529 14013 14012 13529 pts/0    14012 S+       0   0:00 grep --color=auto mysqld

我们可以看到现在就有了mysqld的进程

10. 登陆MySQL账号

因为登录需要密码,而刚开始是由电脑自动生成的随机密码(也不好找) 所以我们第一次登录选择跳过验证!

[root@iZ0jl69kyvg0h181cozuf5Z ~]# vim /etc/my.cnf[mysqld]最后⼀栏配置(不知道是什么,就放在配置⽂件最后) 加⼊: skip-grant-tables 选项,
并保存退出

在这里插入图片描述
不会进行文档保存可以看看博主之前关于Linux系统的命令博客
保存完之后重启mysql服务

[root@iZ0jl69kyvg0h181cozuf5Z ~]# systemctl restart mysqld     # 重启mysql服务
# 登录成功如下所示:
[root@iZ0jl69kyvg0h181cozuf5Z ~]# mysql -uroot -p  #要输入密码 直接按回车即可
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.44 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

那么接下来就可以执行mysql命令了

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

11. 设置开机启动[可以不设]

[root@iZ0jl69kyvg0h181cozuf5Z ~]# systemctl enable mysqld
[root@iZ0jl69kyvg0h181cozuf5Z ~]# systemctl daemon-reload

因为云服务器一般都是保持启动状态的,所以设备设置都无所谓╮(╯_╰)╭

12. 配置my.cnf

[root@iZ0jl69kyvg0h181cozuf5Z ~]# vim /etc/my.cnf
# .... 
# 在/etc/my.cnf 文件当中添加以下三行即可!
port=3306
character-set-server=utf8
default-storage-engine=innodb

当然,完整的配置文件(/etc/my.cnf)放在下面啦!大家 Ctrl +C/V 即可!

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
port=3306
character-set-server=utf8
default-storage-engine=innodb

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
skip-grant-tables

因为之前我们启动了mysql服务,修改配置文件后要进行重新启动

[root@iZ0jl69kyvg0h181cozuf5Z ~]# ps axj | grep mysql
    1 14057 14056 14056 ?           -1 Sl      27   0:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
13529 14209 14208 13529 pts/0    14208 S+       0   0:00 grep --color=auto mysql
[root@iZ0jl69kyvg0h181cozuf5Z ~]# systemctl restart mysqld

那么到这里,整个MySQL安装的流程就结束啦!!! 可以进行MySQL知识的学习了。
==感觉有帮助的朋友的兄弟给个三连支持一下,跪谢!!!==

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
23天前
|
Linux 应用服务中间件 nginx
CentOS系统下的软件安装与卸载
CentOS系统中安装及卸载软件,常用yum命令安装及卸载软件包。yum是基于RPM的软件包管理器,可用于在CentOS中安装、更新、查询和移除软件包。yum命令可以从指定服务器下载rpm包并安装,能自动解决依赖问题。
133 78
|
5天前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
54 25
|
15天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
65 20
|
1月前
|
存储 Shell 网络安全
Centos7.9安装openldap
Centos7.9安装openldap
58 16
|
1月前
|
数据可视化 Linux 应用服务中间件
Centos7.9安装phpldapadmin
Centos7.9安装phpldapadmin
62 15
|
1月前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
1月前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
22天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
122 42
|
13天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
67 25