在Ubuntu 18.04上安装MySQL并配置远程访问的完整教程

云信安装大师
90
AI 质量分
27 1 月, 2025
1 分钟阅读
0 阅读

在Ubuntu 18.04上安装MySQL并配置远程访问的完整教程

引言

MySQL 是一个广泛使用的开源关系型数据库管理系统。在 Ubuntu 18.04 上安装 MySQL 并配置远程访问是许多开发者和系统管理员的常见需求。本文将详细介绍如何在 Ubuntu 18.04 上安装 MySQL,并配置远程访问权限,以便其他设备可以通过网络连接到数据库。

准备工作

在开始之前,请确保你具备以下条件:

  1. 一台运行 Ubuntu 18.04 的服务器或虚拟机。
  2. 具有 sudo 权限的用户账户。
  3. 确保系统已更新到最新版本。

步骤 1:更新系统

首先,确保你的系统是最新的。打开终端并运行以下命令:

代码片段
sudo apt update
sudo apt upgrade -y

解释:

  • sudo apt update:更新包列表。
  • sudo apt upgrade -y:升级所有已安装的包到最新版本,-y 选项表示自动回答 “yes”。

步骤 2:安装 MySQL

接下来,我们将安装 MySQL 服务器。运行以下命令:

代码片段
sudo apt install mysql-server -y

解释:

  • sudo apt install mysql-server -y:安装 MySQL 服务器,-y 选项表示自动回答 “yes”。

步骤 3:启动并启用 MySQL 服务

安装完成后,MySQL 服务会自动启动。你可以通过以下命令检查 MySQL 服务的状态:

代码片段
sudo systemctl status mysql

如果 MySQL 服务没有自动启动,可以使用以下命令手动启动并设置为开机自启:

代码片段
sudo systemctl start mysql
sudo systemctl enable mysql

解释:

  • sudo systemctl start mysql:启动 MySQL 服务。
  • sudo systemctl enable mysql:设置 MySQL 服务为开机自启。

步骤 4:运行 MySQL 安全脚本

MySQL 提供了一个安全脚本,用于提高数据库的安全性。运行以下命令来执行安全脚本:

代码片段
sudo mysql_secure_installation

解释:

  • sudo mysql_secure_installation:运行 MySQL 安全脚本,该脚本会提示你设置 root 密码、移除匿名用户、禁止远程 root 登录等。

步骤 5:配置 MySQL 远程访问

默认情况下,MySQL 只允许本地访问。为了允许远程访问,我们需要修改 MySQL 的配置文件。

  1. 打开 MySQL 配置文件:

    代码片段
    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
    
  2. 找到 bind-address 这一行,将其值从 127.0.0.1 改为 0.0.0.0

    代码片段
    bind-address = 0.0.0.0
    
  3. 保存并退出编辑器(按 Ctrl + X,然后按 Y,最后按 Enter)。

  4. 重启 MySQL 服务以应用更改:

    代码片段
    sudo systemctl restart mysql
    

解释:

  • bind-address = 0.0.0.0:允许 MySQL 监听所有网络接口,从而允许远程访问。

步骤 6:创建远程访问用户

为了安全起见,我们不应该直接使用 root 用户进行远程访问。我们可以创建一个新的 MySQL 用户,并授予其远程访问权限。

  1. 登录 MySQL:

    代码片段
    sudo mysql -u root -p
    
  2. 创建一个新用户并授予远程访问权限。假设我们要创建一个用户 remote_user,密码为 password

    代码片段
    CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
  3. 退出 MySQL:

    代码片段
    EXIT;
    

解释:

  • CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password';:创建一个新用户 remote_user,允许从任何主机(%)连接。
  • GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;:授予该用户对所有数据库和表的所有权限。
  • FLUSH PRIVILEGES;:刷新权限,使更改立即生效。

步骤 7:配置防火墙(可选)

如果你的服务器启用了防火墙(如 UFW),你需要允许 MySQL 的默认端口(3306)通过防火墙。

  1. 允许 MySQL 端口:

    代码片段
    sudo ufw allow 3306/tcp
    
  2. 检查防火墙状态:

    代码片段
    sudo ufw status
    

解释:

  • sudo ufw allow 3306/tcp:允许 TCP 端口 3306 通过防火墙,这是 MySQL 的默认端口。

步骤 8:测试远程连接

现在,你可以从远程设备连接到 MySQL 服务器。假设你的服务器 IP 地址为 192.168.1.100,你可以使用以下命令测试连接:

代码片段
mysql -h 192.168.1.100 -u remote_user -p

输入密码后,如果连接成功,你将进入 MySQL 命令行界面。

总结

通过以上步骤,你已经成功在 Ubuntu 18.04 上安装并配置了 MySQL,并允许远程访问。以下是关键步骤的回顾:

  1. 更新系统并安装 MySQL。
  2. 启动并启用 MySQL 服务。
  3. 运行 MySQL 安全脚本以提高安全性。
  4. 修改 MySQL 配置文件以允许远程访问。
  5. 创建远程访问用户并授予权限。
  6. 配置防火墙以允许 MySQL 端口通过。
  7. 测试远程连接。

希望这篇教程对你有所帮助!如果你在安装或配置过程中遇到任何问题,欢迎在评论区留言讨论。

原创 高质量