安装MySQL 8.0在不同的操作系统上会有所不同,但在大多数Linux发行版上,安装过程都遵循相似的步骤。这里,我将提供在Ubuntu 20.04 LTS上安装MySQL 8.0的详细步骤,这些步骤可以轻松地应用到其他Linux发行版上,只需进行少量修改。
准备工作
- 一台运行Ubuntu 20.04 LTS的服务器或虚拟机
- 拥有sudo权限的用户账户
步骤 1: 更新系统包
-
打开终端或通过SSH连接到你的服务器。
-
更新包索引列表,确保所有已安装的软件都是最新的:
bashsudo apt update sudo apt upgrade -y
步骤 2: 安装MySQL 8.0
Ubuntu 20.04 LTS的默认软件仓库已经包含MySQL 8.0,因此你可以直接安装而无需添加额外的仓库。
-
安装MySQL服务器:
bashsudo apt install mysql-server -y
这将安装MySQL服务器及其所有依赖项。
步骤 3: 安全配置MySQL
安装MySQL后,一个重要的步骤是执行安全配置脚本。这将帮助你提高MySQL服务器的安全性。
-
运行安全配置脚本:
bashsudo mysql_secure_installation
-
你将被提示设置密码策略等级。选择一个你认为合适的级别(0-2)。
-
设置
root
用户的密码。根据之前选择的密码策略,你可能需要提供一个符合要求的密码。 -
接下来,你将被问及是否移除匿名用户、禁用
root
用户的远程登录、删除test
数据库,并重新加载权限表。建议对所有这些问题回答"Yes"。
步骤 4: 验证MySQL服务状态
确保MySQL服务正在运行:
bash
sudo systemctl status mysql
如果服务未运行,使用以下命令启动它:
bash
sudo systemctl start mysql
步骤 5: 登录MySQL数据库
现在,尝试使用root
账户登录MySQL数据库:
bash
sudo mysql -u root -p
输入你在安全配置中设置的密码。
步骤 6: 配置MySQL使用远程连接(可选)
默认情况下,MySQL配置为仅允许本地连接。如果你需要远程连接到MySQL服务器,需要做一些额外的配置。
-
登录到MySQL服务器:
bashsudo mysql -u root -p
-
选择MySQL数据库:
sqlUSE mysql;
-
更新
root
用户或其他用户,允许从远程地址连接:sqlUPDATE user SET host = '%' WHERE user = 'root' AND host = 'localhost';
这将允许
root
用户从任何地址连接。出于安全考虑,建议创建一个新的用户用于远程连接。 -
应用更改:
sqlFLUSH PRIVILEGES; EXIT;
-
修改MySQL配置文件(
/etc/mysql/mysql.conf.d/mysqld.cnf
),注释掉bind-address
这一行:ini# bind-address = 127.0.0.1
-
重启MySQL服务:
bashsudo systemctl restart mysql
步骤 7: 开放防火墙端口(如果需要)
如果服务器运行的是UFW防火墙,并且你希望从外部网络连接到MySQL服务器,需要开放3306端口:
bash
sudo ufw allow 3306
sudo ufw reload
完成以上步骤后,你应该已经成功在Ubuntu 20.04 LTS上安装并配置了MySQL 8.0服务器,包括基本的安全设置和远程连接配置(如果需要)。