介绍
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,请继续阅读。但是,如果你正在寻找更新现有的MySQL安装到5.7版本,你可以阅读
这个MySQL 5.7更新指南来代替。
先决条件
要遵循本教程,您需要:第1步 - 安装MySQL
有两种方式安装MySQL。您可以默认使用APT软件包存储库中包含的一个版本(5.5和5.6),也可以首先手动添加MySQL存储库来安装最新版本(目前为5.7)。 如果要安装特定版本的MySQL,请按照下面的相应部分。为了帮助您决定哪个版本是最适合你,你可以阅读 MySQL介绍MySQL 5.5 , MySQL 5.6的新功能和 MySQL 5.7的新功能 。 如果你不知道,你可以使用mysql-server
APT包,只需安装最新版本的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,你需要从增加新的APT包库 MySQL 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服务器选项,它被突出显示,应该说
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
这将提示您输入在第一步中创建的root密码。您可以按
ENTER
来接受所有后续问题的默认值,与询问您是否想修改root密码的人的除外。你只是在第一步设置它,所以你不必现在改变它。 接下来,我们将初始化MySQL数据目录,这是MySQL存储数据的地方。你如何做到这取决于你运行的MySQL版本。您可以使用以下命令检查您的MySQL版本。
mysql --version
你会看到一些输出,像这样:
输出
mysql Ver 14.14 Distrib 5.7.11, for Linux (x86_64) using EditLine wrapper
如果您使用的是MySQL版本早于5.7.6,则应该通过运行初始化数据目录
mysql_install_db
。
sudo mysql_install_db
注:在MySQL 5.6,你可能会得到,FATAL ERROR: Could not find 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_install_db
命令已过时在MySQL 5.7.6。 如果您使用的是版本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
工具,它是一个客户端,让您运行管理命令。 例如,这个命令的意思是连接到MySQL作为
root (
-u root
),提示输入密码(
-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安装程序。以下是您可以执行的后续步骤的几个示例:- 实现一些额外的mysql安全措施
- 使用Percona XtraBackup创建热备份
- 了解如何使用MySQL Django应用程序或Rails应用Ruby
- 使用SaltStack管理MySQL服务器