如何在 Ubuntu 22.04 上安装 MySQL

简介

MySQL 是开发人员最常用的数据库之一,因为它在功能、性能和易用性之间取得了平衡,提供了高性能、可扩展性、安全性、灵活性和低成本。在本教程中,我们将向您展示如何在七个步骤中在 Ubuntu 22.04 上安装 MySQL。我们包括安装、配置、保护 MySQL 以及创建新用户。

什么是 MySQL?

MySQL 是最流行的开源数据库管理系统之一。它是著名的 LAMP(Linux、Apache、MySQL、PHP)堆栈的组成部分,并为主要的 Web 应用程序和平台提供了近二十年的支持。

此开源数据库管理系统带有多个存储引擎,包括事务安全(符合 ACID)的 InnoDB 引擎和占用空间更小的 MyISAM,后者通常用于只读情况。MySQL 还支持复制,可用于长距离数据分发、数据安全和扩展架构。

接下来,我将一步一步教大家如何进行安装和部署!!

开始部署

第一步:在 Ubuntu 上安装 MySQL 服务器

首先,让我们 更新软件包列表 并升级它们:

复制代码
sudo apt update
sudo apt upgrade

系统升级后,我们可以安装 Ubuntu 提出的最新 MySQL。

复制代码
sudo apt install mysql-server -y

请注意,安装的软件包是 mysql-server。这将安装 MySQL 服务器和客户端。命令末尾的 -y 允许我们通过自动回答安装程序来继续安装。

第二步:启动 MySQL 服务器

现在我们已经安装了 MySQL,我们将使用以下命令启动服务:

复制代码
sudo service mysql start

现在,我们检查服务的状态:

复制代码
sudo service mysql status

如我们所见,MySQL 现在正在运行。

第三步:设置初始 MySQL root 密码

默认情况下,MySQL 的 root 帐户没有密码。我们现在将设置一个。这是一个很好的安全做法,也是使用 MySQL 安全安装脚本之前所必需的。

让我们首先使用 MySQL 客户端连接到数据库:

复制代码
sudo mysql

现在我们已连接,我们可以使用以下命令为 root 帐户设置密码:

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mypassword';

设置密码后,MySQL 客户端将无法再仅使用 sudo mysql 命令连接。

第四步:保护 MySQL 服务器

由于数据库是应用程序的关键部分,因此您需要保护它。MySQL 通过提供 mysql_secure_installation 命令来帮助您做到这一点。

我们现在将启动安全安装脚本:

复制代码
sudo mysql_secure_installation

下面的屏幕截图显示了 MySQL 提出的不同问题。根据您的需要填写和调整:

让我们使用在安全安装过程中设置的新 root 密码重新连接到服务器。

复制代码
sudo mysql -u root -p

您现在应该看到 MySQL 提示:

第五步:添加新用户

安装现已完成。为了将任何应用程序连接到您的数据库,建议创建一个数据库和一个特定用户,并授予该用户访问此数据库的权限。这使我们能够更好地管理数据。

我们将首先创建用户:

复制代码
CREATE USER 'didier'@'localhost' IDENTIFIED WITH mysql_native_password BY '%$HmbKe#XeVtn8i%mX$Ha&v2on%crUWc';

请注意,用户只能通过"localhost"连接到数据库。如果您希望用户能够从任何地方连接,请使用 % 而不是 localhost。请注意,这是不安全的,因为没有基于客户端连接位置的限制。

然后,我们刷新所有权限。这将刷新 MySQL,并允许我们立即使用该用户。

复制代码
flush privileges;
第六步:创建 MySQL 数据库并授予权限

我们现在继续使用以下命令创建一个名为 myapp 的 MySQL 数据库:

复制代码
 create database myapp;

然后,我们授予先前创建的用户对此数据库的所有权限:

复制代码
grant all privileges on myapp.* to 'didier'@'localhost';

您现在可以对数据库执行任何操作。

第七步:停止并重新启动 MySQL

在管理应用程序时,您需要停止或重新启动 MySQL 数据库。

使用以下命令停止 MySQL:

复制代码
sudo service mysql stop

要重新启动 MySQL,请使用此命令:

复制代码
sudo service mysql restart
相关推荐
坤坤子吖2 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
阡陌数智2 小时前
Claude API新版本重大变更与安全升级指南
java·linux·安全
奶茶树2 小时前
【Linux】环境开发工具(vim,gcc,g++,Makefile)
linux·运维·vim
aiks_yuan4 小时前
MySQL 深分页 LIMIT 越翻越慢怎么办:300 万行实测 OFFSET、延迟关联和 keyset 的耗时差距(MySQL 8.2)
mysql
Decay__4 小时前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
木子欢儿6 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
say_fall6 小时前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信
进击的荆棘6 小时前
Linux系统——线程同步与互斥
linux·运维·服务器·策略模式·同步·互斥·posix
橙橙笔记6 小时前
QT的学习第四部分
linux·qt·学习·音视频
.道阻且长.6 小时前
Linux基本开发工具:gdb和cgdb的使用
linux·运维·服务器·开发语言