公司目前有兩臺服務器,一臺計劃用于存儲歷史數據(History),一臺計劃用于日常(Daily),現在的需求是將日常的SQL server產生的歷史數據表,通過定期同步的方式存儲到存放歷史數據的服務器上(Daily——>History)這個順序一定要記清楚!
目錄
SQL server實現數據同步的方法
數據庫備份和還原:
數據庫復制:
Always On 可用性組:
跨數據庫查詢或跨服務器查詢:
ETL 工具和流程:
作業同步的實現(用History和Daily來區分服務器,看上文)
建立鏈接服務器
2.還有個重要的東西需要開一下!
3.最重要的地方來了,作業(Daily)
總結
免費!!!!!!!!!!!!!!!!!!!!
SQL server實現數據同步的方法
SQL server實現不同服務器間數據同步的方法有很多,他們各自有優缺點,我在這簡單提介紹幾句,但是不做過多贅述。
數據庫備份和還原:
數據庫復制:
Always On 可用性組:
跨數據庫查詢或跨服務器查詢:
ETL 工具和流程:
作業同步的實現(用History和Daily來區分服務器,看上文)
在本文我將會介紹鏈接服務器的建立、將SQL Server未將服務器 ***.***.**.*配置為用于 DATA ACCESS、出錯碼為7401的解決方案!上例子!!!
建立鏈接服務器
建立鏈接服務器共有兩種方法,使用SSMS管理工具進行建立和使用Sql語句建立,我先介紹最簡單的使用Sql語句建立:
在你的數據庫上右鍵,新建查詢
除了@server的內容啥也不用改,@server內容是History的IP地址或者SQL server實例名稱(如果不知道就去百度搜怎么獲取IP地址!)
1. /*配置鏈接服務器*/
2. exec sp_addlinkedserver
3. @server = '192.168.1.1',
4. @srvproduct = 'SQLOLEDB',
5. @provider = 'SQLNCLI',
6. @datasrc = '192.168.1.1';
7. /*除了@server啥也不用改!!!!!!*/
建好之后可以使用下面的語句查詢一下:
select * from sys.servers
大概就是這個樣子的
2.還有個重要的東西需要開一下!
1. /*SQL Server將服務器 192.168.1.1 配置為用于 DATA ACCESS*/
2. USE MASTER;
3. exec sp_serveroption '192.168.1.1', 'data access', 'on';
4. /*同樣只需要改192.168.1.1的內容就行,將192.168.1.1替換為你的Histord IP地址*/
5.
6. /*一個是Daliy,一個是History*/
7. USE MASTER;
8. exec sp_serveroption '192.168.1.6', 'data access', 'on';
3.最重要的地方來了,作業(Daily)
第一個箭頭的SQL server代理基本上都是處于關著的狀態,需要手動打開,然后找到第二個作業,右鍵,新建作業
在第一步中,需要寫一個合適的名字(無任何規定,隨意起即可,我的推薦是Data Synchronization意思是數據同步)。第二步,點擊步驟
同樣的,點擊1新建,2設置合適的名字(這里我推薦Step1),最最最重要和最最最容易忘記的是這個數據庫的選擇,3選擇你要同步的數據庫,數據庫要求在Daily和History上都有相同的表結構(何謂表結構,就是相同的字段、數據類型)
然后4,寫入語句(這里的語句就是SQL語句,十分的方便,select、insert同樣都可以用,我舉一個例子):
1. /*按照一定條件查找.6服務器下tb_productSaveParameterHistory表中的內容然后插入到.1服務器中tb_productSaveParameterHistory中*/
2. insert into [192.168.1.1].[date].[dbo].[tb_productSaveParameterHistory]
3. select * from [date].[dbo].[tb_productSaveParameterHistory] where ST != '999'
這條SQL語句用于按照一定條件從服務器192.168.1.6
下的數據庫date
中的dbo.tb_productSaveParameterHistory
表中查找內容,然后將符合條件的數據插入到服務器192.168.1.1
下的數據庫date
中的dbo.tb_productSaveParameterHistory
表中。(192.168.1.6是Daily,192.168.1.1是History
)。
如果一個步驟完不成可以添加兩個或多個步驟,具體方法如上圖所示。
然后再設置計劃,即上圖第三步,
按照1新建,2設置名字,3設置執行頻率,4設置每天的頻率,(我推薦服務器是30秒),如果是測試的時候可以設置10秒,觀察變化情況,更好的掌握動態。
經過以上操作,基本上是完成了,接下來就可以監聽這個作業的運行情況,并且可以根據需要開關作業
Data Synchronization就是剛剛建立的作業,右鍵就可以禁用、開啟、查看歷史事件,最有用的就是這個查看歷史事件了,可以根據出現的問題查看原因,可以看到錯誤代碼。下圖是例子!
總結
這個也是通過一上午才研究出來的方法,淘寶上有個商家賣我1000,幸好我沒有買,靠著聰明才智做出來了,差點被無良商家坑了,就是那個森大網絡科技那個商家,如果數據庫同步有問題可以在評論區向我提問或者發私信,看到即可解答!
下載鏈接(1條消息) 數據同步如圖所示,文章在主頁資源-CSDN文庫
免費下載鏈接!!!!!!!!!!!!!!!!!!!!
該文章在 2023/9/15 15:42:45 編輯過