在CentOS(Fedora、RedHat)系统中,可以使用yum install mysql命令来安装MySQL,但所安装的MySql版本一般都较旧,所以更推荐通过源码编译安装或下载最新rpm安装包进行安装。

  1. 添加MySQLYum
  2. 选择一个发行系列
  3. 使用Yum安装MySQL
  4. 启动MySQL服务器
  5. 加固MySQL安全(仅MySQL5.6适用)

MySQL的Yum源提供了RPM安装包,包括MySQL服务端、客户端、及Linux平台的其它组件。这些安装包同样可以用于升级或替换第三方已安装的MySQL。

MySQL的Yum源支持以下Linux平台:

  • 基于EL5-、EL6-、EL7-的平台(如 Red Hat Enterprise Linux、Oracle Linux 和 CentOS)
  • Fedora 23 和 24

1. 添加MySQLYum

首先,添加MySQLYum源到系统源列表中:

  1. 打开MySQLYum源下载页:http://dev.mysql.com/downloads/repo/yum/,选择并下载你所用系统适用的发行包。
  2. 使用以下命令安装下载的发行包

如,我下载的发行包为mysql57-community-release-el6-9.noarch.rpm,安装命令如下:

  1. $ sudo rpm -Uvh mysql57-community-release-el6-9.noarch.rpm

注意:安装发行包后,如果系统执行yum update命令(或在dnf-enabled的系统中执行dnf upgrade命令)后,会自动升级系统中的MySQL包,并会自动替换所有的本地第三方包。

2. 选择一个发行系列

使用MySQLYum源时,默认会安装MySQL最新的GA(General Availability,正式发布)版本。如果正要使用最新的版本,请跳过本步骤,直接查看使用Yum安装MySQL

MySQLYum源的内部,不同的发行系列对应了MySQL社区服务器的不同资源子节点。子节点默认为最新的正式版本(当前为 5.7),而其它资源子节点(如5.5、5.6等)默认是不可用的。

可以通过以下命令,查询子资源是否可用(在dnf-enabled的系统中使用dnf命令替代yum):

  1. yum repolist all | grep mysql
  1. mysql-connectors-community MySQL Connectors Community enabled: 24
  2. mysql-connectors-community-source MySQL Connectors Community - S disabled
  3. mysql-tools-community MySQL Tools Community enabled: 40
  4. mysql-tools-community-source MySQL Tools Community - Source disabled
  5. mysql-tools-preview MySQL Tools Preview disabled
  6. mysql-tools-preview-source MySQL Tools Preview - Source disabled
  7. mysql55-community MySQL 5.5 Community Server disabled
  8. mysql55-community-source MySQL 5.5 Community Server - S disabled
  9. mysql56-community MySQL 5.6 Community Server disabled
  10. mysql56-community-source MySQL 5.6 Community Server - S disabled
  11. mysql57-community MySQL 5.7 Community Server enabled: 146
  12. mysql57-community-source MySQL 5.7 Community Server - S disabled
  13. mysql80-community MySQL 8.0 Community Server disabled
  14. mysql80-community-source MySQL 8.0 Community Server - S disabled

如上所示,因为笔者安装5.7版本Yum源,所以默认启用的就是5.7版本。

如果要安装最新的发行版,则不需要其它配置。而要指定安装一个早期版本,则需要在安装前禁用最新发生版,并启用指定要安装的版本。可以通过修改/etc/yum.repos.d/mysql-community.repo文件实现,该文件是一个指定子资源的入口:

  1. [mysql-connectors-community]
  2. name=MySQL Connectors Community
  3. baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/6/$basearch/
  4. enabled=1
  5. gpgcheck=1
  6. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

如上所示,默认启用的是最新的5.7版本。如果要修改配置,可以通过编辑enabled配置节点实现,enable=0表示禁用该子资源,而enabled=1表示启用该子资源。

例如,如果需要启用5.6版本的源,就需要将如下所示的5.6版本源设置为enabled=1并将5.7版本源设置为enabled=0

  1. # Enable to use MySQL 5.6
  2. [mysql56-community]
  3. name=MySQL 5.6 Community Server
  4. baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
  5. enabled=1
  6. gpgcheck=1
  7. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

配置完成后,可以使用前面所示的yum repolist enabled | grep mysql命令检查配置是否正确。

3. 使用Yum安装MySQL

使用以下命令安装MySQL(在dnf-enabled的系统中使用dnf命令替代yum):

  1. $ sudo yum install mysql-community-server

以上命令用于安装MySQL的服务端模块,安装其它模块命令格式也类似。

4. 启动MySQL服务器

启动MySQL服务命令如下:

  1. $ sudo service mysqld start

启动时会依次输出以下信息:

  1. Initializing MySQL database: [ OK ]
  2. Installing validate password plugin: [ OK ]
  3. Starting mysqld: [ OK ]

可以通过以下命令检查MySQL的运行状态:

  1. $ sudo service mysqld status

在5.7版本的MySQL启动时,因为数据目录是空的,所以会有以下操作:

  1. 服务器初始化
  2. 在数据目录生成一个SSL证书和key文件
  3. validate_password插件安装并启用
  4. 创建一个超级管理帐号'root'@'localhost'。管理的密码会保存在错误日志文件中,可以通过以下命令查看:
    1. $ sudo grep 'temporary password' /var/log/mysqld.log

    可以通过以下命令并使用自动生成的临时密码登录,然后修改为一个自定义密码:

    1. $ mysql -u root -p

    密码修改:

    1. $ ALTER USER 'root'@'localhost' IDENTIFIED BY 'newPassword';

注意:MySQL的validate_password插件是默认安装的。这要求MySQL密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,并且总密码长度至少为8个字符。

5. 加固MySQL安全(仅MySQL5.6适用)

mysql_secure_installation程序可以保证一些重要操作的安全性,如:修改root用户的密码、删除匿名用户等。如果安装是MySQL 5.6,应该保证始终运行该程序:

  1. $ mysql_secure_installation

Linux CentOS 使用Yum源安装MySQL 5.7的更多相关文章

  1. Linux - CentOS 7 通过Yum源安装 MySql 5.7

    添加MySQL Yum存储库 从官网下载最新的mysql源 官网地址:https://dev.mysql.com/downloads/repo/yum/ 选择并下载适用于平台的发行包. 然后,在Lin ...

  2. (转)RHEL/CentOS 6.x使用EPEL6与remi的yum源安装MySQL 5.5.x

    PS:如果既想获得 RHEL 的高质量.高性能.高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 Fedora Project 推出的 EPEL(Extra Packages for En ...

  3. RHEL/CentOS 6.x使用EPEL6与remi的yum源安装MySQL 5.5.x

    PS:如果既想获得 RHEL 的高质量.高性能.高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 FedoraProject 推出的 EPEL(Extra Packages for Ent ...

  4. First Linux Centos 7.2 rpm 安装MySQL 5.7

    服务器需要换python环境,手贱重装了,今天凑巧需要测试数据库,花了一个小时搞了一下MySQL安装. 1.删除原有Mariadb 说明:目前centos默认的MySQL是Mariadb,由于习惯了M ...

  5. centos本地yum源安装

    1.为DVD或U盘创建一个用于挂载的目录 [root@localhost ~]# mkdir /media/CentOS/ 2.查看DVD或U盘所在的路径 [root@localhost ~]# fd ...

  6. centos 7 yum方式安装MySQL 5.6

    本文根据mysql的官方文档操作:https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 由于Centos7 默认数据库是mariabd(网上 ...

  7. Centos7上使用官方YUM源安装Mysql

    1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2. 安装mysql-co ...

  8. Linux(CentOS 6.5) 下安装MySql 5.7.18 二进制版本粗浅攻略

    鉴于Linux和mysql因不同版本,安装方式也不同,所以在阅读本攻略前,请确保各位同学的版本和我的Linux.MySql 版本一致. 如果不一致,只能参考. 我的版本: Linux CentOS 6 ...

  9. Linux 下使用yum 命令安装MySQL

    Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.yum安装mysql 1. 查看有没有安装包:   yum list mysql*    #移除已经安装的mysq ...

随机推荐

  1. pymysql操作mysql数据库

    1.建库 import pymysql # 建库 try: conn=pymysql.connect( host='127.0.0.1', port=3306, user='root', passwd ...

  2. vue滚动分页加载以及监听事件处理

    <template> <div class="bodyContainer"> <div class="allContent" id ...

  3. X5内核浏览器video自动全屏解决办法-canvas

    最近在做手机端上面播放视频的项目,但是在安卓上面,video的播放是脱离页面,置于最顶层的,所以带来了很多问题,为了解决这个问题,查看了多方资料,写了下面简单的demo,方便以后使用. 下面就是运用c ...

  4. php权限管理

    首先权限管理肯定是需要登陆的,这里就简单的写一个登陆页面. 简单的登陆页面login.php <h1>登录页面</h1> <form action="login ...

  5. JDBCUtils工具类配置文件的读取方式

    //第一种方式 Properties prop= new Properties();        //读取文件   通过类加载读取        InputStream is = JDBCUtils ...

  6. excel转sql代码

    1. 首先一个标准的excel表格,如下: 2. 在同一行,后面一个单元格,英文输入法状态下输入以下:=CONCATENATE() =CONCATENATE("insert into tab ...

  7. python实现查找算法

    搜索是在一个项目集合中找到一个特定项目的算法过程.搜索通常的答案是真的或假的,因为该项目是否存在. 搜索的几种常见方法:顺序查找.二分法查找.二叉树查找.哈希查找 线性查找线性查找就是从头找到尾,直到 ...

  8. logstash可以考虑在项目中用起来

    在用Node.js开发项目的时候,我们常用 log4js 模块来进行日志的记录,可以通过配置 log4js 的 Appenders 将日志输出到Console.File和GELF等不同的地方. log ...

  9. RF 中一条用例执行失败,终止其他用例执行

    1. 需求: 执行某个测试套时,某条用例执行失败,则该用例下其他关键字不在执行(RF自带功能): 但实际情况下是 某条用例执行失败后,下面的用例再执行就没有意义了: 想满足某条用例执行失败,下面的用例 ...

  10. JSOI2012 玄武密码 和 HDU2222 Keywords Search

    玄武密码 给若干模式串和一个文本串.求每个模式串在文本串上能匹配的最大前缀长度. N<=10^7,M<=10^5,每一段文字的长度<=100. jklover的题解 将模式串建成一个 ...