[Linux] 使用Yum在CentOS上安装MySQL
跟随官网上的安装教程:https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html
官网上还有一个QuickGuide版本: https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
过程有一点不同。跟随任意一个教程都OK。
这里针对第一次安装。如果是以前安装的有残留,应该会有一些麻烦。
MySQL的适用版本没有单独列出CentOS。因为CentOS也使用的Yum Repository,因此我们跟随同样使用Yum的Red Hat Linux教程进行安装。
1. 添加MySQL Yum Repositroy
首先我们将MySQL的Yum源添加到系统Repository表中。按以下步骤:
a. 到以下地址下载MySQL Yum Repository: https://dev.mysql.com/downloads/repo/yum/
注意没有单独列出CentOS,我们选择Red Hat版本. CentOS6选择6版本, CentOS7选择7版本。(查看系统版本命令:head -n 1 /etc/issue)。
页面的download按钮并不是直接指向下载位置,需要通过浏览器下载。
可以将本地下载的文件发送到服务器,或者查看浏览器下载文件的源地址,在服务器上通过wget 源地址来下载文件。
注意到下载包前缀可能是mysql80, 不是我要的mysql版本? 这不是问题,先下载。
b. 通过以下命令安装对应版本的repository
sudo yum localinstall platform-and-version-specific-package-name.rpm
通过以下命令检查是否已成功安装repository。
yum repolist enabled | grep "mysql.*-community.*"
会看到相应的mysql包.
2. 选择需要的MySQL发行版本
repository下载安装后,默认用户要安装的是最新版本(比如我看到的是mysql80)。如果想要安装老版本的MySQL,需要修改源。
查看可用的mysql的全部版本:
yum repolist all | grep mysql
通过yum-config-manager启用对应版本的mysql。如我要用57版本:
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
检查是否启用了正确的版本:
yum repolist enabled | grep mysql
3. 安装MySQL
yum install mysql-community-server
命令会自动安装需要的依赖包
4. 启动MySQL服务器
service mysqld start
没什么问题的话会看到start OK的提示。
也可以查看服务状态:
service mysqld status
57之后好像默认启用root密码。查看系统随机生成的密码:
grep 'temporary password' /var/log/mysqld.log
登陆MySQL,修改root密码:
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
现在的密码策略强制要求至少一个大写字母,一个小写字母,一个数字,一个特别字符(标点),总长度不少于8个字符,否则应该会报错。
配置文件路径:/etc/my.cnf
配置文件中的配置项:
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
log-error = /var/log/mysqld.log
pid-file = /var/run/mysqld/mysqld.pid
另外针对EL7系统的用户,MySQL和以下包有冲突,不能同时安装
○ akonadi-mysql
[BUG]
以上就是完整的安装教程。下面讲一下个人碰到的问题及解决办法。
Error: Package: mysql-community-client-5.7.17-1.el7.i686 (mysql57-community)
Requires: libstdc++.so.6(GLIBCXX_3.4.15)
Error: Package: mysql-community-server-5.7.17-1.el7.i686 (mysql57-community)
Requires: systemd
Error: Package: mysql-community-server-5.7.17-1.el7.i686 (mysql57-community)
Requires: libstdc++.so.6(GLIBCXX_3.4.15)
Error: Package: mysql-community-server-5.7.17-1.el7.i686 (mysql57-community)
Requires: libc.so.6(GLIBC_2.17)
这是第一步中选择的repository版本有误导致的。我是CentOS6.8的系统,却下载了EL7的源,因此报错。
解决方法是先清理之前的源,然后重新安装EL6的源。(反之亦然)
yum remove mysql80-community-release-el7-2.noarch
yum clean all
yum localinstall mysql80-community-release-el6-2.noarch.rpm
然后按上面的步骤进行安装, 应该是顺利的。如果碰到其他问题,请根据情况自行解决。
我在解决这个问题的过程中,好像因为没有执行yum clean all命令,导致重新安装了el6的源后依然报错。
查阅/etc/yum.repos.d下的mysql-community.repo文件,发现源路径已经全部变成el6,然而错误信息中依然提示xxx.el7.xxx的包缺少xxx。查阅了网上的资料,执行了yum clean all后再安装mysql-community-server,就一切顺利了。
[Linux] 使用Yum在CentOS上安装MySQL的更多相关文章
- 在centos上安装mysql
本文依然是用的xftp上传gz文件,然后在xShell上操作的,如果没有安装使用这两个文件的请查阅之前的博客. 1.将下载好的文件用xftp上传到对应的位置. 2.解压文件:tar -zvxf m ...
- Linux CentOS上安装 MySQL 8.0.16
前言: 因为我需要在我新安装的Linux CentOS系统服务器中安装和配置MySQL服务器,然而对于我们这种Linux使用小白而言在Linux系统中下载,解压,配置MySQL等一系列的操作还是有些耗 ...
- Linux1 在Linux(CentOS)上安装MySql详细记录
前记: 毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+To ...
- 使用yum方式在centOS上安装mysql
1.操作系统及MySQL版本 1.1 操作系统版本 CentOS release 6.5 (Final) 1.2 MySQL版本 mysql-5.1.73-3.el6_5.x86_64mysql-li ...
- [从零开始搭网站七]CentOS上安装Mysql
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 通过前面6章,我们买好了服务器,配置了服务器连接,服务器上配置了JDK和Tomcat,准备了域名(这个我没教,自己去阿里/百度/腾讯买,买东西我相 ...
- 在CentOS上安装Mysql使用yum安装mysql
https://jingyan.baidu.com/article/c74d600079be530f6a595dc3.html
- CentOS上安装MySQL
1.准备RPM安装包 MySQL-server-5.6.33-1.linux_glibc2.5.x86_64 MySQL-client-5.6.33-1.linux_glibc2.5.x86_64 2 ...
- 【linux系列】Centos下安装mysql数据库
前言 为了测试方便,通常我们会自己安装数据库,以下是在Centos上安装Mysql的操作. 一.检查自己是否安装了MySQL数据库 [root@s201 /home/mysql]#rpm -qa |g ...
- Centos7 上安装mysql遇上的问题:mysql无法正常启动
第一次在Centos上安装mysql遇到的一些问题. 第一步就遇到问题,安装mysql-server报错没有可用包. [解决方法] 先要安装mysql # wget http://repo.mysq ...
随机推荐
- 20155324《网络对抗》Exp2 后门原理与实践
20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...
- vue生命周期的理解
我从官网上下载了一张vue生命周期的图,接下来实际分析一波vue到底执行了什么东西. 1.我们在使用vue时必不可少的操作就是 var vm = new Vue({}),这样我们就创建了一个vue的实 ...
- 错误: ‘shared_ptr’ in namespace ‘std’ does not name a type的解决方法。
这是因为要使用C++11的标准编译,而catkin_make时无法识别出来. 修改方法是在CMakeLists.txt文件里面添加: set(CMAKE_CXX_FLAGS "${CMAKE ...
- 关于HashMap put元素的原理
HashMap集合put元素的原理:(1)计算key的hashCode(2)将key的hashCode作为计算因子,通过哈希算法计算HashMap的数组下标index(3)如果index下标的数组元素 ...
- phpinfo
phpinfo是一个运行指令,为显示php服务器的配置信息. phpinfo函数是PHP最为常用的配置输出函数.phpinfo函数能够输出服务器PHP当前状态的大量信息,其中包含了PHP的编译选 ...
- windows上安装zip版mongodb
版本3.4:现将mongodb解压,再选择一个位置创建data文件夹并在其下创建db文件夹和log文件夹 然后编写mongod.cfg文件,注意这里用的yaml格式,对空格很敏感,并且要注意mongo ...
- 20165221 《网络对抗技术》EXP1 PC平台逆向破解
20165221 <网络对抗技术>EXP1 PC平台逆向破解 一.实验内容 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函 ...
- flask学习(一)
特点: 短小精悍,可扩展性强 依赖wsgi:werkzurg werkzurg示例: from werkzeug.wrappers import Request, Response from werk ...
- 使用docker中mysql镜像
1.拉取mysql镜像 docker pull mysql:5.6 2.运行mysql的镜像生成一个正在运行的容器,可以通过docker contain ls得到容器的id信息 docker run ...
- python-基于tcp协议的套接字(加强版)及粘包问题
一.基于tcp协议的套接字(通信循环+链接循环) 服务端应该遵循: 1.绑定一个固定的ip和port 2.一直对外提供服务,稳定运行 3.能够支持并发 基础版套接字: from socket impo ...