zoukankan      html  css  js  c++  java
  • 利用SQL Server Management Studio(SSMS)复制数据库

    利用SQL Server Management Studio(SSMS)复制数据库

    标签(空格分隔): SQLServer


    前言

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

    看似美好的开始

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

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

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

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

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

    果不其然,失败了,回去看忽略的警告
    “若要使用分离和附加方法,运行SQL Server代理作业时所使用的Integration Services代理账户必须可以访问源服务器和目标服务器的文件系统”

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

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


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

  • 相关阅读:
    win+ubuntu双系统安装后无法进入win7解决方法
    dell笔记本重装系统
    Linux下文件重命名、创建、删除、修改及保存文件
    个人网站
    如何给网页标题添加icon小图标
    CentOS 7最小化安装后找不到‘ifconfig’命令——修复小提示
    WIN10 通过Console连接交换机
    linux各文件夹的作用
    API设计指南(译)
    Petri网的工具
  • 原文地址:https://www.cnblogs.com/mirageJ/p/8479294.html
Copyright © 2011-2022 走看看