本文将详细介绍如何通过 SSH 在远程服务器上安装 MySQL,涵盖连接远程服务器、更新软件包索引、安装 MySQL、配置 MySQL 服务以及后续的一些基本管理步骤
无论你是系统管理员还是开发人员,本文都将为你提供一个全面的指导
一、准备工作 在开始之前,你需要确保以下几点: 1.远程服务器的访问权限:你需要知道远程服务器的 IP 地址和 SSH 登录的用户名及密码,或者使用 SSH密钥对进行无密码登录
2.SSH 客户端:你的本地计算机上需要安装 SSH客户端
在 Windows 上,你可以使用 PowerShell 内置的 SSH 命令,或者下载第三方工具如 PuTTY
在 macOS 和 Linux 上,SSH 命令通常已经预装
3.远程服务器的操作系统信息:你需要知道远程服务器的操作系统类型(如 Ubuntu、Debian、CentOS 或 RHEL)和版本,因为不同的操作系统有不同的包管理器和命令
二、连接到远程服务器 首先,通过 SSH连接到远程服务器
打开你的终端或命令提示符,并运行以下命令: bash ssh username@server_ip 将`username`替换为你的 SSH用户名,`server_ip`替换为远程服务器的 IP 地址
如果使用的是 SSH密钥对进行认证,确保你的私钥文件在默认位置或指定`-i` 选项来指定私钥文件
三、更新软件包索引 一旦成功连接到远程服务器,你需要更新系统的软件包索引
这一步是为了确保你安装的是最新版本的软件包
对于 Debian/Ubuntu 系统,运行以下命令: bash sudo apt update 对于 CentOS/RHEL 系统,运行以下命令: bash sudo yum check-update 或者,在某些版本的 CentOS 上,你可能需要使用`dnf` 命令: bash sudo dnf check-update 四、安装 MySQL 接下来,使用系统的包管理器安装 MySQL
不同的操作系统有不同的命令
对于 Debian/Ubuntu 系统,运行以下命令: bash sudo apt install mysql-server -y 对于 CentOS/RHEL 系统,运行以下命令: bash sudo yum install mysql-server -y 或者,如果你使用的是较新的 CentOS 版本,可能需要使用`dnf` 命令: bash sudo dnf install mysql-server -y 安装过程中,系统可能会提示你确认安装
使用`-y` 选项可以自动确认所有提示,从而避免手动输入
五、启动并配置 MySQL 服务 安装完成后,你需要启动 MySQL 服务,并设置它随系统启动而自动启动
对于 Debian/Ubuntu 系统,使用以下命令启动 MySQL 服务: bash sudo systemctl start mysql 设置 MySQL 服务随系统启动: bash sudo systemctl enable mysql 注意:在某些版本的 Ubuntu 上,MySQL服务的名称可能是`mysqld`而不是`mysql`
你可以使用`systemctl list-units --type=service | grep mysql` 命令来检查服务名称
对于 CentOS/RHEL 系统,使用以下命令启动 MySQL 服务: bash sudo systemctl start mysqld 设置 MySQL 服务随系统启动: bash sudo systemctl enable mysqld 六、配置 MySQL 安装并启动 MySQL 服务后,你需要进行一些基本的配置
这通常包括设置 root用户的密码、删除匿名用户、禁止 root 用户远程登录(出于安全考虑)以及删除测试数据库等
运行以下命令来配置 MySQL: bash sudo mysql_secure_installation 系统会提示你输入 root用户的当前密码(如果是首次安装,则可能没有密码,直接按 Enter 键跳过),然后设置新的密码
接下来,系统会询问你是否想要进行一些安全相关的配置,如删除匿名用户、禁止 root 用户远程登录等
通常,你应该接受这些默认设置以增强安全性
七、允许远程连接(可选) 默认情况下,MySQL 只监听 localhost 接口上的请求
如果你需要从其他设备连接到 MySQL 服务器,你需要修改 MySQL 的配置文件来允许远程连接
编辑 MySQL 的配置文件(通常是`/etc/mysql/my.cnf` 或`/etc/my.cnf`),找到`bind-address` 参数,并将其更改为服务器的实际 IP 地址或`0.0.0.0`(表示接受来自任何地方的数据流)
例如: plaintext bind-address =0.0.0.0 保存更改后,重新加载 MySQL 配置以使更改生效: bash sudo systemctl reload mysqld 此外,你还需要确保服务器的防火墙允许 TCP端口3306(MySQL 的默认端口)的流量
在 CentOS/RHEL 系统上,你可以使用`firewalld` 来管理防火墙规则: bash sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload 在 Debian/Ubuntu 系统上,如果你使用的是`ufw`防火墙,可以使用以下命令: bash sudo ufw allow3306/tcp 八、登录 MySQL 并管理数据库 现在,你可以使用以下命令登录 MySQL: bash sudo mysql -u root -p 系统会提示你输入 root用户的密码
输入密码后,你将进入 MySQL 的命令行界面,在