在 Ubuntu 24.04 LTS 上安装 MySQL 8

小酋仍在学习 2024-10-08 14:37:01 阅读 55

1. 更新系统软件包

在开始安装 MySQL 之前,确保你的系统软件包是最新的。

sudo apt update

sudo apt upgrade -y

2. 添加 MySQL APT 存储库

首先,下载 MySQL APT 存储库的包:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.17-1_all.deb

然后,使用 <code>dpkg 命令安装下载的包:

sudo dpkg -i mysql-apt-config_0.8.17-1_all.deb

MySQL 官方还没有为你的 Ubuntu 版本(24.04 LTS,代号为 "Noble")提供正式支持。你可以选择使用与当前系统最兼容的已支持系统的 MySQL APT 存储库。建议选择ubuntu focal

(1) 配置 MySQL 产品和版本

使用箭头键导航到 "MySQL Server & Cluster (Currently selected: mysql-8.0)" 选项。

按下 <code>Enter 键,这将允许你选择具体的 MySQL 服务器版本。

在版本选择界面中,选择 "mysql-8.0" 版本(或其他你想要的版本)并按 Enter

(2) 配置 MySQL 工具和连接器

使用箭头键导航到 "MySQL Tools & Connectors (Currently selected: Enabled)" 选项。

按下 <code>Enter 键,确认工具和连接器的配置(默认启用)。

(3) 配置 MySQL 预览包(默认禁用)
(4)确认配置

使用箭头键导航到 "Ok" 选项。

按下 <code>Enter 键,确认并保存配置。

3. 更新软件包索引

添加 MySQL APT 存储库后,需要更新软件包索引:

sudo apt update

4. 安装 MySQL

现在,你可以安装 MySQL 服务器:

sudo apt install mysql-server -y​

5. 启动 MySQL 服务并使其在系统启动时自动启动

sudo systemctl start mysql

sudo systemctl enable mysql

6. 运行安全安装脚本

MySQL 提供了一个安全安装脚本,可以帮助你进行一些基础的安全配置。

sudo mysql_secure_installation

按照提示完成以下配置:

移除匿名用户

禁止 root 远程登录

移除测试数据库

重新加载权限表

7. 使用 <code>ALTER USER 命令更改 root 用户的认证方式

MySQL 安装默认使用 auth_socket 插件进行认证,这意味着即使为 root 用户设置了密码,你也无法使用密码登录。你可以通过以下步骤将认证插件更改为 mysql_native_password,这样就可以使用密码登录了。

登录 MySQL Shell

使用 sudo 登录 MySQL shell,因为默认情况下 root 用户使用 auth_socket 插件认证。

sudo mysql

更改 root 用户的认证插件并设置密码

在 MySQL shell 中运行以下命令:

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

FLUSH PRIVILEGES;

请将 your_new_password 替换为你希望设置的 root 用户的新密码。

退出 MySQL shell

EXIT;

使用新密码登录

现在你应该可以使用新设置的密码登录 MySQL:

mysql -u root -p

#查看版本

SELECT VERSION();

8.安装后MySQL创建的目录

数据库目录:/var/lib/mysql/

配置文件:/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf

相关命令:/usr/bin(mysql,mysqladmin、mysqldump等命令。

mysql:MySQL 客户端,用于连接和管理 MySQL 数据库。

mysqladmin:MySQL 管理工具,用于执行数据库管理任务。

mysqldump:用于备份数据库。

启动脚本:/usr/lib/systemd/system/mysql.service

9. 配置防火墙(可选)

如果你的服务器有防火墙,你需要允许 MySQL 服务通过防火墙。假设你使用的是 ufw

sudo ufw allow mysql

sudo ufw reload

10. 卸载

sudo apt purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*

sudo apt autoremove

sudo apt autoclean

sudo rm -rf /etc/mysql /var/lib/mysql

11.提示

如果安装DBeaver后,在测试连接时报错:Access denied for user 'root'@'localhost' (using password: YES)

在DBeaver刷新几次就好了。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。