MySQL是开源的数据库管理系统,通常作为LEMP(Linux, Nginx, MySQL/MariaDB, PHP/Python/Perl)技术栈的一部分,而被安装。RedHat 会害怕 Oracle 会把 MySQL 闭源,(MySQL 被 Oracle 收购之后,曾出现了收费Licence的bug等东西)。而原来的 MySQL 它爹,fork 了 MySQL 也就是MariaDB(Maria是他的第三个女儿的名字),保持良好的 MySQL 兼容性了。 也因为MariaDB更加的开放,所以 RedHat 更喜欢 MariaDB。如果你在 Centos 上运行 yum install mysql ,会安装 MariaDB的客户端而不是 MySQL 。如果你担心两者这件的兼容性的话,你可以看这里。除非你对 MySQL有特别的要求,通常 MariaDB 可以无缝替代 MySQL)

安装

就如上文所提到的,yum命令实际上是安装 MariaDB。为了安装 MySQL,我们需要访问为 MySQL 提供包的 MySQL 社区 YUM 仓库

  • 点击下载后进入一个页面,会引导你登录或者注册的,如果你不想登录,可以点击我剪头标注的链接。话说那个连接还真·隐蔽

下载对应的centos或fedora的rpm文件

curl -O https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

或者是

wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm

若怀疑文件完整性可以用md5验算一下

md5sum mysql80-community-release-el7-1.noarch.rpm
739dc44566d739c5d7b893de96ee6848  mysql80-community-release-el7-1.noarch.rpm

将此输出与网站上适当的MD5值进行比较: 这说明文件没有损坏或更改,我们将安装该软件包:

sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm

添加了这两个 MySQL 的yum仓库(mysql-server和mysql-client)后,我们现在可以来安装 MySQL Server 了

sudo yum -y install mysql-server

启动

我们将用以下命令启动守护进程:

sudo systemctl start mysqld

systemctl不显示命令执行的结果,所以为了确保运行成功,将使用以下命令:

sudo systemctl status mysqld

如果MySQL已经成功启动,输出应该包含 Active:active(running)

注意 安装MySQL时,MySQL会自动启动。你可以使用sudo systemctl disable mysqld更改不让MySQL自动启动。

在安装的过程中,MySQL会为root用户自动生成一个临时密码。用以下命名可以从mysqld.log的文件中找到密码

sudo grep 'temporary password' /var/log/mysqld.log
2018-06-24T20:08:20.091668Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: ymhh.pu3OPjd

下面的配置需要密码,请记住密码

配置

MySQL有一个安全脚本,方便我们进行更改禁止root登录、删除测试数据库、删除匿名用户之类的选项设置。 使用下面的命令运行脚本

sudo mysql_secure_installation
Securing the MySQL server deployment.

Enter password for user root:

此时输入之前获得的自动生成的密码

The existing password for the user account root has expired. Please set a new password

New password:

输入一个新的12个字符的密码,其中至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符。 出现提示时重新输入 如果密码强度太弱系统会立即提示您再次更改 您将收到关于新密码强度的反馈,然后系统会立即提示您再次更改 之后是有密码强度插件、去掉匿名用户、禁止root远程连接、删除测试数据库、重新加载权限表之类的配置。可以按照要求来配置。 现在我们已经确保安装,

测试一下

我们可以通过mysqladmin工具来验证安装和获取连接的信息,该工具是用来管理 MySQL 的命令行客户端。使用以下命令用 root 用户登录,连接到MySQL,提示输入密码(-p)并返回版本(version)

mysqladmin -u root -p version
mysqladmin  Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Server version 8.0.11
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 10 hours 19 min 21 sec

到此安装已完成

最后

你现在已经在服务器上安装了基本的MySQL安装程序。 以下可能是你感兴趣的文章 在linux上提高 MySQL/MariaDB 安全性的12条建议

在 Centos 安装 MySQL的更多相关文章

  1. centos安装 mysql

    centos安装 mysql 1. 下载mysqlmysql被oracle收购后现在退出了企业版和社区版本,社区版本是开源的,企业版是收费的.社区版可以下载源码也可以下载二进制文件包.源码安装比较麻烦 ...

  2. centOS安装Mysql指南

    centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...

  3. CentOS安装MySQL

    好记性不如烂笔头,记录一下 yum list installed | grep mysql #检查是否安装了mysql yum -y remove mysql-libs.x86_64 #卸载已经安装的 ...

  4. centos 安装 mysql 5.6和workbench

    windows下安装mysql很简单,去官网找到.msi文件,一键安装就OK了. Centos下面安装Mysql5.6其实也是蛮简单的. 注意:centos6.5默认mysql版本是5.1的 1.添加 ...

  5. Linux学习笔记:CentOS安装MySQL

    [1]安装版本: 1.1 CentOS-7-x86_64-Everything-1503-01    1.2 MySQL-5.6.27-1.linux_glibc2.5.x86_64.rpm-bund ...

  6. CentOS安装MySQL问题汇总

    遇到的错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) denied for ...

  7. centos 安装mysql密码修改后还是不能连接的原因

    centos 上安装mysql密码修改后还是不能连接出现错误:ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for ...

  8. 1.centOS安装Mysql

    上个星期研究了一个星期的Mysql,从今天起把学到的东西整理一下. ---------------------------------------------- mysql安装本人亲试过两种安装方式, ...

  9. 阿里云服务器 CentOS 安装Mysql 5.6

    下载:https://dev.mysql.com/downloads/file/?id=471181   第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...

随机推荐

  1. [干货,阅后进BAT不是梦]面试心得与总结---阿里、小米、腾讯

    之前实习的时候就想着写一篇面经,后来忙就给忘了,现在找完工作了,也是该静下心总结一下走过的路程了,我全盘托出,奉上这篇诚意之作,希望能给未来找工作的人一点指引和总结, 也希望能使大家少走点弯路 , 如 ...

  2. jquery click嵌套 事件重复注册 多次执行的问题解决

    jquery click事件中嵌套click会重复注册内部的click事件,导致重复执行. 比如 $(...).click(function(){   $(...).click(function(){ ...

  3. android WebView详解,常见漏洞详解和安全源码

    这篇博客主要来介绍 WebView 的相关使用方法,常见的几个漏洞,开发中可能遇到的坑和最后解决相应漏洞的源码,以及针对该源码的解析.  转载请注明出处:http://blog.csdn.net/se ...

  4. mysql 开发进阶篇系列 50 表的数据导入(load data infile,mysqlimport )

    一.概述 上篇讲到的表的数据导出(select .. into outfile 或者mysqldump),这篇继续讲表的数据导入,导入也同样有二个方法,分别是load data infile... 和 ...

  5. 【python35小工具】b站弹幕保存

    后面有时间学习弹框,加个弹框 效果图: 原理: 原理简单不繁琐 1 根据设置的参数去post请求json参数 2 json提取出用户名和时间以及弹幕内容 (其中值得注意的时,页面默认会保存10个弹幕, ...

  6. 微信小程序-canvas绘制文字实现自动换行

    在使用微信小程序canvas绘制文字时,时常会遇到这样的问题:因为canvasContext.fillText参数为 我们只能设置文本的最大宽度,这就产生一定的了问题.如果我们绘制的文本长度不确定或者 ...

  7. web.xml配置web中的key points(上)

    一.定义 定义时注意:xml元素是区分大小写的. <web-app></web-app> 这些必须小写 二.url-pattern 1)url-pattern 的值必须以/或者 ...

  8. 【深度学习与TensorFlow 2.0】入门篇

    注:因为毕业论文需要用到相关知识,借着 TF 2.0 发布的时机,重新捡起深度学习.在此,也推荐一下优达学城与 TensorFlow 合作发布的TF 2.0入门课程,下面的例子就来自该课程. 原文发布 ...

  9. shiro 返回json字符串 + 自定义filter

    前言: 在前后端分离的项目中, 在使用shiro的时候, 我们绝大部分时候, 并不想让浏览器跳转到那个页面去, 而是告诉前端, 你没有登录, 或者没有访问权限. 那这时候, 我们就需要返回json字符 ...

  10. RocketMQ源码 — 四、 Consumer 接收消息过程

    Consumer consumer pull message 订阅 在Consumer启动之前先将自己放到一个本地的集合中,再以后获取消费者的时候会用到,同时会将自己订阅的信息告诉broker 接收消 ...