MySQL是一个开源数据库管理系统,通常作为流行的一部分安装LAMP(Linux、Apache、MySQL、PHP/Python/Perl)堆栈。它使用关系数据库和 SQL(结构化查询语言)来管理其数据。
简短版本的安装很简单:更新您的软件包索引,安装mysql-server
包,然后运行包含的安全脚本。
-
sudo apt-get update
-
sudo apt-get installmysql 服务器
- mysql_安全_安装
本教程将解释如何在 Ubuntu 16.04 服务器上安装 MySQL 5.7 版本。但是,如果您希望将现有的 MySQL 安装更新到版本 5.7,您可以阅读MySQL 5.7 更新指南反而。
要学习本教程,您将需要:
- 通过以下方式设置一台 Ubuntu 16.04 服务器这个初始服务器设置指南,包括 sudo 非 root 用户和防火墙。
在 Ubuntu 16.04 上,默认情况下,APT 软件包存储库中仅包含最新版本的 MySQL。在撰写本文时,这是 MySQL 5.7
要安装它,只需更新服务器上的包索引并安装默认包即可apt-get
.
-
sudo apt-get update
-
sudo apt-get installmysql 服务器
安装过程中系统会提示您创建 root 密码。选择一个安全的并确保记住它,因为稍后您会需要它。接下来我们就完成MySQL的配置了。
对于全新安装,您需要运行附带的安全脚本。这更改了一些不太安全的默认选项,例如远程 root 登录和示例用户。在旧版本的 MySQL 上,您还需要手动初始化数据目录,但现在这是自动完成的。
运行安全脚本。
这将提示您输入在步骤 1 中创建的 root 密码。您可以按Y
进而ENTER
接受所有后续问题的默认设置,但询问您是否要更改 root 密码的问题除外。您只需在步骤 1 中设置它,因此现在不必更改它。有关这些选项的更详细的演练,您可以查看LAMP安装教程的这一步.
要初始化 MySQL 数据目录,您可以使用mysql_install_db
对于 5.7.6 之前的版本,以及mysqld --initialize
对于 5.7.6 及更高版本。但是,如果您从 Debian 发行版安装 MySQL,如步骤 1 所示,数据目录会自动初始化;您无需执行任何操作。如果您尝试运行该命令,您将看到以下错误:
Output
2016-03-07T20:11:15.998193Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
最后,我们测试一下MySQL的安装情况。
不管你如何安装它,MySQL 都应该已经开始自动运行。要对此进行测试,请检查其状态。
- systemctl 状态 mysql.service
您将看到类似于以下内容的输出:
Output
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago
Main PID: 3754 (mysqld)
Tasks: 28
Memory: 142.3M
CPU: 1.994s
CGroup: /system.slice/mysql.service
└─3754 /usr/sbin/mysqld
如果 MySQL 没有运行,您可以使用以下命令启动它sudo systemctl start mysql
.
要进行额外检查,您可以尝试使用以下命令连接到数据库mysqladmin
工具,它是一个允许您运行管理命令的客户端。例如,此命令表示连接到 MySQLroot (-u root
),提示输入密码(-p
),并返回版本。
您应该看到与此类似的输出:
Output
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, 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.7.16-0ubuntu0.16.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 30 min 54 sec
Threads: 1 Questions: 12 Slow queries: 0 Opens: 115 Flush tables: 1 Open tables: 34 Queries per second avg: 0.006
这意味着 MySQL 已启动并正在运行。
您现在已经在服务器上安装了基本的 MySQL 设置。以下是您可以采取的后续步骤的一些示例:
- 实施一些额外的安全措施
- 重新定位数据目录
- 使用 SaltStack 管理您的 MySQL 服务器
- 了解有关 MySQL 命令的更多信息