sql-azureErste Schritte mit SQL-Azure


Bemerkungen

Die Windows Azure SQL-Datenbank ist ein PaaS-Angebot (Platform-as-a-Service) von Microsoft SQL Server. Paas unterscheidet sich von physischen oder virtuellen Maschineninstanzen von SQL Server. Diese anderen Optionen würden als Infrastruktur bezeichnet. Wenn diese virtuellen Maschineninstanzen des SQL-Servers von einem Cloud-Anbieter wie Microsoft Azure gehostet werden, werden diese Infrastrukturangebote als Infrastructure-as-a-Service bezeichnet.

PaaS-Optionen wären für Unternehmen interessant, die nicht über die Ressourcen (Zeit, Geld oder Personen) verfügen, um eine große Infrastruktur zu verwalten. PaaS-Angebote beseitigen die mit der Infrastruktur vor Ort verbundenen Investitionen. Sie minimieren auch die Betriebskosten für Infrastruktur oder IaaS, da die Wartungskosten für das Patching und das Upgrade Ihrer SQL Server-Instanzen für Sie übernommen werden. Auf Wunsch werden auch Backups und Hochverfügbarkeitsoptionen per Knopfdruck aktiviert.

Mit Paas sind noch einige Betriebskosten verbunden. Über den tatsächlichen Gebühren für die Windows Azure SQL-Datenbank können Unternehmen weiterhin von den Fähigkeiten des Datenbankadministrators (DBA) profitieren. Indexwartungspläne, komplexe Hochverfügbarkeitspläne (High Availability (HA)) oder Disaster Recovery-Pläne (DR) können weiterhin von der DBA-Überwachung profitieren.

Versionen

Derzeit sind zwei "Versionen" der Azure SQL-Datenbank verfügbar. Die ursprüngliche Version und V12, die am 1. April 2015 die allgemeine Verfügbarkeit (GA) erreicht haben.

Beide Versionen werden im Laufe der Zeit kontinuierlich verbessert, da neue Funktionen getestet, für die technische Vorschau geöffnet werden und letztendlich GA ansprechen. Diese Verbesserungen sind in der Regel abwärtskompatibel. Daher wurde die ursprüngliche "Version" nicht nummeriert oder mit offiziellen Versionen versehen.

Während der frühen Entwicklung von V12 waren einige der neuen Funktionen nicht mit den Vorgängerversionen kompatibel. Als dies entdeckt wurde, wurden neue physische Hosts in den Microsoft Azure-Rechenzentren hochgefahren und diese neuen V12-Datenbanken wurden auf diesen neuen physischen Hosts gehostet.

Die Originalversion verbessert sich mit der Zeit nicht mehr. Neue Funktionen werden nur dem V12-Zweig hinzugefügt. Neue Datenbanken können nicht mehr als vorherige "Versions" -Datenbank erstellt werden.

Erstellen Sie eine Windows Azure SQL-Datenbank über das Portal

Wie bei allem in Windows Azure müssen Sie über ein Windows Azure-Konto und ein Azure-Abonnement verfügen. Wenn Sie beide haben, gehen Sie zu https://portal.azure.com . Hier können Sie Ihrem Azure-Abonnement neue Ressourcen hinzufügen.

Neue Ressource

Klicken Sie im linken Menü auf Neu. Ein neues Blatt wird rechts von Ihrem Menü hinzugefügt. Wählen Sie in diesem Menü Datenbanken aus, und Ihrem Menü wird ein weiteres Blade hinzugefügt.

Datenbanken Blade

Wählen Sie SQL Database, dann werden die Blades "New" und "Databases" entfernt und ein neuer SQL Database-Blade wird Ihrem Menü hinzugefügt.

Erstellen Sie einen Windows Azure SQL-Datenbank-Blade

Hier müssen Sie einen Datenbanknamen auswählen, um diese neue Datenbank anzugeben. Sie müssen auch das Abonnement auswählen, zu dem diese Datenbank hinzugefügt werden soll, wenn Sie Zugriff auf mehrere Abonnements haben. Hier wird die Rechnung für Ihre Datenbank erfasst.

Wenn Sie bereits Ressourcengruppen für Ihr Abonnement definiert haben, können Sie eine dieser Ressourcengruppen wiederverwenden oder eine neue erstellen. Stellen Sie sich diese Ressourcengruppen als eine Sammlung von Ressourcen innerhalb von Windows Azure vor, die einen gemeinsamen Lebenszyklus haben. Alle Ressourcen innerhalb dieser Gruppe werden alle innerhalb desselben Zeitraums erstellt und zerstört. Mit diesem Konzept von Ressourcengruppen können Sie Ihre Ressourcen einfacher weiterentwickeln.

Nachdem Sie die für Ihre Geschäftsanforderungen am besten geeignete Ressourcengruppe ausgewählt haben, können Sie die Quelle für Ihre neue Datenbank auswählen.

  1. Sie können eine leere Datenbank erstellen. Dies gibt Ihnen die größte Flexibilität bei der neuen Datenbank.
  2. Sie können Ihre Datenbank auch aus einer Beispieldatenbank erstellen. Derzeit sind die zwei Beispieloptionen AdventureWorks, die OLTP-Demonstrationsdatenbank (Transactional) von Microsoft.
  3. Die letzte Option besteht darin, Ihre Datenbank aus einem Backup zu erstellen. Diese Option ist am besten für diejenigen geeignet, die mehrere Kopien einer einzigen Datenbank erstellen. Mit dieser Option können Sie die Wiederherstellung aus einer automatischen Sicherung einer Windows Azure SQL-Datenbank auswählen. Dies kann nützlich sein, wenn Sie eine "teilweise" Wiederherstellung durchführen müssen.

Nachdem Sie die Quellenoption ausgewählt haben, die für Ihre Geschäftsanforderungen am besten geeignet ist, können Sie diese neue Datenbank auf einem vorhandenen Windows Azure SQL-Datenbankserver (falls vorhanden) erstellen oder einen neuen Server erstellen. Wenn Sie einen neuen Server erstellen, muss der Name, den Sie diesem neuen Server geben, in ganz Windows Azure eindeutig sein. Sie können den Alias ​​für diesen Server auswählen. Der vollständige Name dieses Servers lautet .database.windows.net.

Wenn Sie die Serveroption ausgewählt haben, die Ihren Geschäftsanforderungen am besten entspricht, werden Sie zur Eingabe einer Preisstufe aufgefordert. Wenn Sie auf die Preisebenenauswahl klicken, können Sie die aktuellen SLAs und Preise für die verschiedenen Preisebenen sehen.

Hier sind die Grundlagen der Preisberechnung. Tier-B-Datenbanken weisen die geringste Leistung auf und unterliegen den strengsten Einschränkungen hinsichtlich Größe und Funktionen, sind jedoch die kostengünstigsten. Tier-P-Datenbanken werden die schnellsten und meistbesetzten Angebote sein, deren Preis dies jedoch widerspiegelt. Tier S ist in der Mitte.

Die letzte Option, mit der Sie beim Erstellen einer neuen Datenbank konfrontiert sind, ist die Sortierung. Dies steuert, wie Daten verglichen und sortiert werden. Wenn Sie keinen guten geschäftlichen Grund haben, die Standardoption zu ändern, schlage ich vor, diese Option in Ruhe zu lassen. Wenn Sie alle Ihre Auswahl getroffen haben, klicken Sie auf Erstellen, und eine Hintergrundaufgabe wird ausgelöst, um Ihre neue Datenbank zu erstellen.

Sie erhalten eine Benachrichtigung im Windows Azure Portal, sobald Ihre Datenbank bereit ist. Um eine Verbindung zu dieser Datenbank von außerhalb von Windows Azure (z. B. Ihrer Workstation) herzustellen, sind zusätzliche Schritte erforderlich. Weitere Informationen zum Verwalten der Windows Azure SQL-Datenbank-Firewall-Einstellungen finden Sie in der StackOverflow-Dokumentation.

Erstellen Sie eine Windows Azure SQL-Datenbank mit PowerShell

Stellen Sie vor dem Start sicher, dass Sie die neueste Azure PowerShell installiert haben. Starten Sie nach der Installation eine Azure PowerShell-Sitzung von Ihrem Computer aus. Zunächst müssen Sie sich bei Windows Azure anmelden und sich authentifizieren.

Add-AzureRmAccount
 

Sie erhalten ein Dialogfeld, in dem Sie nach Ihren Azure-Anmeldeinformationen gefragt werden. Geben Sie diese ein und klicken Sie auf Anmelden. Als Nächstes müssen Sie ermitteln, zu welcher Subskription Sie diese neue SQL-Datenbank hinzufügen möchten. In PowerShell ist es einfacher, Ihr Abonnement anhand der GUID (Globally Unique Identifier) ​​anstelle des Namens zu identifizieren.

Um Ihre Abonnement-GUID zu finden, rufen Sie https://portal.azure.com auf und klicken Sie auf der Abonnement-Seite auf der Abonnement-Kachel.

Geben Sie hier die Bildbeschreibung ein

Das Zielseitenblatt wird durch das Abonnementblatt ersetzt. Hier können Sie alle Abonnements sehen, auf die Sie in Ihrem aktuellen Windows Azure Active Directory-Kontext zugreifen können. Halten Sie eine Kopie dieser GUIDs für zukünftige PowerShell-Skripts bereit. Jetzt, da Sie die GUID Ihres Abonnements haben, können Sie den Umfang Ihrer PowerShell-Sitzung auf dieses Abonnement festlegen.

Set-AzureRmContext -SubscriptionId '<your subscription's GUID>'
 

Wenn Sie nicht über eine vorhandene Ressourcengruppe verfügen, zu der diese neue SQL-Datenbank hinzugefügt werden kann, müssen Sie eine erstellen. Ihre Ressourcengruppe benötigt mindestens einen Namen und einen Standort. Standorte sind die verschiedenen Datencenter, in denen Ihre Azure-Ressourcen gehostet werden können.

Führen Sie den folgenden Befehl aus, um eine Liste der Azure-Datencenter zu erhalten, die Ihre SQL-Datenbank hosten können.

(Get-AzureRmLocation | Where-Object { $_.Providers -eq "Microsoft.Sql" }).Location
 

Beachten Sie, dass alle Standorte in Kleinschreibung sind. Um nun eine neue Ressourcengruppe zu erstellen, verwenden Sie den folgenden Befehl.

New-AzureRmResourceGroup 
     -Name '<new_resource_group>' `
     -Location '<data_center>'
 

Als Nächstes benötigen Sie einen Server zum Hosten Ihrer SQL-Datenbank. Wenn Sie noch keinen Server haben, den Sie bereits verwenden möchten, erstellen Sie jetzt einen. Server erfordern einen Ressourcengruppennamen, einen Servernamen und einen Speicherort.

New-AzureRmSqlServer `
     -Location '<data_center>' `
     -ResourceGroupName '<new_resource_group>' `
     -ServerName '<sql_server_name>'
 

Sie werden aufgefordert, einen administrativen Benutzernamen und ein Kennwort einzugeben. Dies ist das "sa" oder das Systemadministratorkonto Ihres neuen SQL Servers.

Da Sie nun eine Ressourcengruppe und einen SQL-Servernamen haben, können Sie die Datenbank selbst erstellen. Die letzten beiden Auswahlen sind Edition und Service-Ebene.

Für die Edition können Sie zwischen Standard, Keine, Premium, Standard, Standard, DataWarehouse oder Free wählen. Für die Serviceebene haben Sie viele weitere Möglichkeiten. Für Anfänger bleiben Sie bei den Preisen, die auf dem Azure-Preisrechner angezeigt werden. Weitere Informationen für fortgeschrittene Benutzer finden Sie im PowerShell-Cmdlet Get-AzureRmSqlServerServiceObjective .

Der folgende Befehl erstellt Ihre SQL-Datenbank.

New-AzureRmSqlDatabase `
     -DatabaseName '<database_name>' `
     -Edition 'basic' `
     -ResourceGroupName '<new_resource_group>' `
     -RequestedServiceObjectiveName 'basic' `
     -ServerName '<sql_server_name>'