我在客户的服务器上安装了 SQL Server 数据库。
我的笔记本电脑上有一个完全相同的数据库模式,使我能够在不在现场时处理事情。
但是,我需要将客户数据库中的实际数据复制到笔记本电脑上的副本中,以便测试一些东西。
最简单的方法是什么?
客户服务器和我的笔记本电脑没有连接(尽管我可以通过 VPN 访问客户的服务器)所以我不相信我可以用 TSQL 做到这一点。
有没有办法从 SSMS 导出然后导入我的笔记本电脑数据库?
我在客户的服务器上安装了 SQL Server 数据库。
我的笔记本电脑上有一个完全相同的数据库模式,使我能够在不在现场时处理事情。
但是,我需要将客户数据库中的实际数据复制到笔记本电脑上的副本中,以便测试一些东西。
最简单的方法是什么?
客户服务器和我的笔记本电脑没有连接(尽管我可以通过 VPN 访问客户的服务器)所以我不相信我可以用 TSQL 做到这一点。
有没有办法从 SSMS 导出然后导入我的笔记本电脑数据库?
Backaup
your database and then restore
on another server.
From MSDN:
RESTORE If the database being restored does not exist, the user must have CREATE DATABASE permissions to be able to execute RESTORE. If the database exists, RESTORE permissions default to members of the sysadmin and dbcreator fixed server roles and the owner (dbo) of the database (for the FROM DATABASE_SNAPSHOT option, the database always exists).
RESTORE permissions are given to roles in which membership information is always readily available to the server. Because fixed database role membership can be checked only when the database is accessible and undamaged, which is not always the case when RESTORE is executed, members of the db_owner fixed database role do not have RESTORE permissions.
您可以使用Generate Script
任务:
您还可以使用以下命令复制所有数据库Copy Databse
:
http://www.mssqltips.com/sqlservertip/1792/upgrading-to-sql-server-2008-using-copy-database-wizard/
或Export data
:
http://blog.winhost.com/exporting-sql-server-data-with-import-and-export-wizard/
另一种选择是设置数据复制。在此处查看详细信息
既然您提到可以通过 VPN 连接,您可以使用 将数据从一台服务器复制到另一台服务器INSERT INTO...SELECT
,例如
INSERT INTO server2.database.dbo.tableName (col1, ..., colN)
SELECT col1, ..., colN
FROM server2.database.dbo.tableNam
或使用Backup and Restore
SSMS 中的功能
对于类似的情况,我所做的是将客户数据库脱机(分离),将文件复制到我的笔记本电脑,然后将数据库重新连接回客户服务器。
使用 SSM 并右键单击数据库并单击分离。可以肯定的是,没有人在积极地处理数据库。还要确保您知道 mdf 文件的位置并且可以访问它。分离后,复制文件。然后转到 SSMS,右键单击“数据库”并选择“附加”。再次选择 mdf 文件,您将在客户的服务器上恢复数据库。
您可以将在上述步骤中复制的 mdf 文件附加到您自己的服务器实例中。
另一种方法是在您的笔记本电脑上进行备份和恢复。