介绍
MySQL是一种开源数据库管理系统,通常作为流行的LAMP (Linux,Apache,MySQL,PHP / Python / Perl)的一部分安装。 它使用关系数据库和SQL(结构化查询语言)来管理其数据。
MySQL可用于存储,保护和检索数据,包括数据仓库,电子商务和日志应用程序等多种应用程序。 它通常与基于Web的应用程序和在线发布相关联。
DigitalOcean的MySQL一键式应用程序映像快速部署了已安装MySQL的Ubuntu服务器,以及phpMyAdmin来帮助管理数据库服务器。 默认情况下,此图像将安装APT包存储库中包含的最新版本的MySQL。 如果您需要特定版本的MySQL,您可以按照我们的安装最新版本的MySQL指南 。
第1步 - 创建MySQLDroplet
要创建一个MySQL Droplet,请从Droplet创建页面开始 。 在“ 选择图像”部分中,单击“ 一键式应用”选项卡,然后在16.04图像上选择MySQL 。
接下来,为您的Droplet,您所需的区域以及任何其他设置(如私有网络IPv6支持或备份)选择一个大小。 添加任何SSH密钥并填写您的Droplet的主机名。 准备就绪后,单击创建Droplet以启动服务器。
创建完Droplet后,让我们通过SSH连接到它,以运行MySQL的安全脚本。
第2步 - 保护MySQL
通过SSH以root身份登录到您的Droplet。 如果您以前没有使用过SSH或PuTTY,可以阅读如何使用SSH连接到您的Droplet教程。 确保将your_server_ip
替换为Droplet的IP地址,这可以在“Droplet”选项卡中找到。
ssh root@your_server_ip
如果系统提示您输入密码,请输入创建Droplet时通过电子邮件发送的密码,然后按照屏幕提示替换您的临时密码。 如果您使用SSH密钥设置Droplet,那么密钥将用于验证。
登录后,您将看到一天的消息。 这包含phpMyAdmin的用户名和密码,MySQL 根用户密码的位置以及防火墙中配置的开放应用程序端口的信息。
Message of the DayThank you for using DigitalOcean's MySQL 1-Click.
For your convience, phpMyAdmin has been installed to help you manage your
Database server. You may connect to it via:
URL: http://159.203.124.192/phpmyadmin
Username: admin
Passowrd: 73b7c69f2f08bae8998e1f84bfc4a171334b5b4cc679bf4a
The details of your PHP installation can be seen at http://159.203.124.192/info.php
Passwords have been saved to /root/.digitalocean_password
You are encouraged to run mysql_secure_installation to ready your server for
production.
The UFW firewall is enabled. All ports execpt for SSH, HTTP/HTTPS and MySQL
are blocked by default.
-------------------------------------------------------------------------------
To delete this message of the day: rm -rf /etc/update-motd.d/99-one-click
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
如果您稍后需要参考,可以在/etc/update-motd.d/99-one-click
文件中找到信息。
在运行MySQL的安全脚本之前,需要使用MySQL root密码。 打印/root/.digitalocean_password
的内容。
cat /root/.digitalocean_password
你会看到三行,像这样:
root_mysql_pass="7fea9fc2a0173be16c1c5e23d0c81cc2edd134353fa9e967"
admin_mysql_pass="73b7c69f2f08bae8998e1f84bfc4a171334b5b4cc679bf4a"
app_mysql_pass="dff4eb0c526a0110ebc5b5ce631da53c5dba5999c6e374cc"
复制根 MySQL密码。 接下来,运行mysql_secure_installation
脚本来准备服务器进行生产。 这将引导您完成一些可以删除在生产环境中使用危险的默认值的过程。
mysql_secure_installation
这将提示您输入安装过程中设置的root密码,该密码保存在/root/.digitalocean_password/
。 您可以按Y
ENTER
,然后按ENTER
接受所有后续问题的默认值。 有关这些选项的更详细的演练,您可以看到LAMP安装教程的这一步 。
现在MySQL已经安装和安全了,我们来测试一下它的工作原理。
第3步 - 测试MySQL
您可以做的第一个检查是查看安装了哪个版本的MySQL。
dpkg -s mysql-server
你会看到这样的输出,包括包的版本和其他信息。
OutputPackage: mysql-server
Status: install ok installed
Priority: optional
Section: database
Installed-Size: 180
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: all
Source: mysql-5.7
Version: 5.7.18-0ubuntu0.16.04.1
Depends: mysql-server-5.7
. . .
MySQL应该已经开始自动运行,所以检查进程的状态。
systemctl status 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
工具连接到数据库,该工具是允许您运行管理命令的客户端。 例如,该命令表示以root用户身份( -u root
)连接到MySQL,提示输入密码( -p
),并返回版本。
mysqladmin -p -u root version
你会看到类似的输出:
Outputmysqladmin 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一键式映像运行,您现在可以开始工作在您的项目。 以下是您可以采取以下步骤的几个示例:
- 如果您刚开始使用MySQL,您可以了解有关MySQL命令的更多信息 ,然后按照我们的指南来开始在SQL环境中管理数据库。
- 您可以实施一些额外的安全措施来保护您的数据库。
- 如果您想要一个用于管理MySQL服务器的图形界面,phpMyAdmin是一种流行的基于Web的解决方案。 它已经预先安装在我们的MySQL一键式映像中。 您可以参考我们的教程如何安全phpMyAdmin并开始。
- 如果要更改MySQL存储数据的位置,就像将其移动到不同的存储设备一样,可以重新定位数据目录 。
- 有关更高级的设置,请了解如何使用配置管理系统SaltStack管理MySQL基础架构 。