# Windows

**URL:** https://heroiclabs.com/docs/zh/nakama/getting-started/install/windows/
**Summary:** 如何在任何Windows上设置和运行Nakama二进制文件及其前提条件。二进制设置允许您在没有Docker的情况下安装和管理Nakama。

---


# Windows 的 Nakama 二进制

本教程将向您展示如何在 Windows 上设置和运行 Nakama 二进制文件及其前提条件。

二进制设置允许您在没有[Docker](../docker/)的情况下安装和管理 Nakama，但它需要额外的步骤来设置和管理：

- 安装 CockroachDB 或 PostgreSQL
- 手动应用数据库迁移
- 手动将 Nakama 及其数据库升级到较新版本
- 配置服务或手动启动 Nakama 及其数据库

## 前提条件

### 运行系统

继续之前，确保您使用 64 位 Windows 8 或更高版本运行 CockroachDB，或使用 64 位 Windows 7 或更高版本运行 PostgreSQL。

接下来，安装受支持的数据库引擎。

### CockroachDB

Nakama 官方支持 CockroachDB v20.0 或更高版本，并为其存储引擎优化了查询。

按照官方指南说明，在 Windows 上[安装 CockroachDB](https://www.cockroachlabs.com/docs/stable/install-cockroachdb.html)。

### PostgreSQL

Nakama 仅在开发环境中非官方支持 PostgreSQL 9.6 或更高版本。

从官方网站下载并运行[PostgreSQL Windows 安装程序](https://www.postgresql.org/download/windows/)：

只有“PostgreSQL 服务器”和“命令行工具”为必需组件，其余为可选组件。

![PostgreSQL组件]({{< fingerprint_image "/images/pages/nakama/getting-started/install/database-install-postgresql-components.png" >}})

为数据库超级用户提供密码。请注意您在此处提供的密码，稍后在配置 Nakama 连接到数据库服务器时需要使用该密码。

在安装过程中对其他选项使用默认值。

## 下载 Nakama

获取适用于 Windows 的 Nakama 服务器的最新二进制版本：

1. 在 Nakama GitHub repo[版本页面](https://github.com/heroiclabs/nakama/releases)下载一个版本。
2. 提取归档文件，可选择重命名文件夹并将其移动到合适的位置。

## 正在运行 Nakama

启动 Nakama 服务器之前，您需要运行：

1. 您选中的数据库，即 CockroachDB 或 PostgreSQL。
2. 如果这是您第一次运行 Nakama 或您已升级 Nakama 版本，应迁移 Nakama 数据库。

### CockroachDB

运行 CockroachDB 的最简单的方法是将其作为启用了非安全模式的单节点服务器，使其只能在您本地主机（127.0.0.1）上访问。有关访问和安全控制的更多信息，请查阅[CockroachDB 文档](https://www.cockroachlabs.com/docs/v20.2/secure-a-cluster.html)。

1. 打开一个 shell（命令提示符，Powershell，Bash 等）并导航至您的 CockroachDB 目录。
2. 要启动 CockroachDB，运行以下内容：

**命令提示符**

```sh
cockroach.exe start-single-node --insecure --listen-addr=127.0.0.1
```

**Powershell 或 Bash**

```sh
./cockroach.exe start-single-node --insecure --listen-addr=127.0.0.1
```

成功运行 CockroachDB 的输出应类似于以下屏幕截图：

![正在运行CockroachDB]({{< fingerprint_image "/images/pages/nakama/getting-started/install/database-run-cockroachdb.png" >}})

可以将 CockroachDB 配置为作为 Windows 启动应用程序或服务运行，以便在后面跳过这一步。

**错误：无法加载命名时区**

CockroachDB 的一些版本需要 Go 时区.zip 压缩文件，以便从其中加载时区信息。

您可以通过[下载](https://golang.org/dl/)并安装最新的 Go 版本获得兼容的 zoneinfo 文件。`zoneinfo.zip`文件位于您的 Go 安装文件夹的`lib/time/zoneinfo.zip`。

运行 CockroachDB 前，可以在同一 shell 会话中将`ZONEINFO`环境变量设置为您的`zoneinfo.zip`文件的完整路径：

**命令提示符**

```sh
set ZONEINFO="C:\Program Files\Go\lib\time\zoneinfo.zip"
```

**Powershell**

```sh
$env:ZONEINFO="C:\Program Files\Go\lib\time\zoneinfo.zip"
```

**Bash**

```sh
export ZONEINFO="c/Program Files/Go/lib/time/zoneinfo.zip"
```

或者，也可以通过 Windows 设置来设置环境变量。

### PostgreSQL

安装后，PostgresSQL 应自动在后台运行，您可以继续运行 Nakama 迁移或 Nakama 服务器。

您可以使用 PostgreSQL 命令行工具或 GUI 应用程序（如 pgAdmin）来创建在特定应用程序内具有受限权限的用户。

### Nakama 迁移

如果这是您第一次运行 Nakama 或您已升级 Nakama 版本，应运行 Nakama 数据库迁移。如果您不确定，可以重新运行迁移。

如果您在默认配置下运行 CockroachDB，则运行迁移非常简单，无需其他选项：

**CockroachDB**

**命令提示符**

```sh
nakama.exe migrate up
```

**Powershell 或 Bash**

```sh
./nakama.exe migrate up
```

![针对CockroachDB的Nakama迁移]({{< fingerprint_image "/images/pages/nakama/getting-started/install/nakama-migrate-cockroachdb.png" >}})

**PostgreSQL**

如果您正在使用 PosgreSQL，则需要提供您的数据库服务器地址、用户和密码。除非您创建了自定义用户，否则这将是默认的超级用户`postgres`和您在安装过程中提供的主密码：

**命令提示符**

```sh
nakama.exe migrate up --database.address postgres:password@127.0.0.1:5432
```

**Powershell 或 Bash**

```sh
./nakama.exe migrate up --database.address postgres:password@127.0.0.1:5432
```

![针对PostgreSQL的Nakama迁移]({{< fingerprint_image "/images/pages/nakama/getting-started/install/nakama-migrate-postgresql.png" >}})

### Nakama 服务器

要使用 CockroachDB 或 PostgreSQL 启动 Nakama 服务器，运行以下内容：

**CockroachDB**

**命令提示符**

```sh
nakama.exe
```

**Powershell 或 Bash**

```sh
./nakama.exe
```

**PostgreSQL**

您需要提供与用于运行[Nakama PostgreSQL 数据库迁移](#nakama-migrations)相同的`database.address`值:

**命令提示符**

```sh
nakama.exe --database.address postgres:password@127.0.0.1:5432
```

**Powershell 或 Bash**

```sh
./nakama.exe --database.address postgres:password@127.0.0.1:5432
```

如果收到 Windows 安全警报，请勾选“私人网络...”方框，允许 Nakama 通过您的网络进行通信，并点击“允许访问”确认安全权限。

![Nakama防火墙]({{< fingerprint_image "/images/pages/nakama/getting-started/install/nakama-firewall.png" >}})

现在将运行 Nakama 服务器，并应显示类似的日志输出，其中包含警告和有用信息，例如：

- Nakama 数据目录
- Nakama 和数据库版本
- 各种服务的端口

**Nakama 与 CockroachDB**

![使用CockroachDB运行Nakama]({{< fingerprint_image "/images/pages/nakama/getting-started/install/nakama-run-cockroachdb.png" >}})

**Nakama 与 PostgreSQL**

![使用PostgreSQL运行Nakama]({{< fingerprint_image "/images/pages/nakama/getting-started/install/nakama-run-postgresql.png" >}})

## Nakama 控制台

您可以通过将浏览器导航到[127.0.0.1:7351](http://127.0.0.1:7351)来访问 Nakama 控制台。

提示登录时，默认凭据为`admin:password` 。可以通过配置文件或命令行标志更改凭据。

## 配置文件

您可为 Nakama 服务器自定义许多[配置选项](../../configuration/)。

## 后续步骤

现在您的 Nakama 服务器已经启动并运行了所需的配置，您可以使用首选的客户端 SDK 开始进行操作。
