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

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

一、我的情况

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

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

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

二、迁移步骤

1.为整个数据库生成仅限架构的sql脚本

image-20230814102444083

注意:如果想要有删除操作的,可以对一下选项配置:

1)检查是否存在对象:true

2)脚本 DROP 和 CREATE:脚本 DROP 和 CREATE

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

image-20230814102854461

3. 如果数据库中存在各种约束,那么最好在数据迁移前将约束禁用

--禁用某个数据库的所有表的外键约束
EXEC sp_MSforeachtable @command1='alter table ? NOCHECK constraint all;'

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;'

6. 成功啦~ ~ ~

下一次,世界精彩处见!

 

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

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

posted on 2024-03-11 14:09  jack_Meng  阅读(10)  评论(0编辑  收藏  举报

导航