电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

SQL Server跨服務(wù)器操作數(shù)據(jù)庫的圖文方法(LinkedServer)

瀏覽:29日期:2023-03-06 14:25:30

基礎(chǔ)知識介紹

以SQL Server的數(shù)據(jù)庫管理工具SSMS(SQL Server Management Studio)為平臺進(jìn)行操作。

SQL Server Management Studio (SSMS) 是用于管理SQL Server 基礎(chǔ)結(jié)構(gòu)的集成環(huán)境。 使用 SSMS,可以訪問、配置、管理和開發(fā) SQL Server、Azure SQL 數(shù)據(jù)庫和 SQL 數(shù)據(jù)倉庫的所有組件。 SSMS 在一個(gè)綜合實(shí)用工具中匯集了大量圖形工具和豐富的腳本編輯器,為各種技能水平的開發(fā)者和數(shù)據(jù)庫管理員提供對 SQL Server 的訪問權(quán)限。

什么是跨服務(wù)器操作?

跨服務(wù)器操作就是可以在本地連接到遠(yuǎn)程服務(wù)器上的數(shù)據(jù)庫,可以在對方的數(shù)據(jù)庫上進(jìn)行相關(guān)的數(shù)據(jù)庫操作,比如增刪改查。

為什么要進(jìn)行跨服務(wù)器操作

隨著數(shù)據(jù)量的增多,業(yè)務(wù)量的擴(kuò)張,需要在不同的服務(wù)器安裝不同的數(shù)據(jù)庫,有時(shí)候因?yàn)闃I(yè)務(wù)需要,將不同的服務(wù)器中的數(shù)據(jù)進(jìn)行整合,這時(shí)候就需要進(jìn)行跨服務(wù)器操作了。

跨服務(wù)器操作的工具是什么?

DBLINK(數(shù)據(jù)庫鏈接),顧名思義就是數(shù)據(jù)庫的鏈接,就像電話線一樣,是一個(gè)通道,當(dāng)我們要跨本地?cái)?shù)據(jù)庫,訪問另外一個(gè)數(shù)據(jù)庫表中的數(shù)據(jù)時(shí),本地?cái)?shù)據(jù)庫中就必須要?jiǎng)?chuàng)建遠(yuǎn)程數(shù)據(jù)庫的dblink,通過dblink本地?cái)?shù)據(jù)庫可以像訪問本地?cái)?shù)據(jù)庫一樣訪問遠(yuǎn)程數(shù)據(jù)庫表中的數(shù)據(jù)。

方法一:用SSMS創(chuàng)建SQL Server遠(yuǎn)程鏈接服務(wù)器(LinkedServer)--簡單鏈接到遠(yuǎn)程SqlServer

1. 打開SSMS -->登錄到本地?cái)?shù)據(jù)庫 --> 服務(wù)器對象 --> 鏈接服務(wù)器(右鍵) --> 新建鏈接服務(wù)器,如下圖:

2. 在彈出的對話框中輸入相關(guān)信息

● 在【鏈接服務(wù)器】輸入對方服務(wù)器的IP地址;

● 在【服務(wù)器類型】中選擇【SQL Server】;

3. 點(diǎn)擊左側(cè)的【安全性】,出現(xiàn)如下頁面,在第3步中輸入對方數(shù)據(jù)庫的賬號密碼即可。

點(diǎn)擊確定按鈕后,鏈接服務(wù)器(LinkedServer)就創(chuàng)建成功了。這時(shí)可以看到創(chuàng)建好的鏈接服務(wù)器:

查看鏈接服務(wù)器的代碼: 在創(chuàng)建好的鏈接服務(wù)器上點(diǎn)右鍵,編寫鏈接服務(wù)器腳本為 --> Create到 -->新查詢編輯器窗口,即可打開剛剛創(chuàng)建的鏈接服務(wù)器的腳本。

--鏈接服務(wù)器(LinkedServer)創(chuàng)建完成后會自動(dòng)生成相關(guān)代碼 —— 鏈接到遠(yuǎn)程SQLServer數(shù)據(jù)庫:

EXEC master.dbo.sp_addlinkedserver @server = N"192.168.110.189,1433",@srvproduct=N"SQL Server";-- @rmtsrvnameEXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N"192.168.110.189",@useself=N"False",@locallogin=NULL,@rmtuser=N"sa",@rmtpassword="########";

注意: 這里有一個(gè)弊端,那就是鏈接的是整個(gè)遠(yuǎn)程SqlServer中的所有數(shù)據(jù)庫(一般只需要一個(gè)特定的數(shù)據(jù)庫),而且鏈接服務(wù)器的名稱是個(gè)IP且無法自定義! 所以,最好的方式還是通過代碼直接創(chuàng)建鏈接數(shù)據(jù)庫(見“三、代碼詳解”)。

鏈接服務(wù)器(LinkedServer)就創(chuàng)建成功后,我們就可以用創(chuàng)建好的DBLINK鏈接到遠(yuǎn)程的Linked服務(wù)器了。下面我們用創(chuàng)建好的試著查詢對方服務(wù)器上的表來驗(yàn)證一下。

--查詢鏈接服務(wù)器(LinkedServer)中數(shù)據(jù)的方法: [DBLINK名].[對方數(shù)據(jù)庫名].[對方數(shù)據(jù)庫下模式名].[對方數(shù)據(jù)庫表名]

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

上面FROM字段后面依此是[DBLINK名].[對方數(shù)據(jù)庫名].[對方數(shù)據(jù)庫下模式名].[對方數(shù)據(jù)庫表名],表名前面的這些內(nèi)容一個(gè)都不能少。

查詢結(jié)果如下圖:

方法二:SSMS創(chuàng)建SQLServer鏈接服務(wù)器(LinkedServer)--自定義鏈接到SqlServer的其它數(shù)據(jù)庫

1. 【常規(guī)】選擇頁:

2.【安全性】選擇頁:

自定義鏈接數(shù)據(jù)庫到SQLServer【新建鏈接服務(wù)器】對話框中需輸入的相關(guān)信息說明:

1.【常規(guī)】頁

● 在【鏈接服務(wù)器】中,輸入 自定義的鏈接服務(wù)器別名,如:DBLINK_TO_TESTDB

● 在【服務(wù)器類型】中選擇【其他數(shù)據(jù)源】;

?[提供程序]中選擇 第一個(gè)Microsoft OLE DB Provider for SQL Server

?[產(chǎn)品名稱]中,可以空白不填,也可以填寫SQL Server { 注意提供程序是OLE DB Provider for SQL Server時(shí)產(chǎn)品名稱這里必須為空白!}

?[數(shù)據(jù)源]中 遠(yuǎn)程數(shù)據(jù)庫的地址,端口\實(shí)例名 ,如 10.10.0.73,1433\MSSQLSERVER

?[訪問接口字符串]中,可以空著不填; 也可以填下方的:(注意######是密碼,請換成自己的密碼)

Provider=sqloledb;Data Source=10.10.0.73,1433\MSSQLSERVER;Initial Catalog=TESTDB;User Id=apps;Password=#####;

?[目錄]就是數(shù)據(jù)庫名稱,這里填上我們需要遠(yuǎn)程連上的數(shù)據(jù)庫 TESTDB (可以換成自己實(shí)際的)。

2.【安全性】頁

● 選擇【使用此安全上下文建立連接(M)】

?[遠(yuǎn)程登錄]: 遠(yuǎn)程數(shù)據(jù)庫的連接賬號

?[使用密碼]: 遠(yuǎn)程數(shù)據(jù)庫連接賬號的密碼

--鏈接服務(wù)器(LinkedServer)創(chuàng)建完成后會自動(dòng)生成相關(guān)代碼 —— 鏈接到遠(yuǎn)程的SQLServer數(shù)據(jù)庫(自定義):EXEC master.dbo.sp_addlinkedserver @server = N"DBLINK_TO_TESTDB",@srvproduct=N"",@provider=N"SQLNCLI", @datasrc=N"10.10.0.73";EXEC master.dbo.sp_addlinkedsrvlogin@rmtsrvname=N"DBLINK_TO_TESTDB",@useself=N"False",@locallogin=NULL,@rmtuser=N"apps",@rmtpassword="########";/****** 實(shí)際例子 系統(tǒng)生成的Object: LinkedServer [DBLINK_TO_TESTDB] ******/USE [master]GOEXEC master.dbo.sp_addlinkedserver @server = N"DBLINK_TO_TESTDB", @srvproduct=N"", @provider=N"SQLNCLI", @datasrc=N"10.10.0.73,1433\MSSQLSERVER", @catalog=N"TESTDB"/*For security reasons the linked server remote logins password is changed with ########*/EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N"TEST",@useself=N"False",@locallogin=NULL,@rmtuser=N"apps",@rmtpassword="########"

其他方式: 提供程序換成其它的, 如本機(jī)SQL Server Native Client 11.0 (SQL Server Native Client 11.0 不支持連接到SQL Server 2000或更早的版本) 等

方法三:用SSMS創(chuàng)建SQLServer鏈接服務(wù)器(LinkedServer)--鏈接到非SqlServer的其它數(shù)據(jù)庫

四、代碼詳解:方法一和方法二是通過SSMS直接操作的,下方直接使用sql腳本來創(chuàng)建鏈接服務(wù)器(LinkedServer)

A. SSMS鏈接到遠(yuǎn)程SQLServer數(shù)據(jù)庫

(本地SQLServer數(shù)據(jù)庫鏈接服務(wù)器(LinkedServer)到遠(yuǎn)程SQLServer數(shù)據(jù)庫。)

--LinkedServer鏈接到遠(yuǎn)程SQLServer數(shù)據(jù)庫:

--1. 聲明將要鏈接的‘鏈接名稱(自定義)’,遠(yuǎn)程數(shù)據(jù)庫產(chǎn)品名(或別名),(提供商,數(shù)據(jù)庫服務(wù)器地址及實(shí)例名)

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

--2. 聲明‘鏈接名稱(自定義)’,@useself=N'False',@locallogin=NULL,將要鏈接的數(shù)據(jù)庫服務(wù)器的賬號和密碼

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

B. SSMS鏈接到遠(yuǎn)程非SQLServer數(shù)據(jù)庫

(本地SQLServer數(shù)據(jù)庫鏈接服務(wù)器(LinkedServer)到遠(yuǎn)程非SQLServer的數(shù)據(jù)庫。如遠(yuǎn)程的MySQL、Oracle等數(shù)據(jù)庫。)

--鏈接到遠(yuǎn)程的非SQLServerd數(shù)據(jù)庫(如鏈接到遠(yuǎn)程MySQL、Oracle等數(shù)據(jù)庫):

--1. 聲明‘自定義的鏈接名稱’,遠(yuǎn)程數(shù)據(jù)庫產(chǎn)品名(或別名),提供商,數(shù)據(jù)庫服務(wù)器地址及實(shí)例名

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

-2. 聲明登錄信息 ‘自定義的鏈接名稱’,@useself=N'False',@locallogin=NULL,遠(yuǎn)程數(shù)據(jù)庫的賬號和密碼

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

實(shí)際例子-SQL Server通過Linkserver連接MySql

--通過SSMS鏈接到遠(yuǎn)程MySql數(shù)據(jù)庫(SQL Server連接MySql)--使用的訪問接口為:MySql Provider for OLE DB--EXEC master.dbo.sp_addlinkedserver @server = N"DBLINK_TO_MysqlTESTDB", @srvproduct = N"MySql", @provider = N"MSDASQL", @provstr = N"Driver={MySQL ODBC 5.1 Driver};Server=10.167.69.6,3306/sytv;Database=TESTDB;User=root;Password=root;Option=3";--EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N"DBLINK_TO_MysqlTESTDB", @useself = N"False", @locallogin = N"10.167.69.6,3306/sytv", @rmtuser = N"root", @rmtpassword = N"root";

實(shí)際例子-SQL Server通過Linkserver連接Oracle

--通過SSMS鏈接到遠(yuǎn)程Oracle數(shù)據(jù)庫(SQL Server連接Oracle)--使用的訪問接口為:Oracle Provider for OLE DBUSE [master]GO--Declare Oracle OLEDB "OraOLEDB.Oracle":EXEC master.dbo.sp_MSset_oledb_prop N"OraOLEDB.Oracle", N"AllowInProcess", 1;--Create the Linked Server to the ECT database in Oracle:EXEC sp_addlinkedserver "DBLINK_TO_OraTESTDB", "Oracle", "OraOLEDB.Oracle", "10.167.69.6/prt";--EXEC master.dbo.sp_addlinkedserver @server = N"DBLINK_TO_OraTESTDB", @srvproduct=N"oracle", @provider=N"OraOLEDB.Oracle", @datasrc=N"10.167.69.6/orcl"--Create the Remote Login for the Oracle Linked Server:EXEC sp_addlinkedsrvlogin @rmtsrvname=N"DBLINK_TO_OraTESTDB",@useself=N"False",@locallogin=N"apps",@rmtuser=N"SYSTEM",@rmtpassword="######"; --最后可以測試一下是否連接成功 --select * from openquery(DBLINK_TO_OraTESTDB,"select * from SYSTEM.HELP");

到此這篇關(guān)于SQL Server跨服務(wù)器操作數(shù)據(jù)庫的圖文方法(LinkedServer)的文章就介紹到這了,更多相關(guān)SQL Server跨服務(wù)器操作數(shù)據(jù)庫內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: MsSQL
主站蜘蛛池模板: 卫生纸复卷机|抽纸机|卫生纸加工设备|做卫生纸机器|小型卫生纸加工需要什么设备|卫生纸机器设备多少钱一台|许昌恒源纸品机械有限公司 | 有机废气处理-rto焚烧炉-催化燃烧设备-VOC冷凝回收装置-三梯环境 | 中视电广_短视频拍摄_短视频推广_短视频代运营_宣传片拍摄_影视广告制作_中视电广 | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 | 运动木地板价格,篮球馆体育运动木地板生产厂家_欧氏地板 | 纯化水设备-纯水设备-超纯水设备-[大鹏水处理]纯水设备一站式服务商-东莞市大鹏水处理科技有限公司 | 东莞精密模具加工,精密连接器模具零件,自動機零件,冶工具加工-益久精密 | 拉力机-拉力试验机-万能试验机-电子拉力机-拉伸试验机-剥离强度试验机-苏州皖仪实验仪器有限公司 | 隔离变压器-伺服变压器--输入输出电抗器-深圳市德而沃电气有限公司 | 铝板冲孔网,不锈钢冲孔网,圆孔冲孔网板,鳄鱼嘴-鱼眼防滑板,盾构走道板-江拓数控冲孔网厂-河北江拓丝网有限公司 | 深圳货架厂家_金丽声精品货架_广东金丽声展示设备有限公司官网 | 美国PARKER齿轮泵,美国PARKER柱塞泵,美国PARKER叶片泵,美国PARKER电磁阀,美国PARKER比例阀-上海维特锐实业发展有限公司二部 | 天津电机维修|水泵维修-天津晟佳机电设备有限公司 | 香港新时代国际美容美发化妆美甲培训学校-26年培训经验,值得信赖! | 掺铥光纤放大器-C/L波段光纤放大器-小信号光纤放大器-合肥脉锐光电技术有限公司 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 实验室pH计|电导率仪|溶解氧测定仪|离子浓度计|多参数水质分析仪|pH电极-上海般特仪器有限公司 | 台式核磁共振仪,玻璃软化点测定仪,旋转高温粘度计,测温锥和测温块-上海麟文仪器 | 宽带办理,电信宽带,移动宽带,联通宽带,电信宽带办理,移动宽带办理,联通宽带办理 | 高压无油空压机_无油水润滑空压机_水润滑无油螺杆空压机_无油空压机厂家-科普柯超滤(广东)节能科技有限公司 | 消泡剂_水处理消泡剂_切削液消泡剂_涂料消泡剂_有机硅消泡剂_广州中万新材料生产厂家 | 上海租奔驰_上海租商务车_上海租车网-矢昂汽车服务公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 本安接线盒-本安电路用接线盒-本安分线盒-矿用电话接线盒-JHH生产厂家-宁波龙亿电子科技有限公司 | 真丝围巾|真丝丝巾|羊绒围巾|围巾品牌|浙江越缇围巾厂家定制 | 光谱仪_积分球_分布光度计_灯具检测生产厂家_杭州松朗光电【官网】 | PSI渗透压仪,TPS酸度计,美国CHAI PCR仪,渗透压仪厂家_价格,微生物快速检测仪-华泰和合(北京)商贸有限公司 | 变压器配件,变压器吸湿器,武强县吉口变压器配件有限公司 | Jaeaiot捷易科技-英伟达AI显卡模组/GPU整机服务器供应商 | 耐磨陶瓷,耐磨陶瓷管道_厂家-淄博拓创陶瓷科技 | 紫外线老化试验箱_uv紫外线老化试验箱价格|型号|厂家-正航仪器设备 | 工业硝酸钠,硝酸钠厂家-淄博「文海工贸」| SOUNDWELL 编码器|电位器|旋转编码器|可调电位器|编码开关厂家-广东升威电子制品有限公司 | 首页|光催化反应器_平行反应仪_光化学反应仪-北京普林塞斯科技有限公司 | 稳尚教育加盟-打造高考志愿填报平台_新高考志愿填报加盟_学业生涯规划加盟 | 鹤壁创新仪器公司-全自动量热仪,定硫仪,煤炭测硫仪,灰熔点测定仪,快速自动测氢仪,工业分析仪,煤质化验仪器 | 代做标书-代写标书-专业标书文件编辑-「深圳卓越创兴公司」 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 泰兴市热钻机械有限公司-热熔钻孔机-数控热熔钻-热熔钻孔攻牙一体机 |