在京东云轻量应用服务器(Lightweight Application Server)上安装 MySQL,通常有两种主流方式:
- 使用镜像一键部署(推荐新手,最简单)。
- 手动命令行安装(适合需要自定义配置或版本的用户)。
以下是两种方式的详细操作步骤:
方法一:使用“应用商店”镜像一键部署(推荐)
这是最快捷的方式,京东云提供了预装好 MySQL 的镜像,开机即服务。
- 创建实例时选择:
- 进入京东云控制台,点击【创建实例】。
- 在“镜像”选择步骤中,不要选“系统镜像”,而是切换到 “应用镜像” 或 “应用市场” 标签页。
- 搜索关键词
MySQL或LAMP/LNMP。 - 选择你需要的版本(如 MySQL 5.7, 8.0 等),点击购买/创建。
- 获取密码:
- 实例启动后,进入实例详情页。
- 查看 “应用信息” 或 “初始密码” 区域。
- 系统会自动生成一个随机 root 密码,请务必复制保存。
- 连接测试:
- 通过远程终端(如 Xshell、Putty 或浏览器自带的 VNC)登录服务器。
- 输入
mysql -u root -p,粘贴刚才保存的密码即可登录。
方法二:手动命令行安装(以 Ubuntu/CentOS 为例)
如果你已经创建了普通 Linux 实例,或者需要特定版本,可以手动安装。
场景 A:CentOS 7/8 / Rocky Linux
-
更新系统并安装依赖:
sudo yum update -y sudo yum install wget -y -
添加 MySQL YUM 源(以 MySQL 8.0 为例):
# 下载 RPM 包 wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm # 安装源 sudo rpm -ivh mysql80-community-release-el8-1.noarch.rpm # 安装 MySQL 服务端 sudo yum install mysql-server -y -
启动并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld -
获取临时密码:
MySQL 首次安装会生成一个随机 root 密码,保存在日志中:sudo grep 'temporary password' /var/log/mysqld.log注意:输出类似
A1b2C3d4E5f6,请复制该字符串。 -
初始化安全设置:
sudo mysql_secure_installation- 输入上一步获取的临时密码。
- 按提示修改 root 密码(建议设置为强密码)。
- 删除匿名用户、禁止 root 远程登录、移除 test 数据库等。
场景 B:Ubuntu 20.04 / 22.04
-
更新软件源:
sudo apt update sudo apt upgrade -y -
安装 MySQL:
sudo apt install mysql-server -y -
启动服务:
sudo systemctl start mysql sudo systemctl enable mysql -
安全加固:
Ubuntu 默认使用auth_socket插件,root 用户可以直接通过sudo登录,无需密码。但为了远程管理,建议执行:sudo mysql_secure_installation按照提示设置新密码并配置权限。
关键后续配置(必做)
无论使用哪种方式,安装完成后必须完成以下两步才能从外部访问:
1. 配置防火墙(开放端口)
京东云轻量服务器默认有安全组限制,且系统内部也有防火墙。
- 京东云控制台安全组:
- 进入实例详情 -> 安全组。
- 添加入站规则:协议
TCP,端口3306,授权对象0.0.0.0/0(生产环境建议仅填写你的本地 IP)。
- 系统内部防火墙(如果开启):
- CentOS:
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent && sudo firewall-cmd --reload - Ubuntu:
sudo ufw allow 3306/tcp
- CentOS:
2. 允许远程连接
默认情况下,MySQL 只允许 localhost 连接。如果需要从本地电脑(Navicat/DBeaver 等)连接,需修改用户权限:
- 登录 MySQL:
mysql -u root -p - 执行以下 SQL(将
'your_password'替换为你设置的密码):-- 允许 root 从任何 IP 连接 (慎用,生产环境建议指定具体 IP) CREATE USER 'root'@'%' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES; EXIT;注:MySQL 8.0+ 版本可能不支持
%通配符直接授权,建议先创建用户再授权。
常见问题提示
- 忘记密码:如果忘记 root 密码,可以通过停止 MySQL 服务,使用
--skip-grant-tables参数启动来重置。 - 性能优化:轻量云服务器内存较小(如 1G/2G),建议在
/etc/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf中适当调小innodb_buffer_pool_size(例如设置为物理内存的 50% 左右),防止 OOM(内存溢出)导致服务崩溃。
CLOUD云枢