在Ubuntu上安装MySQL
让我们学习如何今天在Ubuntu上安装MySQL。
MySQL是一个免费的开源数据库管理系统。
该数据库管理系统使用结构化查询语言(SQL)来管理关系数据库中保存的数据。
这个高效且可扩展的程序由Oracle Corporation于1995年开发,可在大型和小型科技中找到应用程序。
在本教程中,我们将介绍在Ubuntu系统上安装最新版本的MySQL(在撰写本文时为8.0.20版)的过程。
在Ubuntu上安装MySQL的步骤
无需考虑前提条件,让我们直接进入在Ubuntu上安装数据库系统。
更新储存库
在开始在Ubuntu上安装MySQL的教程之前,我们不妨确保我们拥有最新版本的MySQL软件包。
为此,我们需要使用apt软件包管理服务更新默认存储库。
为此,您需要在Ubuntu系统上打开终端并输入以下内容。
sudo apt update
公寓更新
您应该在屏幕上看到类似的输出。
接下来,我们将在终端中使用upgrade命令。
公寓升级
这就是您在终端屏幕上看到的内容。
在命令行中输入" Y"以继续操作。
这些命令已用系统的最新可用存储库替换了默认的Ubuntu存储库。
现在,这可以确保我们在系统上开始安装时获得最新版本的MySQL软件包。
在Ubuntu上安装MySQL服务器软件包
现在我们有了最新的可用软件包,我们使用apt软件包管理器在我们的系统上安装MySQL服务器。
可以在终端窗口中使用以下命令来完成此操作。
sudo apt install mysql-server
Apt安装Mysql
这将在我们的Ubuntu系统上安装MySQL。
但是,由于该服务当前不安全,我们尚不能使用它。
现在,让我们配置我们的服务,使其准备工作。
在Ubuntu上配置MySQL的步骤
现在我们已经完成了安装,是时候为我们的系统进行设置了。
首先打开防火墙端口。
允许MySQL通过防火墙
请注意,当在本地使用MySQL时不需要此步骤,并且不需要任何远程客户端-服务器交互。
通常,MySQL是在多个系统可以发送数据查询的环境中使用的。
因此,我们需要允许通过防火墙的远程访问。
MySQL服务侦听的默认端口是3306。
因此,我们使用以下命令允许它通过防火墙。
sudo ufw allow mysql
UFW具有多种设置的默认设置,例如Apache,LAMP,MySQL,HTTP等。
运行安全脚本
现在,我们将在终端中输入以下命令来启动安全安装实用程序。
sudo mysql_secure_installation
该脚本将更改我们新安装的MySQL服务的安全性选项,例如远程root登录和示例测试用户。
首先,将提示我们选择是否要设置验证密码插件。
无论我们做出什么选择,接下来我们都会提示您选择root用户的密码。
它后面会有一系列次要的选项,因此您可以选择修改设置或者输入" Y"以确认默认设置。
完成后,MySQL服务将加载修改后的规则并进行更新以立即匹配您的配置。
启动MySQL服务
现在安装已完成,我们应该在系统上启动MySQL服务。
为此,我们使用systemctl命令,如下所示。
sudo systemctl start mysql
由于我们将来会在其他会话中使用它,并且每次都启动该过程是不必要的工作,因此我们将其设置为在启动时启动。
我们可以使用下面给出的命令来做到这一点。
sudo systemctl enable mysql
现在,每次我们登录系统时,MySQL进程都会自动启动。
设置登录凭证
还记得您之前设置的root密码吗?我们尚未配置用于登录MySQL服务器的密码。
现在,我们的MySQL服务正在使用auth_socket插件对根用户进行身份验证。
要解决此问题,我们需要首先在系统上启动MySQL服务器。
我们使用以下命令来这样做。
sudo mysql
接下来,我们需要更新身份验证。
现在,我们选择一个强密码,并使用它使用以下SQL命令更新身份验证方法。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpassword'
将" newpassword"替换为您选择的密码。
请注意,这将覆盖您先前使用安全脚本选择的密码。
现在,我们将重新加载所有授权表以更新我们刚刚进行的更改。
可以使用以下命令来完成。
FLUSH PRIVILEGES
现在我们已经配置了MySQL服务器,是时候通过使用root用户登录服务器来对其进行测试了。
让我们使用"退出"命令退出服务,然后使用新近更新的密码再次登录。
在我们的系统上测试MySQL
我们已经在系统上安装了MySQL服务器并设置了一些基本配置。
但是,如果不能确保我们刚安装的MySQL服务器能够正常运行,就无法完成。
我们将使用基本查询来测试MySQL服务器。
首先,我们使用我们的根帐户及其关联的密码登录到MySQL服务器。
登录到MySQL服务器
您应该看到与此类似的屏幕。
请注意,这次我们使用了另一种方法登录到root用户。
这是因为如果不指定用户并输入正确的密码,我们将无法获得root用户的管理权限。
现在,我们将要求我们的MySQL服务器在系统上显示用户,主机和插件的列表。
可以使用以下SQL命令来完成。
SELECT User, Host, Plugin FROM mysql.user;