SSIS用來跨數據庫中間進行數據同步,比如 Oracle=》MySQL 或者 SQLserver =》 MySQL
這里我們只有Oracle,所以測算 Oracle=》Oracle
首先確定在 Oracle配置文件 tnsnames.ora 里面有你需要的DB配置,比如 TTT 是DB 別名,XXX是DB實例名,127.0.0.1 是DB所在的服務器,1521是端口
TTT =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT=1521))
)
(CONNECT_DATA =
(SERVICE_NAME =XXX)
)
)
新建ODCB
第一步 打開32位ODBC ,點擊新增
注意我們可以設定在使用者資料來源里面,也可以設定在系統資料來源里面。但是需要 確認SQLserver所在的用戶與設定ODCB的用戶是同一個。
所以最好在系統資料來源名稱里面設定,這樣所有用戶都可以使用。
第二步 點擊新增,選擇我們需要連接的數據庫類型,這里選擇本機按照的Oracle驅動(Oracle安裝完成后自動就會有)
第三步
設定我們需要的DB,Data Source Name 我們可以自定義,TNS Service Name 是我們在tnsnames.ora里面設定的別名
點擊 Test Connection ,輸入賬號密碼可以測試DB是否連通
新建SSIS
第一步,新建項目
第二步
點擊確認生成一個項目,如圖
下一步 既可以在默認dtsx里面修改,也可以自己新建一個
下一步 選擇project 右擊 Properties,修改 Run64 從TRUE 改為 FALSE
不然在SQLserverJOB運行時會報錯
設定流程
Control Flow 用戶設定控件流程,可以添加Execute SQL Task,用來執行單SQL。
也可以拖拽一個 Data Flow Task ,雙擊打開后,在 Data Flow 里面設定 數據庫Data 同步流程
在這里只是簡單設定一個Data Flow,雙擊打開
在 Data Flow 里面拖拽 數據源 ODBC Source 和 數據需要同步到哪里去 ODBC Destination
雙擊ODBC Source 進行配置,第一次使用的話,還需要設定ODBC Connection
點擊New出現下面頁面,選擇 下拉框中你設定的ODCB,輸入賬號密碼,點擊Test進行驗證
注意,這里輸入的是 tnsnames.ora 里面配置的別名
成功建立 ODBC后,數據源可以選擇表或者 一個 SQL 抓出來的數據。可以點擊 Parse Query 檢測SQL是否有異常。也可以點擊Preview查看數據
設置 ODBC Destination 類似,不過我們需要選擇一個表
在這里我們可以嘗試選擇 DTSX,右擊 execute,手動執行試試
執行成功時下面這個頁面,注意 項目一定要設定 非 64 位run,與 ODBC設定的要一致。
接下來,我們要設定 SQLserver JOB運行
新建一個JOB,類別選擇 Integration Services Project
package source 選擇 File system,以及dtsx 所在的目錄
執行選項中,設定以32位運行
點擊確認即可。
注意,有的時候會發生異常。比如0x8009000B "機碼用在特定狀態時無效
這個可以看我的另外一篇
https://www.cnblogs.com/JerryZhang320/p/15625567.html