数据库迁移

最后更新于:

使用此选项,您可以将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。
  3. MS SQL Server 版本 本机客户端

    2008

    下载

    2012

    下载

    2014

    下载

    2017

    下载

    2019

    下载

    :Log360亦支持MS SQL Server 2022版本。

  4. 若MS SQL服务器机器启用了防火墙,必须开放TCP和UDP端口。
  5. 若目标迁移的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. Prerequisites for PostgreSQL migration
  4. 导航至产品根目录\pgsql\data\postgresql.conf
  5. 打开postgresql.conf文件,将Listen_addresses修改为'*'并移除该行开头的#符号(参见图示)
  6. Prerequisites for PostgreSQL migration

外部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地址及端口号。
    • 输入具有创建新数据库权限的用户名和密码。
    Prerequisites for PostgreSQL migration
  6. 选择MS SQL Server,则:
    • 手动将bcp.exebcp.rll 文件移动到 bin 文件夹中。
    • “主机名和端口”字段中,输入MS SQL数据库服务器的主机名或IP地址及其端口号。
    • “选择服务器实例”字段中,选择要使用的 SQL Server 实例。
    • 身份验证方面,可使用 Windows 凭据或 SQL Server 用户帐户。
    • 若需使用SQL Server用户账户,请选择SQL身份验证并输入用户名和密码。
    • Prerequisites for PostgreSQL migration
    • 若需使用 Windows 身份验证,请选择Windows 身份验证,并输入 Windows 域用户账户的用户名和密码。
    • Prerequisites for PostgreSQL migration
      注意:所用用户帐户必须具有在所选 MS SQL Server 中创建数据库的权限。
  7. 勾选"迁移现有数据"复选框,将旧数据库数据复制到新数据库。
  8. 重要提示:仅当您正在更改全新安装的Log360数据库时,才可取消勾选此框。

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