数据库 - 国产化数据库之YashanDB 数据迁移服务YMP

YMP操作使用

 

 

待补充------------

部署资源

YashanDB Developer Center

登录与连接数据库

YashanDB Developer Center 

yasql使用

内置角色权限

安装错误解决

# 进入安装目录执行安装命令
$ cd /home/ymp/yashan-migrate-platform/
$ sh bin/ymp.sh install --db /home/ymp/yashandb-23.2.1.0-linux-x86_64.tar.gz

错误如下:

09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - task completed, status: FAILED
09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - retcode: 1
09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - stdout: start node with ping
09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - stderr: wait node 1-1 process start failed: failed to init dynamic library OPENSSL
09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - Failed to start instance
09:57:43.428 [main] INFO com.yashandb.tool.ymp.command.util.CommandUtil - 

根据日志中的错误信息 failed to init dynamic library OPENSSL,问题根源是 YashanDB 实例启动时无法加载 OpenSSL 动态库 。以下是解决方案:


问题原因

YashanDB 依赖 OpenSSL 库进行加密通信,但系统中可能缺少以下内容:

  1. OpenSSL 库未安装 或版本不兼容。
  2. 环境变量未配置 (如 LD_LIBRARY_PATH 未指向 OpenSSL 库路径)。
  3. 权限问题 (如库文件不可读或路径不可访问)。

解决方案

1. 安装/验证 OpenSSL
  • 检查是否安装

openssl version

  • 若未安装,根据操作系统安装:
    • Ubuntu/Debian

      bash

  • sudo apt-get install openssl libssl-dev

  • CentOS/RHEL

    bash

    • sudo yum install openssl openssl-devel

  • 确认版本兼容性

    • YashanDB 通常要求 OpenSSL 1.1.1 或更高版本。如果版本过低,需升级:

      bash

      • # 例如升级到 OpenSSL 1.1.1(Ubuntu)

        sudo apt-get install libssl1.1


2. 配置环境变量
  • 临时设置 (当前会话生效):

    bash

  • export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH # 根据实际路径调整

  • 永久设置 (写入 /etc/profile 或用户 ~/.bashrc):

    bas

  • echo 'export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH' >> ~/.bashrc

    source ~/.bashrc


3. 检查 YashanDB 安装包完整性
  • 重新解压或下载 YashanDB 安装包,确保 libssl.so 等动态库文件未损坏:

    bash

  • 1

    tar -zxvf yashandb-installer.tar.gz -C /opt/yashandb


4. 手动指定 OpenSSL 路径

在 YMP 配置文件中显式指定 OpenSSL 库路径(如 config.yml):

yaml

target:

type: yashandb

host: 127.0.0.1

port: 5432

username: yashan_user

password: yashan_password

database: target_db

ssl:

enabled: true

library_path: /usr/lib/x86_64-linux-gnu/libssl.so # 根据实际路径调整


5. 验证动态库依赖

使用 ldd 检查 YashanDB 二进制文件是否能正确加载 OpenSSL:

bash

1

ldd /opt/yashandb/bin/yashandb | grep ssl

  • 如果输出 libssl.so.1.1 => not found,需安装对应版本的库。

6. 重启服务并重试迁移

bash

# 停止现有 YashanDB 实例

yashandb-stop

# 重新启动并检查日志

yashandb-start

tail -f /var/log/yashandb/yashandb.log

# 重新执行迁移命令

ymp migrate -c config.yml


附录:常见 OpenSSL 路径

Ubuntu 20.04

/usr/lib/x86_64-linux-gnu/libssl.so.1.1

CentOS 8

/usr/lib64/libssl.so.1.1.1k

macOS (Homebrew)

/usr/local/opt/openssl/lib/libssl.dylib


如果问题仍未解决,请提供以下信息以便进一步排查:

  1. 操作系统版本(uname -a)。
  2. OpenSSL 版本(openssl version)。
  3. YashanDB 安装目录结构(tree /opt/yashandb)。

安装报错YAS-00519,openssl版本升级步骤-YashanDBhttps://www.yashandb.com/newsinfo/7420348.html?templateId=1718516

安装失败,端口占用解决

更改内置库SYS用户默认密码(可选)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天机️灵韵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值