如何在Ubuntu 14.04上安装MySQL

介绍

MySQL是一个开源数据库管理系统,通常作为流行的LAMP(Linux,Apache,MySQL,PHP / Python / Perl)堆栈的一部分来进行安装。它使用关系数据库和SQL(结构化查询语言)来管理其数据。

安装简短版本是很简单的:更新软件包索引,安装mysql-server软件包,然后运行已包含的安全和数据库初始化脚本。

sudo apt-get update
sudo apt-get install mysql-server
sudo mysql_secure_installation
sudo mysql_install_db

本教程将介绍如何在Ubuntu 14.04服务器上安装MySQL版本5.5,5.6或5.7。如果您想了解有关这些安装说明的更多详细信息,或者您想要安装特定版本的MySQL,请继续阅读。

课程准备

要学习本教程,您需要:

  • 一个带有sudo权限非root用户的Ubuntu 14.04 腾讯CVM 。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器

第1步 - 安装MySQL

有两种方法可以安装MySQL。您可以使用默认的APT软件包存储库中包含的其中一个版本(5.5和5.6),也可以先手动添加MySQL的存储库来安装最新版本(目前为5.7)。

如果您要安装特定版本的MySQL,那么请按照下面的相应部分进行操作。为了帮助您决定哪个版本是最适合你,你可以阅读MySQL的介绍到MySQL 5.5,然后可以阅读是什么在MySQL 5.6的新功能什么在MySQL 5.7的新功能

如果您不确定,可以使用mysql-serverAPT软件包,它只为您的Linux发行版安装最新版本。在撰写本文时,这是5.5,但您可以随时更新到另一个版本。

要以这种方式安装MySQL,请更新服务器上的软件包索引并用apt-get来安装软件包。

sudo apt-get update
sudo apt-get install mysql-server

在安装过程中,系统将提示您创建root密码。选择一个安全的密码,并确保你记住它,因为你以后会需要它。然后从这里继续前进到第二步。

安装MySQL 5.5或5.6

如果您想专门安装MySQL 5.5或5.6,那么这个过程仍然非常简单。首先,更新服务器上的软件包索引。

sudo apt-get update

然后,要安装MySQL 5.5,请安装该mysql-server-5.5软件包。

sudo apt-get install mysql-server-5.5

要安装MySQL 5.6,请安装mysql-server-5.6软件包。

sudo apt-get install mysql-server-5.6

对于这两个选项,系统将提示您在安装期间创建root密码。选择一个安全的,并确保你记住它,因为你以后需要它。

安装MySQL 5.7

如果要安装MySQL 5.7,则需要从MySQL APT存储库页面添加较新的APT包存储。单击右下角的“ 下载”,然后从下一页上的谢谢,开始下载中复制链接。将.deb软件包下载到您的服务器。

wget http://dev.mysql.com/get/mysql-apt-config_0.6.0-1_all.deb

接下来,使用dpkg安装它。

sudo dpkg -i mysql-apt-config_0.6.0-1_all.deb

您将看到一个提示,询问您要配置哪个MySQL产品。突出显示的MySQL Server选项应该是mysql-5.7。如果没有,请按ENTER,然后使用箭头键向下滚动到mysql-5.7,再按ENTER一次。

一旦选项显示mysql-5.7,向下滚动主菜单上的Apply,再按ENTER一次。现在,更新您的包索引。

sudo apt-get update

最后,安装mysql-server包,现在包含MySQL 5.7。

sudo apt-get install mysql-server

在安装过程中,系统将提示您创建root密码。选择一个安全的,并确保你记住它,因为你以后需要它。

第2步 - 配置MySQL

首先,您需要运行已被包含的安全脚本。这会更改远程root登录和示例用户等一些不太安全的默认选项。

sudo mysql_secure_installation

这将提示您输入在步骤1中创建的root密码。您可以按ENTER接受所有后续问题的默认值,但询问您是否要更改root密码的问题除外。您只需在第一步中设置它,因此您现在不必更改它。

接下来,我们将初始化MySQL数据目录,这是MySQL存储其数据的地方。如何执行此操作取决于您运行的MySQL版本。您可以使用以下命令检查您的MySQL版本。

mysql --version

你会看到一些像这样的输出:

mysql  Ver 14.14 Distrib 5.7.11, for Linux (x86_64) using  EditLine wrapper

如果您使用的是早于5.7.6的MySQL版本,则应通过运行mysql_install_db来初始化数据目录。

sudo mysql_install_db

注意:在MySQL 5.6中,您可能会收到一条错误,该错误名为致命错误:找不到my-default.cnf。如果这样做,请将配置文件/usr/share/my.cnf复制到mysql_install_db所期望的位置,然后重新运行它。

sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf
sudo mysql_install_db

这是由于MySQL 5.6中的一些更改以及APT包中的一个小错误。

自MySQL 5.7.6起,该mysql_install_db命令已弃用。如果您使用的是5.7.6或更高版本,则应使用mysqld --initialize

但是,如果您从Debian发行版安装了5.7版,就像在第一步中一样,数据目录已自动初始化,因此您无需执行任何操作。如果您尝试运行该命令,您将看到以下错误:

2016-03-07T20:11:15.998193Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.

第3步 - 测试MySQL

无论你如何安装它,MySQL应该已经开始自动运行。要测试它,请检查其状态。

service mysql status

您将看到以下输出(具有不同的PID)。

mysql start/running, process 2689

如果MySQL没有运行,你可以用sudo service mysql start启动它。

有关其他检查,您可以尝试使用该mysqladmin工具连接到数据库,该工具是一个允许您运行管理命令的客户端。例如,此命令表示以root-u root)连接到MySQL ,提示输入密码(-p),并返回版本。

mysqladmin -p -u root version

您应该看到与此类似的输出:

mysqladmin  Ver 8.42 Distrib 5.5.47, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2015, 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      5.5.47-0ubuntu0.14.04.1
Protocol version    10
Connection      Localhost via UNIX socket
UNIX socket     /var/run/mysqld/mysqld.sock
Uptime:         4 min 15 sec
​
Threads: 1  Questions: 602  Slow queries: 0  Opens: 189  Flush tables: 1  Open tables: 41  Queries per second avg: 2.360

这意味着MySQL已启动并正在运行。

结论

您现在已在服务器上安装了基本的MySQL设置。以下是您可以采取的后续步骤的几个示例:

  • 实施一些额外的安全措施
  • 使用Percona XtraBackup创建热备份
  • 学习如何在Django应用程序或Ruby on Rails应用程序中使用MySQL
  • 使用SaltStack管理MySQL服务器

更多Ubuntu教程请前往腾讯云+社区学习更多知识。


参考文献:《How To Install MySQL on Ubuntu 14.04》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hongten

hadoop2集群环境搭建

在查询了很多资料以后,发现国内外没有一篇关于hadoop2集群环境搭建的详细步骤的文章。

17520
来自专栏Linyb极客之路

RESTFUL API 安全设计指南

REST的全称是REpresentational State Transfer,表示表述性无状态传输,无需session,所以每次请求都得带上身份认...

15820
来自专栏JetpropelledSnake

SNMP学习笔记之Linux下安装和配置SNMP

  选择一个SNMP版本,比如5.7.1,下载地址如下:http://sourceforge.net/projects/net-snmp/files/net-s...

28230
来自专栏我是攻城师

最新版Solr6.2.1安装记录

36550
来自专栏技术博客

JavaScript判断页面是否已经加载完毕

  在做针对CheckBox框点击事件的时候,发现点击以后有时候会报错,但是是生成的JavaScript的代码的内部错误,无法判断到底是什么地方有问题。就一直在...

9420
来自专栏云计算教程系列

如何在Ubuntu 18.04上创建多节点MySQL集群

MySQL Cluster分布式数据库为MySQL数据库管理系统提供高可用性和吞吐量。MySQL Cluster由一个或多个管理节点(ndb_mgmd)组成,这...

25200
来自专栏陈树义

高效开发技巧:为什么你下载Git项目这么慢?

笔者所在公司采用的是 GitLab 进行版本管理,但许多同事下载 Git 项目的路径是这样的: 打开浏览器 -> 输入网址 -> 查找项目地址 -> 复制项目...

37440
来自专栏Laoqi's Linux运维专列

日常运维管理(二)

监控io性能 : 有时候发现系统cpu和内存均有剩余,但是负载却很高,使用vmstat发现b列和wa列负载很高,要是想更详细的查看磁盘状态,那我们就用到了今天所...

36360
来自专栏破晓之歌

Redis安装和初步使用 原

获取安装包:https://github.com/MSOpenTech/redis

25420
来自专栏网络

CobaltStrike团体服务器部署并后台运行

大家好,我是你们的老朋友Alex。Cobaltstrike的部署安装很简单,但是在实际使用中出现了问题。我把团队服务器放在ECS上,出现了两个问题:1.客户端无...

35960

扫码关注云+社区

领取腾讯云代金券