<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
以SQL Server的資料庫管理工具SSMS(SQL Server Management Studio)為平臺進行操作。
SQL Server Management Studio (SSMS) 是用於管理SQL Server 基礎結構的整合環境。 使用 SSMS,可以存取、設定、管理和開發 SQL Server、Azure SQL 資料庫和 SQL 資料倉儲的所有元件。 SSMS 在一個綜合實用工具中彙集了大量圖形工具和豐富的指令碼編輯器,為各種技能水平的開發者和資料庫管理員提供對 SQL Server 的存取許可權。
跨伺服器操作就是可以在本地連線到遠端伺服器上的資料庫,可以在對方的資料庫上進行相關的資料庫操作,比如增刪改查。
隨著資料量的增多,業務量的擴張,需要在不同的伺服器安裝不同的資料庫,有時候因為業務需要,將不同的伺服器中的資料進行整合,這時候就需要進行跨伺服器操作了。
DBLINK(資料庫連結),顧名思義就是資料庫的連結,就像電話線一樣,是一個通道,當我們要跨本地資料庫,存取另外一個資料庫表中的資料時,本地資料庫中就必須要建立遠端資料庫的dblink,通過dblink本地資料庫可以像存取本地資料庫一樣存取遠端資料庫表中的資料。
1. 開啟SSMS -->登入到本地資料庫 --> 伺服器物件 --> 連結伺服器(右鍵) --> 新建連結伺服器,如下圖:
2. 在彈出的對話方塊中輸入相關資訊
● 在【連結伺服器】輸入對方伺服器的IP地址;
● 在【伺服器型別】中選擇【SQL Server】;
3. 點選左側的【安全性】,出現如下頁面,在第3步中輸入對方資料庫的賬號密碼即可。
點選確定按鈕後,連結伺服器(LinkedServer)就建立成功了。這時可以看到建立好的連結伺服器:
檢視連結伺服器的程式碼: 在建立好的連結伺服器上點右鍵,編寫連結伺服器指令碼為 --> Create到 -->新查詢編輯器視窗,即可開啟剛剛建立的連結伺服器的指令碼。
--連結伺服器(LinkedServer)建立完成後會自動生成相關程式碼 —— 連結到遠端SQLServer資料庫:
EXEC master.dbo.sp_addlinkedserver @server = N'192.168.110.189,1433',@srvproduct=N'SQL Server'; -- @rmtsrvname EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'192.168.110.189',@useself=N'False',@locallogin=NULL,@rmtuser=N'sa',@rmtpassword='########';
注意: 這裡有一個弊端,那就是連結的是整個遠端SqlServer中的所有資料庫(一般只需要一個特定的資料庫),而且連結伺服器的名稱是個IP且無法自定義! 所以,最好的方式還是通過程式碼直接建立連結資料庫(見“三、程式碼詳解”)。
連結伺服器(LinkedServer)就建立成功後,我們就可以用建立好的DBLINK連結到遠端的Linked伺服器了。下面我們用建立好的試著查詢對方伺服器上的表來驗證一下。
--查詢連結伺服器(LinkedServer)中資料的方法: [DBLINK名].[對方資料庫名].[對方資料庫下模式名].[對方資料庫表名]
SELECT * FROM [192.168.110.189].[erp25new].[dbo].[fee_data]
上面FROM欄位後面依此是[DBLINK名].[對方資料庫名].[對方資料庫下模式名].[對方資料庫表名],表名前面的這些內容一個都不能少。
查詢結果如下圖:
1. 【常規】選擇頁:
2.【安全性】選擇頁:
自定義連結資料庫到SQLServer【新建連結伺服器】對話方塊中需輸入的相關資訊說明:
1.【常規】頁
● 在【連結伺服器】中,輸入 自定義的連結伺服器別名,如:DBLINK_TO_TESTDB
● 在【伺服器型別】中選擇【其他資料來源】;
▶[提供程式]中選擇 第一個Microsoft OLE DB Provider for SQL Server
▶[產品名稱]中,可以空白不填,也可以填寫SQL Server { 注意提供程式是OLE DB Provider for SQL Server時產品名稱這裡必須為空白!}
▶[資料來源]中 遠端資料庫的地址,埠範例名 ,如 10.10.0.73,1433MSSQLSERVER
▶[存取介面字串]中,可以空著不填; 也可以填下方的:(注意######是密碼,請換成自己的密碼)
Provider=sqloledb;Data Source=10.10.0.73,1433MSSQLSERVER;Initial Catalog=TESTDB;User Id=apps;Password=#####;
▶[目錄]就是資料庫名稱,這裡填上我們需要遠端連上的資料庫 TESTDB (可以換成自己實際的)。
2.【安全性】頁
● 選擇【使用此安全上下文建立連線(M)】
▶[遠端登入]: 遠端資料庫的連線賬號
▶[使用密碼]: 遠端資料庫連線賬號的密碼
--連結伺服器(LinkedServer)建立完成後會自動生成相關程式碼 —— 連結到遠端的SQLServer資料庫(自定義): 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='########'; /****** 實際例子 系統生成的Object: LinkedServer [DBLINK_TO_TESTDB] ******/ USE [master] GO EXEC master.dbo.sp_addlinkedserver @server = N'DBLINK_TO_TESTDB', @srvproduct=N'', @provider=N'SQLNCLI', @datasrc=N'10.10.0.73,1433MSSQLSERVER', @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='########'
其他方式: 提供程式換成其它的, 如本機SQL Server Native Client 11.0 (SQL Server Native Client 11.0 不支援連線到SQL Server 2000或更早的版本) 等
A. SSMS連結到遠端SQLServer資料庫
(本地SQLServer資料庫連結伺服器(LinkedServer)到遠端SQLServer資料庫。)
--LinkedServer連結到遠端SQLServer資料庫:
--1. 宣告將要連結的‘連結名稱(自定義)’,遠端資料庫產品名(或別名),(提供商,資料庫伺服器地址及範例名)
EXEC master.dbo.sp_addlinkedserver @server = N'DBLINK_TO_TESTDB',@srvproduct=N'SQL Server';
--2. 宣告‘連結名稱(自定義)’,@useself=N'False',@locallogin=NULL,將要連結的資料庫伺服器的賬號和密碼
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'192.168.110.189',@useself=N'False',@locallogin=NULL,@rmtuser=N'sa',@rmtpassword='########';
B. SSMS連結到遠端非SQLServer資料庫
(本地SQLServer資料庫連結伺服器(LinkedServer)到遠端非SQLServer的資料庫。如遠端的MySQL、Oracle等資料庫。)
--連結到遠端的非SQLServerd資料庫(如連結到遠端MySQL、Oracle等資料庫):
--1. 宣告‘自定義的連結名稱’,遠端資料庫產品名(或別名),提供商,資料庫伺服器地址及範例名
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,遠端資料庫的賬號和密碼
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'TEST_SQL_SERVER',@useself=N'False',@locallogin=NULL,@rmtuser=N'sa',@rmtpassword='########';
實際例子-SQL Server通過Linkserver連線MySql
--通過SSMS連結到遠端MySql資料庫(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';
實際例子-SQL Server通過Linkserver連線Oracle
--通過SSMS連結到遠端Oracle資料庫(SQL Server連線Oracle) --使用的存取介面為:Oracle Provider for OLE DB USE [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');
到此這篇關於SQL Server跨伺服器運算元據庫的圖文方法(LinkedServer)的文章就介紹到這了,更多相關SQL Server跨伺服器運算元據庫內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45