如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

比特拓荒
• 阅读 886

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

MySQL 是一种流行的开源关系数据库管理系统(RDBMS),它使用 SQL 语法来执行数据库操作,如 CRUD(创建、读取、更新和删除),管理用户和权限。

MySQL 数据库是一个高性能数据库,在 LAMP 组合中扮演着不可或缺的角色,它存储网站数据。它与 PHP 无缝配合,在 web 开发中很受欢迎。MySQL 还具有高度的可定制性,支持多达数百万条记录的大型数据库,它还提供数据复制和冗余,以提供容错能力。

必备条件

  • 预装 Ubuntu 22.04 系统
  • 具有管理员访问权限的 Sudo 用户
  • 可靠的互联网连接

    (1) 更新 APT 软件包索引

首先,登录到您的服务器实例并更新本地 APT 包索引。

$ sudo apt update

(2) 安装 MySQL

MySQL 服务器包在 Ubuntu 的存储库中免费提供。在编写本指南时,最新版本是 MySQL server 8.0,并且已经托管在存储库中。

$ sudo apt install mysql-server -y

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

安装完成后,MySQL 守护进程就会自动启动并在后台安静运行,通过下命令来确认

$ sudo systemctl status mysql

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

也可以通过以下命令确认

$ systemctl is-active mysql

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

您可以将 MySQL 设置为随系统自动启动,如图所示。

$ sudo systemctl enable mysql

(3) MySQL Server 安装安全设置

默认的 MySQL 设置是不安全的,特别是如果您打算在生产中使用数据库服务器。

MySQL 安装提供了一个安全脚本,用于解决不太安全的默认选项,请运行以下命令:

$ sudo mysql_secure_installation

默认情况下,MySQL 使用 auth_socket 进行身份验证。这是一种无密码身份验证,使用 auth_socket 插件,用户可以使用其用户帐户凭据登录 MySQL 并对其进行身份验证。

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

如果您希望使用密码验证,请按 CTRL+C 取消操作并访问 MySQL 终端

$ sudo mysql

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

接下来,运行 ALTER USER 命令将 root 用户的身份验证方法修改为密码验证,如图所示。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mypassword';

然后,退出 MySQL 终端

FLUSH PRIVILEGES
EXIT

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

再次运行脚本,提供 root 密码,然后按 ENTER。接下来,您可以选择更改 root 用户的密码或提供新密码。在我们的情况下,我们不修改密码,因此,我们将按 N。

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

对于其余提示,请按 Y 以保护数据库服务器的安全,执行以下操作来确保数据库安全性。

  • 删除任何匿名用户
  • 不允许 root 用户远程登录
  • 删除测试数据库及其访问权限
  • 保存通过重新加载特权表所做的更改

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

(4) 创建 MySQL 管理用户

默认情况下,MySQL 会在安装期间创建一个默认的根用户来管理数据库。用户拥有完全权限,因此可以对所有数据库、表、用户等进行绝对控制。

建议为运行管理任务创建一个单独的数据库用户,再次以 root 用户身份登录 MySQL 数据库服务器。

$ sudo mysql -u root -p

创建数据库用户

CREATE USER 'linuxtechi'@'localhost' IDENTIFIED BY 'password';

然后将所有权限授予用户,. 表示数据库服务器中的所有数据库。

GRANT ALL PRIVILEGES ON *.* TO 'linuxtechi'@'localhost' WITH GRANT OPTION;

接下来,刷新PRIVILEGES

FLUSH PRIVILEGES

退出 MySQL 终端

EXIT

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

以管理用户身份登录

$ mysql -u linuxtechi -p

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

我的开源项目

如何在 Ubuntu 22.04 上安装 MySQL 数据库 ?

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
梦
4年前
微信小程序new Date()转换时间异常问题
微信小程序苹果手机页面上显示时间异常,安卓机正常问题image(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/b691e1230e2f15efbd81fe11ef734d4f.png)错误代码vardate'2021030617:00:00'vardateT
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
mysql用户
1\.学会能按着需求创建一个帐号2\.知道连接字符串是什么样3\.密码密码怎么恢复mysql用户权限介绍mysql用户管理 !(https://oscimg.oschina.net/oscnet/368d3c1e00a0a9515545c2962660a27a080.png)!(https://oscimg.oschin
Wesley13 Wesley13
3年前
thinkphp 基本配置
12returnarray(34//定义数据库连接信息5'DB\_TYPE''mysql',//指定数据库是mysql67'DB\_HOST''localhost',89'DB\_NAME''uchome',//数据库名1011'DB\_USER''root
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究