服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - SQL Server Management Studio(SSMS)复制数据库的方法

SQL Server Management Studio(SSMS)复制数据库的方法

2020-05-25 15:14新田三十三 Sql Server

这篇文章主要为大家详细介绍了如何利用SQL Server Management Studio复制数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

利用SQL Server Management Studio(SSMS)复制数据库,供大家参考,具体内容如下

前言

今天由于客户购买的软件版本确认了,而之前进行开发的本地数据库版本较低,打算复制一份开发数据库,升级为客户软件版本的数据库再进行后续开发。以前做这种事情一般都是在不同的数据库实例上进行,一直都是使用备份——恢复的方法,今天这次是在同一个实例上,我就在想强大的SSMS有没有向导式的复制数据库方法呢?

看似美好的开始

SQL Server Management Studio(SSMS)复制数据库的方法

找到复制数据库的过程很简单,在SSMS上右击数据库就能在任务里找到复制数据库的选项,点开进入了非常友好的图形化操作界面。

SQL Server Management Studio(SSMS)复制数据库的方法

依次选择源数据库服务器与目标数据库服务器,和SSMS的任务差不多,看来跨服务器复制数据库也并不复杂,点击下一步,提示

SQL Server Management Studio(SSMS)复制数据库的方法

行,那就去SQL Server配置管理器(SQL Server Configuration Manager)打开SQL Server代理(也可以在系统服务中打开)。打开之后可以正常进入下一步了,注意有警告,由于是警告且是开发环境,先试试忽略警告看能不能行。

SQL Server Management Studio(SSMS)复制数据库的方法

选择目标数据库的名称与实体位置,然后接下来就是一路下一步(中间可以选择输出到Windows日志,我试过不选的时候可以在SQL Server日志看到结果,选了之后就只能在Windows日志中看了)

SQL Server Management Studio(SSMS)复制数据库的方法

果不其然的失败,并无波折的成功

SQL Server Management Studio(SSMS)复制数据库的方法

果不其然,失败了,回去看忽略的警告

“若要使用分离和附加方法,运行SQL Server代理作业时所使用的Integration Services代理账户必须可以访问源服务器和目标服务器的文件系统”

OK,观察一下SQL Server代理的用户(在SQL Server配置管理器可以看到,同样可以在系统服务中查到)是NT SERVICE\SQLSERVERAGENT。
在SSMS的安全性——用户名中可以找到该用户,点开用户属性,发现只有sysadmin和public角色,没有diskadmin角色

SQL Server Management Studio(SSMS)复制数据库的方法

本来勾上diskadmin角色,应该就可以了,但是由于我对SQL Server代理了解不深,既然安装默认没有选那就保持原样吧,而数据库复制也不常用,我把Server代理的用户暂时改成本地用户重新执行复制。

SQL Server Management Studio(SSMS)复制数据库的方法

SQL Server Management Studio(SSMS)复制数据库的方法

OK,复制成功。重新再把SQL Server代理的用户改回NT SERVICE\SQLSERVERAGENT。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/mirageJ/p/8479294.html

延伸 · 阅读

精彩推荐