在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,安装命令如下:

$ 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):

yum repolist all | grep mysql
mysql-connectors-community        MySQL Connectors Community     enabled:     24
mysql-connectors-community-source MySQL Connectors Community - S disabled
mysql-tools-community MySQL Tools Community enabled: 40
mysql-tools-community-source MySQL Tools Community - Source disabled
mysql-tools-preview MySQL Tools Preview disabled
mysql-tools-preview-source MySQL Tools Preview - Source disabled
mysql55-community MySQL 5.5 Community Server disabled
mysql55-community-source MySQL 5.5 Community Server - S disabled
mysql56-community MySQL 5.6 Community Server disabled
mysql56-community-source MySQL 5.6 Community Server - S disabled
mysql57-community MySQL 5.7 Community Server enabled: 146
mysql57-community-source MySQL 5.7 Community Server - S disabled
mysql80-community MySQL 8.0 Community Server disabled
mysql80-community-source MySQL 8.0 Community Server - S disabled

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

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

[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/6/$basearch/
enabled=1
gpgcheck=1
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

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

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

3. 使用Yum安装MySQL

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

$ sudo yum install mysql-community-server

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

4. 启动MySQL服务器

启动MySQL服务命令如下:

$ sudo service mysqld start

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

Initializing MySQL database:       [  OK  ]
Installing validate password plugin: [ OK ]
Starting mysqld: [ OK ]

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

$ sudo service mysqld status

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

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

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

    $ mysql -u root -p 

    密码修改:

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

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

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

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

$ 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. 【转】SpringCloud学习笔记(一)——基础

    什么是微服务架构 简单地说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进 ...

  2. win10如何安装mariadb

    一.下载.安装 1.下载mariadb(https://downloads.mariadb.org/),解压 2.进入bin目录下执行(管理员模型-powershell) .\mysqld.exe - ...

  3. va_start可变参数函数

    void va_start(va_list ap, last); //变参起始地址 type va_arg(va_list ap, type); //下一个参数的地址 void va_end(va_l ...

  4. HTML和XML中的转义字符

    HTML中的转义字符  HTML中<, >,&等有特别含义,(前两个字符用于链接签,&用于转义),不能直接使用.使用这三个字符时,应使用他们的转义序列,如下所示: & ...

  5. Git 日常命令

    克隆项目:git clone addr dir   切换分支,分支并没有 git checkout -b production origin/production 分支已存在,单纯切换分支 git c ...

  6. vue-quill-editor + iview 实现富文本编辑器及图片上传

    1.npm 安装 vue-quill-editor npm install vue-quill-editor 2.再main.js中引入 import VueQuillEditor from 'vue ...

  7. [Python]pip install offline 如何离线pip安装包

    痛点:目标机器无法连接公网,但是能使用rz.sz传输文件 思路:在能上网的机器是使用pip下载相关依赖包,然后传输至目标机器,进行安装 0. Install pip: http://pip-cn.re ...

  8. Linux sudo(CVE-2019-14287)漏洞复现过程

    简述: 该漏洞编号是CVE-2019-14287. sudo是Linux系统管理指令,允许用户在不需要切换环境的前提下用其他用户的权限运行程序或命令,通常是以root身份运行命令,以减少root用户的 ...

  9. redis高可用之sentinel哨兵

    一,单实例模式 当系统中只有一台redis运行时,一旦该redis挂了,会导致整个系统无法运行. 二,主从模式 由于单台redis出现单点故障,就会导致整个系统不可用,所以想到的办法自然就是备份.当一 ...

  10. JDBC课程5--利用反射及JDBC元数据(ResultSetMetaData)编写通用的查询方法

    /**-利用反射及JDBC元数据编写通用的查询方法 * 1.先利用SQl语句进行查询,得到结果集--> * 2.查找到结果集的别名:id--> * 3.利用反射创建实体类的对象,创建aut ...