我有两台服务器,都有一台 sql server 。假设 srv1 有一个 sql-srv1 和 srv2 有一个 sql-srv2 ,我想在 sql-srv2 中获取一些信息,但从 sql-srv1 发出请求。
我的项目是创建一个脚本,该脚本可以在 sql-srv2 中导出数据,创建一个 bat 文件并每天使用任务调度程序执行该脚本,但首先我必须连接 2 个 sql-server,我不知道伙计们如何连接它,我是初学者。我只想创建一个脚本
sqlcmd -S 。-d 演示 -E -s";" -w 700 -Q "从学生中选择 *" > C:\troisiemetest%date%.csv
它可以每天在链接的 2 个 sql 服务器上运行。谢谢
欢迎加入群......你也可以使用链接服务器,下面的链接可以帮助你
https://stackoverflow.com/questions/1144051/selecting-data-from-two-different-servers-in-sql-server
根据评论,从提到的线程中添加详细信息
跨 2 个不同的数据库进行查询是分布式查询。以下是一些技术以及优缺点的列表:
链接服务器:提供对比 SQL Server 复制提供的更广泛的数据源的访问
链接服务器:连接不支持复制或需要临时访问的数据源
链接服务器:性能优于 OPENDATASOURCE 或 OPENROWSET
OPENDATASOURCE 和 OPENROWSET 函数:方便在临时基础上从数据源中检索数据。OPENROWSET 也有 BULK 设施,可能/可能不需要格式文件,这可能很繁琐
OPENQUERY:不支持变量 所有都是 T-SQL 解决方案。相对容易实现和设置所有依赖于源和目标之间的连接,这可能会影响性能和可伸缩性
按照以下步骤创建链接服务器: 1. 服务器对象 -> 链接服务器 -> 新建链接服务器 2. 提供远程服务器名称。3. 选择远程服务器类型(SQL Server 或其他)。4. 选择 Security -> Be made using this security context 并提供远程服务器的登录名和密码。