Delen via


Referenties die worden gebruikt voor toegang tot de elastic database-clientbibliotheek

Van toepassing op: Azure SQL Database

De elastic database-clientbibliotheek gebruikt drie verschillende soorten referenties voor toegang tot shard-toewijzingsbeheer. Gebruik, afhankelijk van de behoefte, de referentie met het laagste toegangsniveau dat mogelijk is.

  • Beheerreferenties: voor het maken of bewerken van een shard-toewijzingsbeheer. (Zie de woordenlijst.)
  • Toegangsreferenties: voor toegang tot een bestaand shard-toewijzingsbeheer om informatie over shards te verkrijgen.
  • Verbinding maken ion-referenties: verbinding maken met shards.

Zie ook Databases en aanmeldingen beheren in Azure SQL Database.

Over beheerreferenties

Beheerreferenties worden gebruikt om een ShardMapManager-object (Java, .NET) te maken voor toepassingen die shard-kaarten bewerken. (Zie bijvoorbeeld Een shard toevoegen met behulp van hulpprogramma's voor Elastic Database en gegevensafhankelijke routering). De gebruiker van de elastische-schaalclientbibliotheek maakt de SQL-gebruikers en SQL-aanmeldingen en zorgt ervoor dat aan elk ervan de lees-/schrijfmachtigingen worden verleend voor de globale shard-toewijzingsdatabase en alle sharddatabases. Deze referenties worden gebruikt voor het onderhouden van de globale shard-toewijzing en de lokale shard-toewijzingen wanneer wijzigingen in de shard-toewijzing worden uitgevoerd. Gebruik bijvoorbeeld de beheerreferenties om het shard-toewijzingsbeheerobject te maken (met Behulp van GetSqlShardMapManager (Java, .NET):

// Obtain a shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmAdminConnectionString,ShardMapManagerLoadPolicy.Lazy);

De variabele smm BeheerVerbinding maken ionString is een verbindingsreeks die de beheerreferenties bevat. De gebruikers-id en het wachtwoord bieden lees-/schrijftoegang tot zowel de shard-toewijzingsdatabase als afzonderlijke shards. Het beheer verbindingsreeks bevat ook de servernaam en databasenaam om de globale shard-toewijzingsdatabase te identificeren. Hier volgt een typische verbindingsreeks voor dat doel:

"Server=<yourserver>.database.windows.net;Database=<yourdatabase>;User ID=<yourmgmtusername>;Password=<yourmgmtpassword>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"

Gebruik geen waarden in de vorm van 'username@server'. Gebruik in plaats daarvan alleen de waarde 'gebruikersnaam'. Dit komt doordat referenties moeten werken met zowel de shard-toewijzingsbeheerdatabase als afzonderlijke shards, die zich mogelijk op verschillende servers bevinden.

Toegangsreferenties

Wanneer u een shard-toewijzingsbeheer maakt in een toepassing die geen shard-toewijzingen beheert, gebruikt u referenties met alleen-lezenmachtigingen voor de globale shard-toewijzing. De informatie die wordt opgehaald uit de globale shard-toewijzing onder deze referenties, wordt gebruikt voor gegevensafhankelijke routering en om de shard-toewijzingscache op de client te vullen. De referenties worden opgegeven via hetzelfde aanroeppatroon voor GetSqlShardMapManager:

// Obtain shard map manager.
ShardMapManager shardMapManager = ShardMapManagerFactory.GetSqlShardMapManager(smmReadOnlyConnectionString, ShardMapManagerLoadPolicy.Lazy);  

Let op het gebruik van smmReadOnly Verbinding maken ionString om het gebruik van verschillende referenties voor deze toegang te weerspiegelen namens niet-beheerders: deze referenties mogen geen schrijfmachtigingen bieden voor de globale shard-toewijzing.

Verbindingsreferenties

Er zijn extra referenties nodig bij het gebruik van de methode Open Verbinding maken ionForKey (Java, .NET) voor toegang tot een shard die is gekoppeld aan een shardingsleutel. Deze referenties moeten machtigingen bieden voor alleen-lezentoegang tot de lokale shardtoewijzingstabellen die zich op de shard bevinden. Dit is nodig om verbindingsvalidatie uit te voeren voor gegevensafhankelijke routering op de shard. Dit codefragment biedt toegang tot gegevens in de context van gegevensafhankelijke routering:

using (SqlConnection conn = rangeMap.OpenConnectionForKey<int>(targetWarehouse, smmUserConnectionString, ConnectionOptions.Validate))

In dit voorbeeld bevat smmUser Verbinding maken ionString de verbindingsreeks voor de gebruikersreferenties. Voor Azure SQL Database is dit een typische verbindingsreeks voor gebruikersreferenties:

"User ID=<yourusername>; Password=<youruserpassword>; Trusted_Connection=False; Encrypt=True; Connection Timeout=30;"  

Net als bij de beheerdersreferenties gebruikt u geen waarden in de vorm van 'username@server'. Gebruik in plaats daarvan 'gebruikersnaam'. Houd er ook rekening mee dat de verbindingsreeks geen servernaam en databasenaam bevat. Dat komt doordat de aanroep Open Verbinding maken ionForKey automatisch de verbinding naar de juiste shard leidt op basis van de sleutel. Daarom worden de databasenaam en servernaam niet opgegeven.

Zie ook

Databases en aanmeldingen beheren in Azure SQL Database

Uw SQL-database beveiligen

Elastische databasetaken

Aanvullende bronnen

Gebruikt u nog geen hulpprogramma's voor elastische databases? Bekijk de handleiding Aan de slag. Neem voor vragen contact met ons op op de microsoft Q&A-vragenpagina voor SQL Database en voor functieaanvragen, voeg nieuwe ideeën toe of stem op bestaande ideeën in het feedbackforum van SQL Database.