Kopírování dat z MySQL pomocí služby Azure Data Factory nebo Synapse Analytics
PLATÍ PRO: Azure Data Factory Azure Synapse Analytics
Tip
Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.
Tento článek popisuje, jak pomocí aktivity kopírování v kanálech Azure Data Factory a Synapse Analytics kopírovat data z databáze MySQL. Vychází z článku s přehledem aktivity kopírování, který představuje obecný přehled aktivity kopírování.
Poznámka:
Ke kopírování dat ze služby Azure Database for MySQL nebo do služby Azure Database for MySQL použijte specializovaný konektor Azure Database for MySQL.
Podporované funkce
Tento konektor MySQL je podporovaný pro následující funkce:
Podporované funkce | IR |
---|---|
aktivita Copy (zdroj/-) | (1) (2) |
Aktivita Lookup | (1) (2) |
(1) Prostředí Azure Integration Runtime (2) Místní prostředí Integration Runtime
Seznam úložišť dat podporovaných jako zdroje nebo jímky aktivitou kopírování najdete v tabulce Podporované úložiště dat.
Tento konektor podporuje MySQL verze 5.5, 5.6, 5.7, 8.0, 8.1 a 8.2 v rámci doporučené nové verze ovladače verze 2 a 5.6, 5.7 a 8.0 pro starší verzi ovladače.
Požadavky
Pokud se vaše úložiště dat nachází uvnitř místní sítě, virtuální sítě Azure nebo amazonového privátního cloudu, musíte nakonfigurovat místní prostředí Integration Runtime pro připojení k němu.
Pokud je vaše úložiště dat spravovanou cloudovou datovou službou, můžete použít Azure Integration Runtime. Pokud je přístup omezený na IP adresy schválené v pravidlech brány firewall, můžete do seznamu povolených přidat IP adresy prostředí Azure Integration Runtime.
K přístupu k místní síti bez nutnosti instalace a konfigurace místního prostředí Integration Runtime můžete také použít funkci Runtime integrace spravované virtuální sítě ve službě Azure Data Factory.
Další informace o mechanismech zabezpečení sítě a možnostech podporovaných službou Data Factory najdete v tématu Strategie přístupu k datům.
Prostředí Integration Runtime poskytuje integrovaný ovladač MySQL od verze 3.7, takže nemusíte ručně instalovat žádný ovladač.
Začínáme
K provedení aktivita Copy s kanálem můžete použít jeden z následujících nástrojů nebo sad SDK:
- Nástroj pro kopírování dat
- Azure Portal
- Sada .NET SDK
- Sada Python SDK
- Azure PowerShell
- Rozhraní REST API
- Šablona Azure Resource Manageru
Vytvoření propojené služby s MySQL pomocí uživatelského rozhraní
Pomocí následujícího postupu vytvořte propojenou službu s MySQL v uživatelském rozhraní webu Azure Portal.
Přejděte na kartu Správa v pracovním prostoru Azure Data Factory nebo Synapse a vyberte Propojené služby a pak klikněte na Nový:
Vyhledejte MySQL a vyberte konektor MySQL.
Nakonfigurujte podrobnosti o službě, otestujte připojení a vytvořte novou propojenou službu.
podrobnosti o konfiguraci Připojení oru
Následující části obsahují podrobnosti o vlastnostech, které slouží k definování entit služby Data Factory specifických pro konektor MySQL.
Vlastnosti propojené služby
Pokud používáte doporučenou verzi ovladače, jsou pro propojenou službu MySQL podporovány následující vlastnosti:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu musí být nastavená na: MySql. | Ano |
driverVersion | Verze ovladače, když vyberete doporučenou verzi ovladače. Hodnota je v2. | Ano |
server | Název vašeho serveru MySQL. | Ano |
port | Číslo portu pro připojení k serveru MySQL. | No |
database | Název databáze MySQL. | Ano |
username | Vaše uživatelské jméno. | Ano |
Heslo | Heslo pro uživatelské jméno. Označte toto pole jako SecureString, abyste ho bezpečně uložili. Nebo můžete odkazovat na tajný klíč uložený ve službě Azure Key Vault. | Ano |
sslMode | Tato možnost určuje, jestli ovladač při připojování k MySQL používá šifrování TLS a ověřování. Např. SSLMode=<0/1/2/3/4> Možnosti: ZAKÁZÁNO (0) / PREFEROVÁNO (1) (Výchozí) / POVINNÉ (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) |
Ano |
useSystemTrustStore | Tato možnost určuje, jestli se má použít certifikát certifikační autority z úložiště důvěryhodnosti systému nebo ze zadaného souboru PEM. Např. UseSystemTrustStore=<0/1> Možnosti: Povoleno (1) / Zakázáno (0) (výchozí) |
No |
connectVia | Prostředí Integration Runtime , které se má použít pro připojení k úložišti dat. Další informace najdete v části Požadavky . Pokud není zadaný, použije výchozí prostředí Azure Integration Runtime. | No |
Příklad:
{
"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říklad: Uložení hesla ve službě Azure Key Vault
{
"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"
}
}
}
Pokud používáte starší verzi ovladače, podporují se následující vlastnosti:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu musí být nastavená na: MySql. | Ano |
připojovací řetězec | Zadejte informace potřebné pro připojení k instanci Azure Database for MySQL. Můžete také zadat heslo do služby Azure Key Vault a vytáhnout password konfiguraci z připojovací řetězec. Další podrobnosti najdete v následujících ukázkách a ukládání přihlašovacích údajů ve službě Azure Key Vault . |
Ano |
connectVia | Prostředí Integration Runtime , které se má použít pro připojení k úložišti dat. Další informace najdete v části Požadavky . Pokud není zadaný, použije výchozí prostředí Azure Integration Runtime. | No |
Typický připojovací řetězec je Server=<server>;Port=<port>;Database=<database>;UID=<username>;PWD=<password>
. Další vlastnosti, které můžete nastavit pro váš případ:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
sslMode | Tato možnost určuje, jestli ovladač při připojování k MySQL používá šifrování TLS a ověřování. Např. SSLMode=<0/1/2/3/4> Možnosti: ZAKÁZÁNO (0) / PREFEROVÁNO (1) (Výchozí) / POVINNÉ (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) |
Ano |
Certifikát SSL | Úplná cesta a název souboru .pem obsahujícího certifikát SSL použitý k prokázání identity klienta. Chcete-li zadat privátní klíč pro šifrování tohoto certifikátu před jeho odesláním na server, použijte SSLKey vlastnost. |
Ano, pokud používáte dvoucestné ověřování SSL. |
SslKey | Úplná cesta a název souboru obsahujícího privátní klíč používaný k šifrování certifikátu na straně klienta během dvoucestného ověřování SSL. | Ano, pokud používáte dvoucestné ověřování SSL. |
useSystemTrustStore | Tato možnost určuje, jestli se má použít certifikát certifikační autority z úložiště důvěryhodnosti systému nebo ze zadaného souboru PEM. Např. UseSystemTrustStore=<0/1> Možnosti: Povoleno (1) / Zakázáno (0) (výchozí) |
No |
Příklad:
{
"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"
}
}
}
Vlastnosti datové sady
Úplný seznam oddílů a vlastností dostupných pro definování datových sad najdete v článku o datových sadách . Tato část obsahuje seznam vlastností podporovaných datovou sadou MySQL.
Pokud chcete kopírovat data z MySQL, podporují se následující vlastnosti:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu datové sady musí být nastavená na: MySqlTable. | Ano |
tableName | Název tabulky v databázi MySQL | Ne (pokud je zadán dotaz ve zdroji aktivity) |
Příklad
{
"name": "MySQLDataset",
"properties":
{
"type": "MySqlTable",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<MySQL linked service name>",
"type": "LinkedServiceReference"
}
}
}
Pokud jste používali RelationalTable
zadaná datová sada, je stále podporovaná tak, jak je, zatímco se navrhuje, abyste mohli použít novou datovou sadu.
Vlastnosti aktivity kopírování
Úplný seznam oddílů a vlastností dostupných pro definování aktivit najdete v článku Pipelines . Tato část obsahuje seznam vlastností podporovaných zdrojem MySQL.
MySQL jako zdroj
Pokud chcete kopírovat data z MySQL, podporují se v části zdroje aktivity kopírování následující vlastnosti:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu zdroje aktivity kopírování musí být nastavená na: MySqlSource. | Ano |
query | Ke čtení dat použijte vlastní dotaz SQL. Například: "SELECT * FROM MyTable" . |
Ne (pokud je v datové sadě zadán název tabulky) |
Příklad:
"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>"
}
}
}
]
Pokud jste používali RelationalSource
typovaný zdroj, je stále podporovaný tak, jak je, zatímco se navrhuje používat nový zdroj.
Mapování datových typů pro MySQL
Při kopírování dat z MySQL se z datových typů MySQL používají následující mapování k dočasným datovým typům používaným službou interně. Informace o tom, jak aktivita kopírování mapuje zdrojové schéma a datový typ na jímku, najdete v mapování schématu schématu a datového typu schématu schématu a datového typu.
Datový typ MySQL | Dočasný datový typ služby | Dočasný datový typ služby (pro starší verzi ovladače) |
---|---|---|
bigint |
Int64 |
Int64 |
bigint unsigned |
Decimal |
Decimal |
bit(1) |
UInt64 |
Boolean |
bit(M), M>1 |
UInt64 |
Byte[] |
blob |
Byte[] |
Byte[] |
bool |
Boolean (Pokud TreatTinyAsBoolean=false, je mapován jako SByte . TreatTinyAsBoolean je ve výchozím nastavení true ) |
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 |
Vlastnosti aktivity vyhledávání
Podrobnosti o vlastnostech najdete v aktivitě Vyhledávání.
Upgrade verze ovladače MySQL
Tady jsou kroky, které vám pomůžou s upgradem verze ovladače MySQL:
Na stránce Upravit propojenou službu vyberte Doporučené v části Verze ovladače a nakonfigurujte propojenou službu odkazem na vlastnosti propojené služby.
Mapování datových typů pro nejnovější propojenou službu MySQL se liší od mapování datového typu pro starší verzi. Informace o nejnovějším mapování datových typů najdete v tématu Mapování datových typů pro MySQL.
Nejnovější verze ovladače v2 podporuje více verzí MySQL. Další informace najdete v tématu Podporované možnosti.
Rozdíly mezi MySQL s využitím doporučené verze ovladače a starší verzí ovladače
Následující tabulka ukazuje rozdíly v mapování datových typů mezi konektorem MySQL s použitím doporučené verze ovladače a starší verze ovladače.
Datový typ MySQL | Dočasný datový typ služby (s použitím doporučené verze ovladače) | Dočasný datový typ služby (s použitím starší verze ovladače) |
---|---|---|
bit(1) | UInt64 | Logická hodnota |
bit(M), M>1 | UInt64 | Bajt[] |
bool | Logická hodnota | Int16 |
JSON | String | Bajt[] |
Související obsah
Seznam úložišť dat podporovaných jako zdroje a jímky aktivitou kopírování najdete v podporovaných úložištích dat.