zoukankan      html  css  js  c++  java
  • SQL Server上DBLINK的创建,其实很简单!(上)

    今天给大家来分享一下跨服务器操作数据库,还是以SQL Server的管理工具(SSMS)为平台进行操作。

     

    什么是跨服务器操作?

    跨服务器操作就是可以在本地连接到远程服务器上的数据库,可以在对方的数据库上进行相关的数据库操作,比如增删改查。

     

    为什么要进行跨服务器操作

    随着数据量的增多,业务量的扩张,需要在不同的服务器安装不同的数据库,有时候因为业务需要,将不同的服务器中的数据进行整合,这时候就需要进行跨服务器操作了。

     

    跨服务器操作的工具是什么?

    DBLINK(数据库链接),顾名思义就是数据库的链接,就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就必须要创建远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。

     

    好了,废话不多说,跟着我来一步一步的创建DBLINK吧。

     

    创建SQL Server远程链接方法一

    创建SQL Server远程链接方法一

    第一步

    打开SSMS—>登录到本地数据库—>服务器对象—>链接服务器(右键)—>新建链接服务器,如下图1:

    图1 开始创建链接服务器

     

    第二步

    在弹出的对话框中输入相关信息

    • 在【链接服务器】输入对方服务器的IP地址

    • 在【服务器类型】中选择【SQL Server】

    如图2:

    图2 输入常规信息

    第三步

    点击左侧的【安全性】,出现如下页面,在第3步中输入对方数据库的账号密码即可。如图3:

    图3 输入对方数据库账号密码

    点击确定后即创建成功,如下图4,可以看到创建好的链接服务器


     

    图4 创建好的DBLINK

    创建完成后会自动生成相关代码,密码用#隐藏了:

    
    

    EXEC master.dbo.sp_addlinkedserver
    @server = N'192.168.110.189',
    @srvproduct=N'SQL Server';

    EXEC master.dbo.sp_addlinkedsrvlogin
    @rmtsrvname=N'192.168.110.189',
    @useself=N'False',
    @locallogin=NULL,
    @rmtuser=N'sa',
    @rmtpassword='########'

    我们就可以用创建好的DBLINK链接到对方服务器了

    下面我们用创建好的试着查询对方服务器上的表来验证一下。

    
    

    SELECT * FROM
    [192.168.110.189].[erp25new].[dbo].[fee_data]

    上面FROM字段后面依此是[DBLINK名].[对方数据库名].[对方数据库下模式名].[对方数据库表名],表名前面的这些内容一个都不能少。查询结果如下图:

    图5 查询结果

     

    创建SQL Server远程链接方法二

     

    安装方法一中的第一步点开新建链接服务器后,开始如下操作。

    第一步

     

    按如下步骤在弹出对话框中填写相关信息,如下图6:

    • 【链接服务器】中填入链接名称,最好是服务器IP,方便辨别,这里使用自定义名称亦可。

    • 【服务器类型】选择其他数据源

    • 在【提供程序】中选择图中选项

    • 【产品名称】填入自定义内容,亦可不填

    • 【数据源】填入对方服务器IP地址

    如图6  输入常规信息

     

    第二步

    与方法一种的类似,在安全性中填入对方服务器的账号密码即可

     

    点击确定后即创建成功,如下图7,可以看到创建好的链接服务器:

    图7 创建好的DBLINK

     

    创建完成后会自动生成相关代码,密码用#隐藏了:

    EXEC master.dbo.sp_addlinkedserver 
    @server = N'TEST_SQL_SERVER',
    @srvproduct=N'TEST',
    @provider=N'SQLNCLI11',
    @datasrc=N'192.168.110.189'

    EXEC master.dbo.sp_addlinkedsrvlogin
    @rmtsrvname=N'TEST_SQL_SERVER',
    @useself=N'False',
    @locallogin=NULL,
    @rmtuser=N'sa',
    @rmtpassword='########'

     

    查询对方数据库验证方法与方法一类似,只是将数据库名改成自定义名称即可:

    SELECT * FROM 
    [TEST_SQL_SERVER].[erp25new].[dbo].[fee_data]

    好了,今天先介绍到这里,下次再给大家讲解从SQL Server链接到Oracle和MYSQL的具体操作方法,记得关注哦~

     
    有兴趣可以关注我的公众号:SQL数据库开发,转载请注明出处,谢谢!
  • 相关阅读:
    MySQL大数据分页调优实践
    CentOS 搭建L2TP
    CentOS 搭建SS5
    CentOS 搭建PPTP
    CentOS 防火墙 firewalld
    CentOS 初始化账号
    nginx升级与回退
    Python
    python
    linux
  • 原文地址:https://www.cnblogs.com/sql-road/p/9181349.html
Copyright © 2011-2022 走看看