当前位置: 首页 > article >正文

【数据迁移】Sqlserver 迁移 Postgresql 详解 CSV+COPY 详细图文教程(实战踩坑优化案例)

在这里插入图片描述

文章目录

    • 前期准备
    • 数据准备
    • CSV文件迁移方式
        • 启用xp_cmdshell
        • 从SQLServer导出CSV
        • 导入CSV到Postgresql
        • 数据测试
    • Pgloader方式迁移
        • 迁移工具与原理概述
        • 准备工作
        • 迁移步骤详解
        • 迁移后验证与优化
        • 常见问题与解决方案
        • 注意事项
    • 迁移优化

更多相关内容可查看

迁移思路:先用sqlserver把新的项目去跑起来,然后去切postgresql去跑一下项目 项目中一些持久层或者代码要做适配 然后适配完去jmeter去压测,这个数据库性能能否支撑迁移,然后去设计postgre的表结构 ,然后去迁移存储过程函数等,然后迁移索引,然后调研迁移脚本,最后去做测试

前期准备

部署Sqlserver本地数据库:https://blog.csdn.net/Aaaaaaatwl/article/details/145607603?spm=1001.2014.3001.5501

部署Postgresql本地数据库:https://blog.csdn.net/Aaaaaaatwl/article/details/145678643?spm=1001.2014.3001.5501

数据准备

如果为了练习 可以在对应的数据库中生成10万条数据,生成sql如下

-- 开启事务以提高插入性能
BEGIN TRANSACTION;

-- 插入 10 万条数据
DECLARE @i INT = 1;
WHILE @i <= 100000
BEGIN
    INSERT INTO xxx (
        SERIAL_NUMBER,
        SUBSCRIBER_ID,
        ORGANIZATION_ID,
        APP_ID,
        CERT_ENTITY,
        ENCRYPTED_D1,
        ENCRYPTED_D2,
        MODIFY_TIME,
        EXT_INFO,
        USER_TYPE
    )
    VALUES (
        -- SERIAL_NUMBER: 使用 NEWID() 生成唯一的 UUID
        CAST(NEWID() AS VARCHAR(40)),
        -- SUBSCRIBER_ID: 随机生成 1 到 1000000 之间的数字
        CAST(CEILING(RAND() * 1000000) AS NUMERIC(20)),
        -- ORGANIZATION_ID: 随机生成 1 到 10000 之间的数字
        CAST(CEILING(RAND() * 10000) AS NUMERIC(15)

http://www.kler.cn/a/554214.html

相关文章:

  • 无人机热成像与AI跟踪技术:全天候智能应用的未来!
  • 运用先进的智能算法和优化模型,进行科学合理调度的智慧园区开源了
  • Vue的$nextTick是如何工作的
  • vue中为组建添加样式的方式
  • 使用docker-compose运行服务
  • 大摩闭门会:250218 学习总结报告
  • EasyExcel快速入门
  • 短视频平台“封号圈”乱象猖獗,IP查询如何助力防范
  • 【llm post-training】从Loss Function设计上看LLM SFT和RL的区别和联系
  • 在Linux上安装和使用Docker
  • Linux日志系统
  • 使用mybatis -基本的增删改查
  • 从零搭建微服务项目Base(第7章——微服务网关模块基础实现)
  • k8s-对接NFS存储
  • 小怿学习日记(七) | Unreal引擎灯光架构
  • 若依路由机制
  • 2.19学习记录
  • android模拟加班
  • 23. AI-大语言模型-DeepSeek
  • 计算机三级网络技术知识汇总【3】