本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
babelfish-compass 是专为 Babelfish for PostgreSQL 设计的数据库迁移工具镜像,旨在简化从 SQL Server 到支持 Babelfish 的 PostgreSQL 数据库的迁移过程。该镜像集成了迁移全流程所需的工具链,帮助用户完成迁移评估、模式转换、数据迁移及兼容性验证,降低数据库迁移的技术门槛和复杂度。
docker run --rm -v $(pwd)/output:/workspace \ -e SOURCE_CONN_STR="sqlserver://sa:YourStrong!Passw0rd@sqlserver-host:1433?database=AdventureWorks" \ -e TARGET_CONN_STR="postgresql://postgres:postgres@babelfish-host:5432/babelfish_db" \ babelfish-compass:latest evaluate
执行后,评估报告将生成在 ./output/evaluation_report.json
docker run --rm -v $(pwd)/output:/workspace \ -e SOURCE_CONN_STR="sqlserver://sa:YourStrong!Passw0rd@sqlserver-host:1433?database=AdventureWorks" \ -e TARGET_CONN_STR="postgresql://postgres:postgres@babelfish-host:5432/babelfish_db" \ -e EXCLUDE_OBJECTS="dbo.table1,dbo.view2" \ babelfish-compass:latest convert-schema
转换后的模式脚本将生成在 ./output/schema/ 目录
docker run --rm -v $(pwd)/output:/workspace \ -e SOURCE_CONN_STR="sqlserver://sa:YourStrong!Passw0rd@sqlserver-host:1433?database=AdventureWorks" \ -e TARGET_CONN_STR="postgresql://postgres:postgres@babelfish-host:5432/babelfish_db" \ -e BATCH_SIZE=*** \ babelfish-compass:latest migrate-data
| 环境变量 | 描述 | 示例 | 是否必需 |
|---|---|---|---|
| SOURCE_CONN_STR | 源 SQL Server 数据库连接字符串(包含用户名、密码、主机、端口和数据库名) | sqlserver://sa:pass@host:1433?database=db | 是 |
| TARGET_CONN_STR | 目标 Babelfish 实例连接字符串(PostgreSQL 格式) | postgresql://user:pass@host:5432/db | 是 |
| LOG_LEVEL | 日志级别(DEBUG/INFO/WARN/ERROR) | INFO | 否(默认) |
| WORKSPACE | 容器内工作目录(用于输出文件) | /workspace | 否(默认) |
| EXCLUDE_OBJECTS | 排除迁移的对象(逗号分隔,格式:schema.object) | dbo.table1,dbo.proc2 | 否 |
| BATCH_SIZE | 数据迁移批次大小(行) | *** | 否(默认:5000) |
| CONVERT_TIMEOUT | 模式转换超时时间(秒) | 3600 | 否(默认:1800) |
version: '3.8' services: babelfish-compass: image: babelfish-compass:latest volumes: - ./migration-output:/workspace environment: - SOURCE_CONN_STR=sqlserver://sa:YourStrong!Passw0rd@sqlserver:1433?database=AdventureWorks - TARGET_CONN_STR=postgresql://postgres:postgres@babelfish:5432/babelfish_db - LOG_LEVEL=DEBUG - BATCH_SIZE=20000 command: migrate-data depends_on: - sqlserver - babelfish sqlserver: image: mcr.microsoft.com/mssql/server:2019-latest environment: - ACCEPT_EULA=Y - SA_PASSWORD=YourStrong!Passw0rd ports: - "1433:1433" babelfish: image: edb/babelfish:latest environment: - POSTGRES_PASSWORD=postgres - BABELFISH_PASSWORD=postgres ports: - "5432:5432"
db_owner 权限,目标数据库需具备 SUPERUSER 权限BATCH_SIZE 参数优化性能,并在非业务高峰期执行免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429