資料庫同步方案
① linux下oracle資料庫同步方案
stream,dataguard,Golden Gate
stream 現在oracle已經不再提供技術支持,
所以推薦使用dataguard,通過log日誌傳輸保證主備庫數據一致性,文檔較多。
而golden gate是oracle另一款數據同步工具,需要license。實驗可以考慮使用。
② 數據同步解決方案有什麼啊
你可以找玉符科技呢,幫助企業IT部門實現在一個身份源中對所有身份信息的統一管理,望採納
③ 對兩個資料庫實時操作,保證實時同步的解決方案
建立dblink,然後寫觸發器。 但是這將嚴重拖慢你的應用程序速度
④ 兩台資料庫伺服器 如何進行數據同步操作
這個要根據不同情況具體分析,有幾種方案參考:
資料庫A和資料庫B是建立在兩台獨立的資料庫伺服器上,那麼採用dblink方式是一種可行的方式,存在兩個數據同步過程:
一、資料庫A正常運行的時候需要將數據同步到備用庫即資料庫B;
二、資料庫A不正常的時候啟用資料庫B,在資料庫A恢復正常之前的數據更新都發生在資料庫B,那麼需要將資料庫B的數據同步給資料庫A。
第一種方式:前提是資料庫A和資料庫B本地網是24小時互通的同時對數據同步實時性有比較高的要求,那麼可以建立DBLINK,在兩個庫都建觸發器,不管當前在哪個庫發生數據更新的時候實時同步數據到目標資料庫;
第二種方式:如果數據同步的實時性要求不高,則可以通過定製存儲過程的方式(給兩個庫的數據表加時間戳或者更新標志,)定時同步數據;
第三種方式:通過給兩個資料庫的數據表加更新標志欄位,以第一種方式為主以滿足實時性的要求,以第二種方式為輔彌補可能存在的觸發器執行更新未成功的情況。
以上的方案都是從數據層面所做的處理,對於數據實時同步還是會存在一定的風險,那麼雙機熱備應該說是最好的選擇了。
⑤ 高分求sqlserver數據同步方案
提個簡單易行的解決方案給你參考
可以在分公司的JCDOC表寫觸發程序來同步總公司的數據。本人用過的,但分公司沒你的多,呵呵,我的是60個分公司。
⑥ 如何進行異構資料庫同步
資料庫同步有很多方法,這里不討論了,我這里只針對異構資料庫.那什麼是異構資料庫呢,我們先看下定義(引用)
異構資料庫系統是相關的多個資料庫系統的集合,可以實現數據的共享和透明訪問,每個資料庫系統在加入異構資料庫系統之前本身就已經存在,擁有自己的DMBS。異構資料庫的各個組成部分具有自身的自治性,實現數據共享的同時,每個資料庫系統仍保有自己的應用特性、完整性控制和安全性控制。異構資料庫系統的異構性主要體現在以下幾個方面:
計算機體系結構的異構
各個參與的資料庫可以分別運行在大型機、小型機、工作站、PC或嵌入式系統中。
基礎操作系統的異構
各個資料庫系統的基礎操作系統可以是Unix、Windows NT、 Linux等。
DMBS本身的異構
可以是同為關系型資料庫系統的Oracle、 SQL Server等,也可以是不同數據模型的資料庫,如關系、模式、層次、網路、面向對象,函數型資料庫共同組成一個異構資料庫系統。
在轉換的過程中,有時要想實現嚴格的等價轉換是比較困難的。首先要確定兩種模型中所存在的各種語法和語義上的沖突,這些沖突可能包括:
命名沖突:即源模型中的標識符可能是目的模型中的保留字,這時就需要重新命名。
格式沖突:同一種數據類型可能有不同的表示方法和語義差異,這時需要定義兩種模型之間的變換函數。
結構沖突:如果兩種資料庫系統之間的數據定義模型不同,如分別為關系模型和層次模型,那麼需要重新定義實體屬性和聯系,以防止屬性或聯系信息的丟失。
異構資料庫同步的解決方法主要有以下幾種:
1.建立觸發器記錄表的變化情況,在源資料庫建立增、刪、改觸發器,然後根據變化登記表進行處理.優點是充分結合業務進行處理,保持數據的一致性、完整性,實時性較強,對多個數據源合並有非常大的優勢,我們現在也是採用這種方式來同步的。
2.日誌:通過分析源資料庫日誌,來獲得源資料庫中的變化的數據。ORCLE 的 非同步 CDC (Asynchronized CDC) 就是使用這種方式,但缺點是有一定延時.
⑦ 如何實現2個地方的資料庫同步數據
這個算是最基本的資料庫操作了,方案有很多種,常見的如:etl工具或使用dblink,etl工具比較方便,開源的產品有kettle,pdi等,這些產品可以滿足大多數的資料庫操作,但是如果數據量級大,轉換復雜的話,他們的性能有待考驗,不過你說的只是簡單的同步,這個很容易。使用dblink也是比較常見的,但是需要設置一定機制,避免安全隱患,首先需要再A地資料庫上配置B地資料庫的遠程連接地址,在tnsnames.ora文件中配置即可,然後在A地資料庫上建立一個dblink,如:create database link b_to_a_link connect to xxx(user) identified by fundo using xxx(上面建立的連接);然後就可以操作了。具體使用dblink的內容,lz到網上找一下,資料很多。先這樣,忘採納。
⑧ 請教mysql資料庫定時同步方案
方法一:
在 SQL Server 裡面, 創建一個 針對 MySQL 的資料庫鏈接。
然後 在 SQL Server 裡面, 設定一個 資料庫作業。 定時向MySQL資料庫鏈接 同步數據。
方法二:
⑨ 怎樣實現資料庫實時同步這種思路是否可行
建立遠程資料庫鏈接,然後在你需要同步的表上建觸發器:每當表有修改時,自動修改遠程資料庫的相應表。
----------------------------------
抱歉,你的題目我沒理解正確,其實你使用雙機熱備就行了,在網上找到一個教程,是這個網址:
http://blog.csdn.net/isoftk/archive/2007/12/03/1914175.aspx
你看一下吧。
----------------------------------
不是,我先前的理解不正確,後來的理解才正確,現在是你開始走彎路了,你就按照我給的網址學習雙機熱備吧,肯定能達到你的目的。
另:送你關於遠程資料庫映射的東西:
SqlServer資料庫:
--這句是映射一個遠程資料庫
EXEC sp_addlinkedserver '遠程資料庫的IP或主機名',N'SQL Server'
--這句是登錄遠程資料庫
EXEC sp_addlinkedsrvlogin '遠程資料庫的IP或主機名', 'false', NULL, '登錄名', '密碼'
--登錄後,可以用以下格式操作遠程資料庫中的對象
select * from [遠程資料庫的IP或主機名].[資料庫名].[dbo].[表名]
我仔細考慮了一下,用這種方式無法滿足你的要求,所以請你用雙機熱備完成。
-------------------------------
原來是要在互聯網環境下啊,你一直沒有提,汗。。。
我水平有限,這個沒什麼好的思路,幫不上你,抱歉了。
我所能想到的,只有兩種不成熟的思路:
1、用VPN架出局網環境,這個你可能條件所限,不能實現。
2、第二種思路是以我淺薄的知識想像出來的笨方法,拐彎抹角的而且不安全,大體思路就是,在B伺服器上架構一個WEB伺服器,用ASP或JSP什麼的做一個頁面,可以接收字串參數並作為sql語句執行(當然你要做好驗證工作),然後修改A伺服器的程序,使其每當對資料庫有修改操作時,就同時向B機的WEB主頁發送一個頁面申請(比如 http://111.222.333.444/runsql.asp?sql=update AA set BB='cc'),這樣B主機的WEB服務就會同步執行這個SQL語句了。(注意這種方法需要你的B機是以固定IP模式連網的,這需要向電信局申請)
說實話這第二種方法連我自己都覺得可笑,但水平實在有限,所以在這兒只是大膽說出我的想法,還請樓主或是其它高手看了不要見笑。