跳到主要内容
版本:v3

LeanDB MySQL 使用指南

LeanDB MySQL 是云引擎提供的托管数据库,开发者可以在云引擎中使用 MySQL 客户端类库连接,访问完整的 MySQL 功能,更多其他托管数据库请查看 云引擎服务总览

创建和管理实例

开发者可以在 开发者中心 > 你的游戏 > 游戏服务 > 云服务 > 云引擎 > 数据库 > MySQL 页面创建和管理 LeanDB MySQL 实例。

创建实例

警告

LeanDB 实例一旦创建就会开始计费,如余额不足可能会导致账号因欠费被停用。

点击 创建实例 可在控制台中看到一些配置项:

  • 实例名称 用于在云引擎中通过环境变量引用到该 LeanDB 实例,在账户下需唯一。
  • 内存规格 目前提供 0.5GB1GB2GB4GB 几种,代表不同的运算能力,是计费的基础。
  • 存储空间 每个实例默认有 20G 的存储空间,可以选配 100G 或者 500G 的存储空间。

在调整好规格后,可以在控制台上看到当前规格的价格。

点击展开 LeanDB 计费详情

LeanDB 按天进行扣费,使用时间不足一天也按一天计费,每天扣除前一天的费用。 LeanDB 基于开发者选择的实例规格进行计费,与实际用量无关(即使创建后未使用也会计费)。各规格的价格可以在创建 LeanDB 时或

价格页面查看,扣费记录可在

开发者中心的账单中查看。

危险

如账号欠费停用超过一个月,LeanDB 及其中的数据会被彻底删除。

MySQL 版本

目前 LeanDB 仅提供 MySQL 5.6 版本。

在线扩容

目前 LeanDB MySQL 不提供自助扩容的能力,如需扩容请提交工单联系我们的技术支持。

管理共享

可以使用控制台上的「管理共享」功能将 LeanDB 实例共享给其他应用,被共享的应用的 LeanDB 页面可能看到这个实例,相关的环境变量也会出现在其他应用的云引擎中。

在云引擎中使用

LeanDB 所在的应用的云引擎在部署时,会被注入几个包含 MySQL 连接信息的环境变量,包括:

  • MYSQL_HOST_<NAME>
  • MYSQL_PORT_<NAME>
  • MYSQL_ADMIN_USER_<NAME>
  • MYSQL_ADMIN_PASSWORD_<NAME>

其中 <NAME> 是你在创建 LeanDB 时为它指定的名字,如果你的 LeanDB 名为 MYRDB 的话,就会有名为 MYSQL_HOST_MYRDB 的环境变量(以及其他三个)。

在 Node.js 中你可以这样连接到 MySQL:

const mysql = require("mysql");
const Promise = require("bluebird");

const mysqlPool = Promise.promisifyAll(
mysql.createPool({
host: process.env["MYSQL_HOST_MYRDB"],
port: process.env["MYSQL_PORT_MYRDB"],
user: process.env["MYSQL_ADMIN_USER_MYRDB"],
password: process.env["MYSQL_ADMIN_PASSWORD_MYRDB"],
database: "test",
connectionLimit: 10,
})
);

mysqlPool
.queryAsync("SELECT 1 + 1 AS solution")
.then((rows) => {
console.log("The solution is", rows[0].solution);
})
.catch((err) => {
console.error(err);
});
  • 你需要运行 npm install --save mysql bluebird 来安装上面代码中用到的依赖
  • 更多的用法请参考 mysqljs/mysql 的文档

管理数据

除了在云引擎中通过编程的方式访问 LeanDB,我们还提供了用于进行管理、调试或一次性数据操作的方式。

在线管理面板

为方便开发和调试,我们为开发者提供了一个 Web 界面来对 MySQL 进行管理,你可以在控制台上点击「管理员面板」链接来访问这个 Web 界面。

开发者可以在这个页面上进行 SQL 查询和更新,创建和管理数据库,创建和管理索引等操作。