CentOS安装MySQL的两种方式——RPM和YUM
<h3 id="0首先确认是否安装过mysql">0、首先确认是否安装过MySQL</h3><p><code>yum list installed | grep mysql</code><br>
<code>rpm -qa | grep mysql</code><br>
若果有安装,需要先删除旧版本。<code>yum remove mysql</code></p>
<h3 id="一通过官网下载tar压缩包或者直接下载rpm安装包">一、通过官网下载tar压缩包(或者直接下载RPM安装包)</h3>
<p>1.打开MySQL官网下载地址,选择适合自己的版本,下载tar压缩包。</p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429140426347-149245549.png" alt="image" loading="lazy"></p>
<p>2.通过WinSCP等工具上传到CentOS服务器并解压</p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429142501363-1411578890.png" alt="image" loading="lazy"></p>
<p>创建MySQL的安装路径<code>mkdir /usr/local/MySQL</code><br>
解压上传好的MySQL压缩包,解压后得到若干RPM安装包</p>
<pre><code># tar -xvf /root/temp/mysql-5.7.41-1.el7.x86_64.rpm-bundle.
tar -C /usr/local/MySQL
mysql-community-client-5.7.41-1.el7.x86_64.rpm
mysql-community-common-5.7.41-1.el7.x86_64.rpm
mysql-community-devel-5.7.41-1.el7.x86_64.rpm
mysql-community-embedded-5.7.41-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.41-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.41-1.el7.x86_64.rpm
mysql-community-libs-5.7.41-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.41-1.el7.x86_64.rpm
mysql-community-server-5.7.41-1.el7.x86_64.rpm
mysql-community-test-5.7.41-1.el7.x86_64.rpm
</code></pre>
<p>3.安装RPM包<br>
因为是使用RPM安装软件包,所以需要手动解决依赖关系,一般安装 MySQL 时需要按照以下顺序安装这些软件包。首先切换到MySQL的安装路径<code>cd /usr/local/MySQL</code>,然后依次执行下列安装命令</p>
<pre><code>rpm -ivh mysql-community-common-5.7.41-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.41-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.41-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.41-1.el7.x86_64.rpm
</code></pre>
<p>其他安装包是MySQL的开发文件或者测试文件,非必须安装。<br>
<strong>如果安装mysql-community-server-5.7.41-1.el7.x86_64.rpm的时候,出现依赖关系的错误,可能是由于系统没有安装依赖项,根据提示安装缺少的依赖项再执行mysql-community-server-5.7.41-1.el7.x86_64.rpm的安装即可</strong><br>
例如我的CentOS是新安装的镜像,没有安装任何依赖项,有如下输出信息</p>
<pre><code># rpm -ivh mysql-community-server-5.7.41-1.el7.x86_64.rpm
warning: mysql-community-server-5.7.41-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
error: Failed dependencies:
/usr/bin/perl is needed by mysql-community-server-5.7.41-1.el7.x86_64
libaio.so.1()(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-5.7.41-1.el7.x86_64
perl(Getopt::Long) is needed by mysql-community-server-5.7.41-1.el7.x86_64
perl(strict) is needed by mysql-community-server-5.7.41-1.el7.x86_64
</code></pre>
<p>使用软件包管理工具(例如yum)来安装这些依赖项<br>
<code>yum install perl libaio libnuma perl-Getopt-Long perl-strict numactl</code><br>
安装完依赖项之后,再安装MySQL服务,即可安装成功。<br>
至此,RPM方式安装MySQL就结束了。</p>
<h3 id="二通过yum的方式安装">二、通过YUM的方式安装</h3>
<p>这种安装方式的好处是不用手动管理依赖关系,YUM(软件包管理工具)会自动按顺序安装依赖项并解决依赖关系。但是不能安装任意我们想安装的历史版本。</p>
<p>1.先卸载上面安装过的5.7.41版本的MySQL<br>
查看当前以及安装的MySQL<br>
<code>yum list installed | grep mysql</code><br>
<code>rpm -qa | grep mysql</code></p>
<pre><code># yum list installed | grep mysql
mysql-community-client.x86_64 5.7.41-1.el7 installed
mysql-community-common.x86_64 5.7.41-1.el7 installed
mysql-community-libs.x86_64 5.7.41-1.el7 installed
mysql-community-server.x86_64 5.7.41-1.el7 installed
</code></pre>
<p>卸载这四个软件包<br>
<code>yum remove mysql-community-client mysql-community-common mysql-community-libs mysql-community-server</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429152106792-390822457.png" alt="image" loading="lazy"></p>
<p>再次确认是否卸载成功</p>
<pre><code># rpm -qa | grep mysql
#
</code></pre>
<p>2.查看CentOS服务器上是否已经存在yum安装包<br>
<code>yum list | grep mysql</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429152629741-479929751.png" alt="image" loading="lazy"></p>
<p>上图不存在与 MySQL 服务器软件本身相关的软件包。这些列表显示了与 MySQL 数据库相关的其他软件包,如 MySQL 的客户端库、连接器、PHP 的 MySQL 扩展等。</p>
<p>3.获取MySQL官方yum源并安装<br>
①MySQL官方源网站获取yum源地址,具体步骤如下</p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429154329264-738063380.png" alt="image" loading="lazy"></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429154359601-484623527.png" alt="image" loading="lazy"></p>
<p>把复制的下载链接在CentOS服务器下载yum源(如果没有安装wget的话,先安装wget<code>yum install wget</code>)<br>
<code>wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429155039818-1937214797.png" alt="image" loading="lazy"></p>
<p>②安装yum源<br>
<code>rpm -Uvh mysql80-community-release-el7-11.noarch.rpm</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429155357009-462666090.png" alt="image" loading="lazy"></p>
<p>查看所有版本的MySQL的yum源<br>
<code>yum makecache</code><br>
<code>yum repolist all | grep mysql</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429155828021-1000430803.png" alt="image" loading="lazy"></p>
<p>可以看到8.0版本的yum源是enable,而5.7版本是disable,但是我要安装5.7版本,按照下面命令禁用8.0,启用5.7即可<br>
<code>yum-config-manager --disable mysql80-community</code><br>
<code>yum-config-manager --enable mysql57-community</code></p>
<details>
<summary>点击查看代码</summary>
<pre><code>
# yum-config-manager --disable mysql80-community
Loaded plugins: fastestmirror, ovl
======================================== repo: mysql80-community =========================================
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = http://repo.mysql.com/yum/mysql-8.0-community/el/7/x86_64
cache = 0
cachedir = /var/cache/yum/x86_64/7/mysql80-community
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = 0
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/mysql80-community/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/mysql80-community/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023,
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022,
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
hdrdir = /var/cache/yum/x86_64/7/mysql80-community/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = MySQL 8.0 Community Server
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/mysql80-community
pkgdir = /var/cache/yum/x86_64/7/mysql80-community/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = mysql80-community/x86_64
ui_repoid_vars = releasever,
basearch
username =
# yum-config-manager --enable mysql57-community
Loaded plugins: fastestmirror, ovl
======================================== repo: mysql57-community =========================================
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64
cache = 0
cachedir = /var/cache/yum/x86_64/7/mysql57-community
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = 1
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/mysql57-community/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/mysql57-community/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023,
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022,
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
hdrdir = /var/cache/yum/x86_64/7/mysql57-community/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = MySQL 5.7 Community Server
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/mysql57-community
pkgdir = /var/cache/yum/x86_64/7/mysql57-community/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = mysql57-community/x86_64
ui_repoid_vars = releasever,
basearch
username =
</code></pre>
</details>
<p>③安装MySQL软件包<br>
<code> yum -y install mysql-community-server</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429161607575-2063095146.png" alt="image" loading="lazy"></p>
<h3 id="三启动mysql">三、启动MySQL</h3>
<p>查看MySQL服务状态<br>
<code>systemctl status mysqld</code></p>
<p><img src="https://img2024.cnblogs.com/blog/1719615/202404/1719615-20240429162455660-944505035.png" alt="image" loading="lazy"></p>
<p>启动MySQL服务<br>
<code>systemctl start mysqld</code></p><br><br>
来源:https://www.cnblogs.com/shixiaobin/p/18165871
頁:
[1]