Sql server 如何制作SQL Server数据库的副本并连接到它?

Sql server 如何制作SQL Server数据库的副本并连接到它?,sql-server,vb.net,Sql Server,Vb.net,我正在使用vb.NET 2013和SQL server 2008R2 我要解决这个问题: 我有一个数据库“DB1”。我想在同一台SQL server上用另一个名称“DB2”创建该数据库的副本,然后使该数据库准备好连接 如何通过Vb.NET中的代码执行此操作?请查看此tech NET链接,以使用新文件名进行还原 对数据库1(DB1)进行备份 验证备份是否有效 获取正确的逻辑和物理文件名 使用move命令恢复以创建数据库2(DB2) 将所有权更改为SA。默认为创建数据库的SQL登录 这是我在笔记本

我正在使用vb.NET 2013和SQL server 2008R2

我要解决这个问题:

我有一个数据库“DB1”。我想在同一台SQL server上用另一个名称“DB2”创建该数据库的副本,然后使该数据库准备好连接


如何通过Vb.NET中的代码执行此操作?

请查看此tech NET链接,以使用新文件名进行还原

  • 对数据库1(DB1)进行备份

  • 验证备份是否有效

  • 获取正确的逻辑和物理文件名

  • 使用move命令恢复以创建数据库2(DB2)

  • 将所有权更改为SA。默认为创建数据库的SQL登录

  • 这是我在笔记本电脑上测试的脚本。备份的好处是不需要停机时间。若您决定脱机、复制数据文件并创建数据库以进行附加,则会创建停机时间

    -- Sample database
    USE AdventureWorks2012;
    GO
    
    -- 1 - Make a backup
    BACKUP DATABASE AdventureWorks2012
    TO DISK = 'C:\mssql\backup\AdventureWorks2012.Bak'
       WITH FORMAT,
          MEDIANAME = 'SQLServerBackups',
          NAME = 'Full Backup of AdventureWorks2012';
    GO
    
    
    -- Use master
    USE master
    GO
    
    -- 2 - Is the backup valid
    RESTORE VERIFYONLY
    FROM DISK = 'C:\mssql\backup\AdventureWorks2012.Bak';
    GO
    
    -- 3 - Check the logical / physical file names
    RESTORE FILELISTONLY
    FROM DISK = 'C:\mssql\backup\AdventureWorks2012.Bak';
    GO
    
    -- 4 - Restore the files change the location and name
    RESTORE DATABASE Adv2012
       FROM DISK = 'C:\mssql\backup\AdventureWorks2012.Bak'
       WITH RECOVERY,
       MOVE 'AdventureWorks2012_Data' TO 'c:\mssql\data\MyAdvWorks_Data.mdf', 
       MOVE 'AdventureWorks2012_Log' TO 'c:\mssql\log\MyAdvWorks_Data.ldf';
    GO
    
    -- 5 - Switch owner to system admin
    ALTER AUTHORIZATION ON DATABASE::Adv2012 TO SA;
    GO
    

    原始数据库是活动的,还是脱机“模板”数据库?数据和结构还是仅结构?原始数据库是脱机模板数据库。原始数据库没有数据我们有供应商尝试过这一点,但不允许我们确定大型数据库备份副本的位置。他们把它发给了C:我们的空间不够了,服务器也坏了。如果您使用的是2008 R2,请确保使用了压缩选项。备份有多大?您甚至可以使用外部4 TB驱动器。这会很慢,但您可以将其从站点A移动到站点B。同样,只有几个选项(备份、文件复制)。文件复制的问题是没有压缩。简而言之,上面的TSQL是一个正确的答案。换个位置就行了。我已经用过几十次了。我同意——我用同样的方法将数据库的快照拷贝移动到平板电脑上供现场使用。断开连接的平板电脑与指向Express SQL Server的桌面运行相同的应用程序。“我想说的是,除非你知道自己不会有什么害处,否则你应该小心把东西放在操作系统的驱动器上。”莱茨曼说。同样,我捐赠给社区的大部分代码来自我的笔记本电脑,它只有一个驱动器(C:)。在生产系统上,我可能会通过网络备份到一个具有大量廉价磁盘空间的备份系统。事实上,大多数数据库系统安装不正确。IE-驱动器C上的所有数据库:。共青团