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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 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知识的学习了。
==感觉有帮助的朋友的兄弟给个三连支持一下,跪谢!!!==

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
26天前
|
SQL 关系型数据库 MySQL
mysql主从复制概述和配置
【10月更文挑战第22天】MySQL 主从复制是一种将主服务器的数据复制到一个或多个从服务器的技术,实现读写分离,提高系统性能和可用性。主服务器记录变更日志,从服务器通过 I/O 和 SQL 线程读取并应用这些变更。适用于读写分离、数据备份和恢复、数据分析等场景。配置步骤包括修改配置文件、创建复制用户、配置从服务器连接主服务器并启动复制进程。
|
12天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
44 3
|
13天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
27 2
|
15天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
15天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
59 2
|
19天前
|
监控 安全 Linux
CentOS7下安装配置ntp服务的方法教程
通过以上步骤,您不仅能在CentOS 7系统中成功部署NTP服务,还能确保其配置合理、运行稳定,为系统时间的精确性提供保障。欲了解更多高级配置或遇到特定问题,提供了丰富的服务器管理和优化资源,可作为进一步学习和求助的平台。
38 1
|
20天前
|
SQL 关系型数据库 MySQL
Mysql中搭建主从复制原理和配置
主从复制在数据库管理中广泛应用,主要优点包括提高性能、实现高可用性、数据备份及灾难恢复。通过读写分离、从服务器接管、实时备份和地理分布等机制,有效增强系统的稳定性和数据安全性。主从复制涉及I/O线程和SQL线程,前者负责日志传输,后者负责日志应用,确保数据同步。配置过程中需开启二进制日志、设置唯一服务器ID,并创建复制用户,通过CHANGE MASTER TO命令配置从服务器连接主服务器,实现数据同步。实验部分展示了如何在两台CentOS 7服务器上配置MySQL 5.7主从复制,包括关闭防火墙、配置静态IP、设置域名解析、配置主从服务器、启动复制及验证同步效果。
Mysql中搭建主从复制原理和配置
|
29天前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
91 1
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
102 64
|
1月前
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
111 61