將數(shù)據(jù)從 MySQL 導(dǎo)出到 SQL Server
概述
把MySQL的數(shù)據(jù)遷移到SQL Server有很多種方法,有第三方工具可以實現(xiàn)這個功能,如阿里云的DTS,ESF Database Migration等。許多人希望使用 SQL Server Integration Services (SSIS)來實現(xiàn)這個過程,本文就分享一下,如何利用SSIS從 MySQL導(dǎo)入數(shù)據(jù) 到 SQL Server 數(shù)據(jù)庫。
MySQL先決條件
必須事先安裝以下軟件
- MySQL 數(shù)據(jù)庫。
- 已 安裝MySQL 連接器,這將安裝 MySQL ODBC 驅(qū)動程序。
讓我們在 MySQL 中創(chuàng)建一個名為 myTable 的表,其中包含一個名為 myColumn 的列,然后在表中插入一些數(shù)據(jù):
解決方案
1、啟動 SQL Server Business Intelligence Development Studio 并啟動一個集成服務(wù)項目。
2、創(chuàng)建一個新項目并選擇集成服務(wù)項目。
3、在工具箱中,將數(shù)據(jù)流任務(wù)拖放到控制流選項卡的設(shè)計圖面上。
4、雙擊設(shè)計窗格中的數(shù)據(jù)流任務(wù)。
5、在 Data Flow 選項卡中,將 ADO.NET Source 和 ADO.NET Destination 拖放到設(shè)計窗格中,用綠色箭頭連接這兩個任務(wù)。
6、轉(zhuǎn)到 Windows 開始菜單 | 管理工具 | 數(shù)據(jù)源 (ODBC),然后單擊添加按鈕。
7、選擇 MySQL ODBC 驅(qū)動程序并按完成。請注意,此驅(qū)動程序是使用上面先決條件部分中指定的連接器安裝的。
8、指定數(shù)據(jù)源名稱。例如“MySQL conn”。
9、指定 TCP/IP 服務(wù)器。如果使用的機器是本地機器,它可以是 IP 或 localhost。
10、指定用戶,在本例中為 root 和密碼。如果您不知道用戶數(shù)據(jù)庫密碼,請咨詢 MySQL 管理員)。
11、選擇 MySQL 數(shù)據(jù)庫。
12、恭喜!您有一個 ODBC 連接?,F(xiàn)在讓我們在 SSIS 中使用它并返回 SSIS 項目。
13、雙擊 ADO Net Source 并按下新按鈕。
14、再次按新按鈕以添加連接。
15、這很重要,在提供程序中,選擇 .NET Providers\ODBC Data Provider。將顯示 ODBC 連接。選擇在步驟 8 中創(chuàng)建的連接,然后按 OK。
16、在 ADO.NET 源代碼編輯器中,在數(shù)據(jù)訪問模式下,選擇 SQL 命令。 17、在 SQL 命令測試中,寫入“select * from myTable”,然后按 OK。在這一步中,您將編寫查詢以訪問在開始時創(chuàng)建的 MySQL 表。
18、雙擊 ADO.NET 目標(biāo)任務(wù)并在連接管理器中按新建。
19、在配置 ADO.NET 連接管理器中,再次按新建。
20、在連接管理器中指定 SQL Server 實例名稱(在此示例中,localhost 是一個點)并選擇一個您想要導(dǎo)入 MySQL 數(shù)據(jù)庫的數(shù)據(jù)庫,然后按 OK。在此示例中使用 Adventureworks 數(shù)據(jù)庫,但也可以使用任何數(shù)據(jù)庫。
21、在 ADO.NET 目標(biāo)編輯器中,單擊使用表或視圖選項中的新建。
22、在 Create Table 框中,使用以下代碼:
23、在 ADO.NET Destination Editor 中,單擊 Mapping 頁面并按 OK。
24、我們準(zhǔn)備好了。按開始調(diào)試圖標(biāo),如下所示。
25、您將看到綠色的任務(wù),這意味著任務(wù)已成功完成并具有相關(guān)的行數(shù)。
26、最后但同樣重要的是,打開 Microsoft SQL Server Management Studio 并在使用的實例和數(shù)據(jù)庫中驗證新表 myTable 是否已創(chuàng)建,并且它是否包含指定的數(shù)據(jù)。