首页 > 数据库 >SQlServer 高版本向低版本大量数据迁移

SQlServer 高版本向低版本大量数据迁移

时间:2024-03-11 14:11:19浏览次数:30  
标签:低版本 数据库 SQlServer 外键 约束 版本 迁移

SQlServer 高版本向低版本大量数据迁移

一、我的情况
  • 我们开发时 数据库版本是Sqlserver2017,甲方的数据库版本是Sqlserver2014

  • 我们数据库中的数据量大约1亿条,.mdf文件有七十多GB

  • 我们数据库里存在一些外键约束和存储过程

二、迁移步骤
1.为整个数据库生成仅限架构的sql脚本

image-20230814102444083

2.将生成的sql脚本在目标数据库上执行,生成一个空的仅含表结构的数据库

image-20230814102854461

3. 如果数据库中存在各种约束,那么最好在数据迁移前将约束禁用
--禁用某个数据库的所有表的外键约束
EXEC sp_MSforeachtable @command1='alter table ? NOCHECK constraint all;'
 
  • 1
  • 2
4.通过Microsoft SqL Server Management Studio 软件中的 导入导出数据 功能进行数据迁移 (最好用 管理员权限打开Microsoft SqL Server Management Studio,其实不用也可以成功)

image-20230814103253668

image-20230814103510021

image-20230814103747502

image-20230814103917877

然后就开始等待。。。。(我等待了一天一夜)

5.在目标数据库中打开 被禁用的约束
--启用某个数据库的所有表的外键约束
EXEC sp_MSforeachtable @command1='alter table ? CHECK constraint all;'
 
  • 1
  • 2
6. 成功啦~ ~ ~

下一次,世界精彩处见!

 

2024-03-11 14:08:02【出处】:https://blog.csdn.net/qq_43246722/article/details/132271469

=======================================================================================

标签:低版本,数据库,SQlServer,外键,约束,版本,迁移
From: https://www.cnblogs.com/mq0036/p/18065974

相关文章

  • SQLServer中sp_Who、sp_Who2和sp_WhoIsActive介绍和查看监视运行
    SQLServer中sp_Who、sp_Who2和sp_WhoIsActive介绍和查看监视运行使用sp_WhoIsActive监视活动sp_WhoIsActive存储过程可以监视SQLServer中当前正在运行的活动。介绍如果服务器速度变慢时,数据库管理员需要不断检查SQLServer实例上正在运行的操作。系统存储过程“s......
  • datax从mysql迁移数据到OceanBase
    datax部署下载dataxdatax下载地址安装dataxtar-zxvfdatax.tar.gz使用datax使用配置文件{"job":{"setting":{"speed":{"channel":4},"errorLimit":{......
  • mysqldump从mysql迁移数据到OceanBase
    使用mysqldump导出数据/usr/bin/mysqldump--single-transaction-Bemployees-S/data/mysql/mysql.sock-uroot-p>dump.sqlob使用source加载obclient-P2883-h192.168.56.20-uroot@mq_t1-A校验数据使用统计信息两个数据库收集统计信息的命令相同收集统计信息an......
  • 守护更多女性健康,华为云GeminiDB助力美柚数据库高效稳定迁移
    本文分享自华为云社区《守护更多女性健康,华为云GeminiDB助力美柚完成数据库高效稳定迁移》,作者:华为云头条。阳春三月,“三八”国际妇女节悄然而至。在社会快速发展的今天,女性力量在各个领域大放异彩,尽管女性成长路上可能会风雨兼顾,但是关注自己、保持身心健康才能走得更远、看到更......
  • SqlServer:FOR XML PATH('')
    业务需求:需要将一个流程的所有节点办理人,接收时间,以每一条requestid为主,横向的排列起来展示。而OAe9里面,workflow_currentoperator表就是存节点接收人,接收时间的。 它的结构如下:一个requestid下面有很多节点数据,每个节点也可能重复,因为有办理人,抄送人。在结构上,我们需要将......
  • Navicat 无法连接Oracle / SQLserver
    报  cannotcreateocihandle cannotcreateocienviromentORA-XXXX等;排除用户名密码端口错误原因:Navicat本地的OCI版本与Oracle本地的不匹配查看Oracle本地的OCI版本,将Navicat升级至对应版本解决:下载新的oci进行替换https://www.oracle.com/database/technol......
  • mysql测试环境和生产环境在同一台服务器上数据迁移避坑
    mysql测试环境和生产环境在同一台服务器上数据迁移要注意:生产库dacs ,测试库dacs_test 1、从生产导出数据:mysqldump-uroot-p --databases dacs >/tmp/dacs.sql如果此时无脑导入就会把生产覆盖了。source /tmp/dacs.sql ;因为t阿玛2、将导出数据的库替......
  • sqlserver和mysql区别
    1.数据库管理系统SQLServer是由微软公司开发的关系型数据库管理系统,适用于Windows操作系统。而MySQL则是由瑞典MySQL公司开发的,后来被Oracle公司收购,适用于多个操作系统,包括Windows、Linux和UNIX。2.许可证和成本SQLServer是商业产品,需要购买许可证才能使用。它的价格相对......
  • oracle 19c 迁移到11g
    从19c导出数据需指定VERSION=11.2.0.1[qdtais1]@ht19c01[/home/oracle]$expdpet/etdirectory=ncdumpfile=et_%U.dmplogfile=expet.logVERSION=11.2.0.1Export:Release19.0.0.0.0-ProductiononWedMar620:54:512024Version19.15.0.0.0Copyright(c)1982,2......
  • 关于debezium。kafka和sqlserver的数据同步
    直接在官网下载sqlserver的插件。DebeziumReleaseSeries2.5 下载完后将这个插件解压到linux里面。路径其实是无所谓的,我在kafka目录下,创建了一个connect目录,专门放置这些插件 然后去kafka的config目录下,修改connect-distributed.properties文件主要修改这几个点:kafka......