本地 云
下载PDF
此功能仅适用于 Log360

# 数据库迁移

最后更新于：2025年9月12日

本页面内容

- 重要注意事项
- MSSQL迁移的先决条件
- PostgreSQL迁移的先决条件
- 外部 PostgreSQL 的数据库备份
- 迁移步骤

使用此选项，您可以将Log360的内置数据库服务器（PostgreSQL）更改为MS SQL Server或另一个PostgreSQL服务器实例。

## 重要注意事项

- 支持的数据库迁移：

- PostgreSQL服务器迁移至MS SQL服务器或另一PostgreSQL实例
- MS SQL Server 迁移至 PostgreSQL Server 或另一台 MS SQL Server 实例。

- 支持的数据库版本：

- PostgreSQL：10 到 14
- MS SQL：2008 及以上版本

- 操作前请备份数据库。
- 建议在迁移至MS SQL Server时应用微软推荐的Windows服务包及累积更新。

## MSSQL迁移的先决条件

1. 从已安装的SQL Server目录中复制bcp.exe 和bcp.rll文件，将其粘贴到Log360的bin文件夹中（<Log360_安装目录/bin>）。

- bcp.exe 文件位置：<MSSQL_安装目录>\Client
  SDK\ODBC\...\Tools\Binn\bcp.exe。例如：C:\Program Files\Microsoft SQL
  Server\Client SDK\ODBC\...\Tools\Binn\bcp.exe。
- bcp.rll 文件位置：<MSSQL_安装文件夹>\Client
  SDK\ODBC\...\Tools\Binn\Resources\1033\bcp.rll。例如：C:\Program
  文件\Microsoft SQL Server\Client SDK\ODBC\...\Tools\Binn\Resources\1033\bcp.rll

2. 若需迁移至MS SQL，请根据MS SQL Server版本在Log360机器上安装对应的SQL Native Client。

MS SQL Server 版本 | 本机客户端
--- | ---
2008 | 下载
2012 | 下载
2014 | 下载
2017 | 下载
2019 | 下载

注：Log360亦支持MS SQL Server 2022版本。

3. 若MS SQL服务器机器启用了防火墙，必须开放TCP和UDP端口。
4. 若目标迁移的MS SQL服务器启用了强制加密功能，请执行以下步骤：

- 将证书转换为 .cer 格式。

- 打开IIS 管理器。
- 在中间窗格中，单击“服务器证书”。
- 打开要使用的证书，然后单击“详细信息”选项卡。
- 单击“复制到文件”。
- 在出现的证书导出向导中单击“下一步”。
- 在“导出私钥”屏幕上，选择“否，不导出私钥”，然后单击“下一步”。
- 在“导出文件格式”屏幕上，选择“DER编码二进制X.509 (.CER)”或“Base-64编码X.509 (.CER)”，然后单击“下一步”。
- 输入文件名并单击“下一步”，然后单击“完成”。

- 打开命令提示符，导航至 <安装目录>\jre\bin。使用以下命令将证书关联到 Java KeyStore。

  keytool -import -v -trustcacerts -alias myserver -file 证书路径\证书名.cer -keystore "..\lib\security\cacerts" -keypass changeit -storepass changeit -noprompt

  其中pathofthecert为证书存储路径，certname 为证书名称。

  该证书将被添加至您的 Java KeyStore。

## PostgreSQL迁移的先决条件

1. 打开安装产品的远程机器，导航至Product Home\ pgsql\ data\ pg_hba.conf
2. 打开 pg_hba.conf 文件，添加主机 IP 地址及其子网掩码为 0.0.0.0/0 的条目（参见图示）。
3. 导航至产品根目录\pgsql\data\postgresql.conf
4. 打开postgresql.conf文件，将Listen_addresses修改为'*'并移除该行开头的#符号（参见图示）

## 外部PostgreSQL数据库备份

- 在安装了PostgreSQL的机器上，进入<postgresql_installdir>/data目录并打开posgresql.conf文件。查找wal_level条目，取消该条目的注释并将其值修改为archive。
- 将<postgresql_installdir>/lib和<postgresql_installdir>/bin目录下的所有文件复制，分别粘贴至<product_home>/pgsql/lib和<product_home>/pgsql/bin目录。此处<product_home>指代Log360或您正在配置自动备份计划程序的集成产品的根目录。
- 重启外部 PostgreSQL 服务器。

每次更新PostgreSQL服务器时，请重复执行上述步骤1至3。

## 迁移步骤

注意：执行步骤前请备份/快照Log360（重要）

1. 打开命令提示符，导航至 <Log360 安装目录\bin>（此处 Log360 安装目录指 Log360 的安装位置）。
2. 运行shutdown.bat 停止 Log360。
3. 运行ChangeDB.bat。
4. 在服务器类型菜单中，选择计划切换到的数据库服务器。
5. 若选择PostgreSQL 服务器，则：

- 在主机名和端口字段中，输入PostgreSQL数据库服务器的主机名或IP地址及端口号。
- 输入具有创建新数据库权限的用户名和密码。

6. 若选择MS SQL Server，则：

- 手动将bcp.exe和bcp.rll 文件移动到 bin 文件夹中。
- 在“主机名和端口”字段中，输入MS SQL数据库服务器的主机名或IP地址及其端口号。
- 在“选择服务器实例”字段中，选择要使用的 SQL Server 实例。
- 身份验证方面，可使用 Windows 凭据或 SQL Server 用户帐户。
- 若需使用SQL Server用户账户，请选择SQL身份验证并输入用户名和密码。
- 若需使用 Windows 身份验证，请选择Windows 身份验证，并输入 Windows 域用户账户的用户名和密码。
注意：所用用户帐户必须具有在所选 MS SQL Server 中创建数据库的权限。

7. 勾选"迁移现有数据"复选框，将旧数据库数据复制到新数据库。

重要提示：仅当您正在更改全新安装的Log360数据库时，才可取消勾选此框。

8. 若目标MS SQL服务器启用了强制加密功能，请勾选SSL连接选项。
9. 点击测试连接并等待连接建立。
10. 连接测试成功后，点击配置数据库以启动迁移。