Adatok másolása a MySQL-ből az Azure Data Factory vagy a Synapse Analytics használatával
A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
Ez a cikk azt ismerteti, hogyan használhatja a Másolási tevékenységet az Azure Data Factoryben és a Synapse Analytics-folyamatokban az adatok MySQL-adatbázisból való másolásához. A másolási tevékenység áttekintési cikkére épül, amely a másolási tevékenység általános áttekintését mutatja be.
Feljegyzés
Ha adatokat szeretne másolni az Azure Database for MySQL szolgáltatásból vagy az Azure Database for MySQL szolgáltatásba, használja a speciális Azure Database for MySQL-összekötőt.
Támogatott képességek
Ez a MySQL-összekötő a következő képességekhez támogatott:
Támogatott képességek | IR |
---|---|
Copy tevékenység (forrás/-) | (1) (2) |
Keresési tevékenység | (1) (2) |
(1) Azure-integrációs modul (2) Saját üzemeltetésű integrációs modul
A másolási tevékenység által forrásként/fogadóként támogatott adattárak listáját a Támogatott adattárak táblában találja.
Ez az összekötő támogatja a MySQL 5.5-ös, 5.6-os, 5.7-es, 8.0-s, 8.1-es és 8.2-es verzióját az új illesztőprogram 2-es és 5.6-os, 5.7-es és 8.0-s verziójában.
Előfeltételek
Ha az adattár helyszíni hálózaton, Azure-beli virtuális hálózaton vagy Amazon Virtual Private Cloudon belül található, konfigurálnia kell egy saját üzemeltetésű integrációs modult a csatlakozáshoz.
Ha az adattár felügyelt felhőalapú adatszolgáltatás, használhatja az Azure Integration Runtime-ot. Ha a hozzáférés a tűzfalszabályokban jóváhagyott IP-címekre korlátozódik, hozzáadhat azure integration runtime IP-eket az engedélyezési listához.
Az Azure Data Factory felügyelt virtuális hálózati integrációs moduljával is elérheti a helyszíni hálózatot anélkül, hogy saját üzemeltetésű integrációs modult telepítene és konfigurálna.
A Data Factory által támogatott hálózati biztonsági mechanizmusokkal és lehetőségekkel kapcsolatos további információkért lásd az adathozzáférési stratégiákat.
Az Integrációs modul beépített MySQL-illesztőt biztosít a 3.7-es verziótól kezdve, ezért nem kell manuálisan telepítenie az illesztőprogramokat.
Első lépések
A Copy tevékenység folyamattal való végrehajtásához használja az alábbi eszközök vagy SDK-k egyikét:
- Az Adatok másolása eszköz
- Az Azure Portal
- A .NET SDK
- A Python SDK
- Azure PowerShell
- A REST API
- Az Azure Resource Manager-sablon
Társított szolgáltatás létrehozása a MySQL-hez felhasználói felületen
Az alábbi lépésekkel létrehozhat egy társított szolgáltatást a MySQL-hez az Azure Portal felhasználói felületén.
Keresse meg az Azure Data Factory vagy a Synapse-munkaterület Kezelés lapját, és válassza a Társított szolgáltatások lehetőséget, majd kattintson az Új gombra:
Keresse meg a MySQL-t, és válassza ki a MySQL-összekötőt.
Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.
Csatlakozás or konfigurációjának részletei
Az alábbi szakaszok a Data Factory-entitások MySQL-összekötőre vonatkozó meghatározásához használt tulajdonságok részleteit ismertetik.
Társított szolgáltatás tulajdonságai
Ha az ajánlott illesztőprogram-verziót használja, a MySQL társított szolgáltatás esetében az alábbi tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A típustulajdonságnak a következőnek kell lennie: MySql | Igen |
driverVersion | Az illesztőprogram verziója az ajánlott illesztőprogram-verzió kiválasztásakor. Az érték v2. | Igen |
kiszolgáló | A MySQL-kiszolgáló neve. | Igen |
kikötő | A MySQL-kiszolgálóhoz való csatlakozáshoz használt portszám. | Nem |
adatbázis | A MySQL-adatbázis neve. | Igen |
username | Az Ön felhasználóneve. | Igen |
jelszó | A felhasználónév jelszava. Jelölje meg ezt a mezőt SecureStringként a biztonságos tároláshoz. Hivatkozhat az Azure Key Vaultban tárolt titkos kódokra is. | Igen |
sslMode | Ez a beállítás azt határozza meg, hogy az illesztőprogram TLS-titkosítást és -ellenőrzést használ-e a MySQL-hez való csatlakozáskor. Például. SSLMode=<0/1/2/3/4> Beállítások: LETILTVA (0) / PREFERÁLT (1) (Alapértelmezett) / KÖTELEZŐ (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) |
Igen |
useSystemTrustStore | Ez a beállítás azt határozza meg, hogy a rendszer megbízhatósági tárolójából vagy egy megadott PEM-fájlból használjon-e hitelesítésszolgáltatói tanúsítványt. Például; UseSystemTrustStore=<0/1> Beállítások: Engedélyezve (1) / Letiltva (0) (Alapértelmezett) |
Nem |
connectVia | Az adattárhoz való csatlakozáshoz használandó integrációs modul . További információ az Előfeltételek szakaszból. Ha nincs megadva, az alapértelmezett Azure Integration Runtime-t használja. | Nem |
Példa:
{
"name": "MySQLLinkedService",
"properties": {
"type": "MySql",
"typeProperties": {
"server": "<server>",
"port": 3306,
"database": "<database>",
"username": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"sslmode": <sslmode>,
"usesystemtruststore": <UseSystemTrustStore>,
"driverVersion": "v2"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Példa: jelszó tárolása az Azure Key Vaultban
{
"name": "MySQLLinkedService",
"properties": {
"type": "MySql",
"typeProperties": {
"server": "<server>",
"port": 3306,
"database": "<database>",
"username": "<username>",
"sslmode": <sslmode>,
"usesystemtruststore": <UseSystemTrustStore>,
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
},
"driverVersion": "v2"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Ha az örökölt illesztőprogram-verziót használja, a következő tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A típustulajdonságnak a következőnek kell lennie: MySql | Igen |
connectionString | Adja meg az Azure Database for MySQL-példányhoz való csatlakozáshoz szükséges információkat. Jelszót is elhelyezhet az Azure Key Vaultban, és lekérheti a password konfigurációt a kapcsolati sztring. További részletekért tekintse meg az alábbi példákat és a hitelesítő adatok tárolását az Azure Key Vaultban . |
Igen |
connectVia | Az adattárhoz való csatlakozáshoz használandó integrációs modul . További információ az Előfeltételek szakaszból. Ha nincs megadva, az alapértelmezett Azure Integration Runtime-t használja. | Nem |
Egy tipikus kapcsolati sztring a Server=<server>;Port=<port>;Database=<database>;UID=<username>;PWD=<password>
. Esetenként további tulajdonságok állíthatók be:
Tulajdonság | Leírás | Kötelező |
---|---|---|
sslMode | Ez a beállítás azt határozza meg, hogy az illesztőprogram TLS-titkosítást és -ellenőrzést használ-e a MySQL-hez való csatlakozáskor. Például. SSLMode=<0/1/2/3/4> Beállítások: LETILTVA (0) / PREFERÁLT (1) (Alapértelmezett) / KÖTELEZŐ (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) |
Igen |
SSLCert | Az ügyfél identitásának igazolásához használt SSL-tanúsítványt tartalmazó .pem fájl teljes elérési útja és neve. Ha titkos kulcsot szeretne megadni a tanúsítvány titkosításához, mielőtt elküldené a kiszolgálónak, használja a tulajdonságot SSLKey . |
Igen, ha kétirányú SSL-ellenőrzést használ. |
SSLKey | A kétirányú SSL-ellenőrzés során az ügyféloldali tanúsítvány titkosításához használt titkos kulcsot tartalmazó fájl teljes elérési útja és neve. | Igen, ha kétirányú SSL-ellenőrzést használ. |
useSystemTrustStore | Ez a beállítás azt határozza meg, hogy a rendszer megbízhatósági tárolójából vagy egy megadott PEM-fájlból használjon-e hitelesítésszolgáltatói tanúsítványt. Például; UseSystemTrustStore=<0/1> Beállítások: Engedélyezve (1) / Letiltva (0) (Alapértelmezett) |
Nem |
Példa:
{
"name": "MySQLLinkedService",
"properties": {
"type": "MySql",
"typeProperties": {
"connectionString": "Server=<server>;Port=<port>;Database=<database>;UID=<username>;PWD=<password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Adathalmaz tulajdonságai
Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az adathalmazokról szóló cikkben találja. Ez a szakasz a MySQL-adatkészlet által támogatott tulajdonságok listáját tartalmazza.
Az adatok MySQL-ből való másolásához a következő tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | Az adathalmaz típustulajdonságának a következőnek kell lennie: MySqlTable | Igen |
tableName | A MySQL-adatbázisban lévő tábla neve. | Nem (ha "lekérdezés" van megadva a tevékenységforrásban) |
Példa
{
"name": "MySQLDataset",
"properties":
{
"type": "MySqlTable",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<MySQL linked service name>",
"type": "LinkedServiceReference"
}
}
}
Ha gépelt adatkészletet használt RelationalTable
, az továbbra is támogatott, miközben a rendszer azt javasolja, hogy használja az újat.
Másolási tevékenység tulajdonságai
A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című cikkben találja. Ez a szakasz a MySQL-forrás által támogatott tulajdonságok listáját tartalmazza.
MySQL mint forrás
Az adatok MySQL-ből való másolásához a másolási tevékenység forrás szakasza az alábbi tulajdonságokat támogatja:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A másolási tevékenység forrásának típustulajdonságának a következőnek kell lennie: MySqlSource | Igen |
Lekérdezés | Az adatok olvasásához használja az egyéni SQL-lekérdezést. Például: "SELECT * FROM MyTable" |
Nem (ha "tableName" van megadva az adathalmazban) |
Példa:
"activities":[
{
"name": "CopyFromMySQL",
"type": "Copy",
"inputs": [
{
"referenceName": "<MySQL input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "MySqlSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Ha gépelt forrást használt RelationalSource
, az továbbra is támogatott, miközben a rendszer azt javasolja, hogy használja az újat.
Adattípus-leképezés a MySQL-hez
Amikor adatokat másol a MySQL-ből, a következő leképezéseket használja a MySQL-adattípusoktól a szolgáltatás által belsőleg használt köztes adattípusokig. A séma- és adattípus-leképezések segítségével megtudhatja , hogy a másolási tevékenység hogyan rendeli le a forrásséma és az adattípust a fogadóhoz.
MySQL-adattípus | Köztes szolgáltatás adattípusa | Köztes szolgáltatás adattípusa (az örökölt illesztőprogram-verzióhoz) |
---|---|---|
bigint |
Int64 |
Int64 |
bigint unsigned |
Decimal |
Decimal |
bit(1) |
UInt64 |
Boolean |
bit(M), M>1 |
UInt64 |
Byte[] |
blob |
Byte[] |
Byte[] |
bool |
Boolean (Ha TreatTinyAsBoolean=false, akkor a rendszer a következőképpen van leképezve SByte : . TreatTinyAsBoolean alapértelmezés szerint igaz ) |
Int16 |
char |
String |
String |
date |
Datetime |
Datetime |
datetime |
Datetime |
Datetime |
decimal |
Decimal |
Decimal, String |
double |
Double |
Double |
double precision |
Double |
Double |
enum |
String |
String |
float |
Single |
Single |
int |
Int32 |
Int32 |
int unsigned |
Int64 |
Int64 |
integer |
Int32 |
Int32 |
integer unsigned |
Int64 |
Int64 |
JSON |
String |
- |
long varbinary |
Byte[] |
Byte[] |
long varchar |
String |
String |
longblob |
Byte[] |
Byte[] |
longtext |
String |
String |
mediumblob |
Byte[] |
Byte[] |
mediumint |
Int32 |
Int32 |
mediumint unsigned |
Int64 |
Int64 |
mediumtext |
String |
String |
numeric |
Decimal |
Decimal |
real |
Double |
Double |
set |
String |
String |
smallint |
Int16 |
Int16 |
smallint unsigned |
Int32 |
Int32 |
text |
String |
String |
time |
TimeSpan |
TimeSpan |
timestamp |
Datetime |
Datetime |
tinyblob |
Byte[] |
Byte[] |
tinyint |
SByte |
Int16 |
tinyint unsigned |
Int16 |
Int16 |
tinytext |
String |
String |
varchar |
String |
String |
year |
Int |
Int |
Keresési tevékenység tulajdonságai
A tulajdonságok részleteinek megismeréséhez tekintse meg a keresési tevékenységet.
A MySQL-illesztőprogram verziójának frissítése
Az alábbi lépések segítenek a MySQL-illesztőprogram verziójának frissítésében:
A Csatolt szolgáltatás szerkesztése lapon válassza az Ajánlott lehetőséget az Illesztőprogram verzió alatt, és konfigurálja a társított szolgáltatást a csatolt szolgáltatás tulajdonságaira hivatkozva.
A legújabb Társított MySQL-szolgáltatás adattípus-leképezése eltér az örökölt verzióétól. A legújabb adattípus-leképezés megismeréséhez tekintse meg a MySQL adattípus-leképezését.
A legújabb 2-es verziójú illesztőprogram több MySQL-verziót támogat. További információ: Támogatott képességek.
Különbségek az ajánlott illesztőprogram-verziót használó MySQL és az örökölt illesztőprogram-verzió használata között
Az alábbi táblázat a MySQL-összekötő adattípus-leképezési különbségeit mutatja be az ajánlott illesztőprogram-verzió és az örökölt illesztőprogram-verzió használatával.
MySQL-adattípus | Köztes szolgáltatás adattípusa (az ajánlott illesztőprogram-verzió használatával) | Köztes szolgáltatás adattípusa (az örökölt illesztőprogram-verzió használatával) |
---|---|---|
bit(1) | UInt64 | Logikai |
bit(M), M>1 | UInt64 | Bájt[] |
logikai | Logikai | Int16 |
JSON | Sztring | Bájt[] |
Kapcsolódó tartalom
A másolási tevékenység által forrásként és fogadóként támogatott adattárak listáját a támogatott adattárakban találja.