sqlserver复制远程数据库到本地

简介: sqlserver复制远程数据库到本地

前言

在工作中,我们经常需要把远程的数据库,同步一份到本地用于开发测试,这时候就需要复制一份数据库到本地来,具体操作,下文带大家一起学习下


一、前置知识

sql server 已安装,因为我备份的是sql server 2019版本的;
所以安装sql server2019 方法:
https://blog.csdn.net/SR02020/article/details/105361807

在微软的SQL Server 2000 数据库有三种类型的文件:

类型 缩写 中文意思
: mdf primary data file 主要数据文件
: ndf secondary data files 次要数据文件
: ldf Log data files 事务日志文件

主要数据文件:(扩展名.mdf是 primary data file 的缩写)

主要数据文件包含数据库的启动信息,并指向数据库中的其他文件。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。每个数据库有一个主要数据文件。

次要数据文件(扩展名.ndf是Secondary data files的缩写)

次要数据文件是可选的,由用户定义并存储用户数据。通过将每个文件放在不同的磁盘驱动器上,次要文件可用于将数据分散到多个磁盘上。另外,如果数据库超过了单个 Windows 文件的最大大小,可以使用次要数据文件,这样数据库就能继续增长。

事务日志 (扩展名.ldf是Log data files的缩写)

事务日志文件保存用于恢复数据库的日志信息。每个数据库必须至少有一个日志文件。

认识迁移脚本语法

restore database 数据库名
from disk='备份文件路径'
with move '数据库文件名'
to '数据库文件放置路径',
move '日志文件名'
to '日志文件存放置路径'

USE [master] RESTORE DATABASE [XXXMasterDB] FROM        
DISK = N'D:\xxx\publish_Backup\XXXMasterDB.bak' WITH FILE = 1,        
MOVE N'XXXMasterDB' 
TO N'C:\Program Files\Microsoft SQL Server\MSSQL16.MYSQLSERVER\MSSQL\DATA\XXXMasterDB.mdf',       
 MOVE N'XXXMasterDBB_log'
 TO N'C:\Program Files\Microsoft SQL Server\MSSQL16.MYSQLSERVER\MSSQL\DATA\xxxMasterDB_log.ldf',     
 NOUNLOAD,  STATS = 5

运行脚本可能遇到的错误,如果XXXMasterDB 已经存在,就删除或者换一个名字。

如果访问文件的权限不够,点击对应的文件,如上例子 xx/XXXMasterDB.mdf, 设置文件的权限。

二、具体操作步骤

这里用的是Mircosoft SQL Server Mangement Studio

1.备份数据库

备份数据库
image.png

2.还原数据库

连接本地数据后(前提需要安装sqlserver,创建本地数据库),新建查询,运行上述脚本,路径,名字要对应自己实际情况。

运行正常就可以

我这里遇到的问题,成功还原数据库后,点击某一个表,设计出现下面的提示信息
image.png

我安装的是2022的版本sql server,网上说是版本问题。也有可能是我的Mircosoft SQL Server Mangement Studio 版本问题,这里我选择重新安装Sql Server 为2019
查看版本

select @@version

我安装的sql server 版本
Microsoft SQL Server 2022 (RTM) - 16.0.1000.6 (X64)

备份的数据是下面的版本
Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64)

根据上述我重新安装 sql server 2019,成功解决上述问题;


总结

本文先带大家了解sqlserver备份还原数据库需要用的 .BAK .LDF 文件的大概意思。这里主要描述是还原数据库,至于备份数据库,还有sql server的安装给出了链接安装操作也可以达成目标,另外还顺便提了一嘴,我在实际操作过程遇到的版本不兼容的问题。

相关文章
|
3月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
788 152
|
3月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
408 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
3月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
4月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
289 5
|
3月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
|
5月前
|
SQL 存储 数据库
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
SQL Server Management Studio (SSMS) 21 - 微软数据库管理工具
1021 0
|
5月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
470 0
|
SQL 数据库
如何快速备份还原Sql Server 数据库
备份数据库 选择你要备份的数据库,鼠标右键单击,选择任务-备份   弹出备份数据库窗口,选择添加    弹出选择备份目标窗口,点击浏览,选择存放备份数据库的目录,输入文件名,后缀名输入.bak,点击确定,确定,备份完成     还原数据库  鼠标右键单击数据库,选择还原文件和文件   ...
1506 0