Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So installieren Sie MySQL 5.7 auf Amazon ec2

Dies ist ein relativ schnelle Einrichtung von MySQL 5.7.14 auf Red Hat Enterprise Linux Version 7 (RHEL7).

Ich bin nicht mit AWS verbunden; Ich genieße es einfach, ihre Dienste zu nutzen.

Stellen Sie sicher, dass Sie über ein AWS EC2-Konto verfügen. Beachten Sie, dass, obwohl Amazon eine hinterlegte Kreditkarte verlangt, im ersten Jahr keine Gebühren anfallen, wenn Sie sich an deren Free-Tier Bedingungen. In der Regel bedeutet dies einen Server mit einer einzigen Mikroinstanz (1 GB RAM), der rund um die Uhr läuft.

Start der EC2 RHEL-Instanz

Schritt 1: Klicken Sie in AWS EC2 auf „Launch Instance“ und wählen Sie „Red Hat Enterprise Linux 7.2 (HVM), SSD Volume Type – ami-775e4f16“ aus, wie im Bild unten zu sehen. Beachten Sie, dass die Versionen der verfügbaren oder beworbenen AMIs (Amazon Machine Instance) im Laufe der Zeit rotieren und dies zum Zeitpunkt dieses Schreibens gilt. Die AMI-Nummer steht aber oben im Text.

Normalerweise habe ich Amazon Linux AMI als Distribution meiner Wahl gewählt. Ich mache das nicht mehr, da es ihr eigenes Sammelsurium ist und es natürlich Unsicherheit darüber gibt, welchen Paketmanager und damit die Dateien zu wählen sind. Also bleibe ich jetzt bei RHEL.

Wählen Sie auf dem Bildschirm „Choose an Instance Type“ (Choose an Instance Type) einen berechtigten Instance-Typ für das kostenlose Kontingent aus, wie unten dargestellt:

Weiter klicken. Klicken Sie auf dem nächsten Detailbildschirm auf „Weiter“, um die Standardeinstellungen zu akzeptieren. Ändern Sie auf dem Speicherbildschirm die Größe auf 16 GB und klicken Sie auf „Weiter“. Dann wieder "Weiter" auf Tag-Info. Als nächstes kommt der unten abgebildete Bildschirm "Sicherheitsgruppe konfigurieren":

Akzeptieren Sie vorerst das Optionsfeld "🔘 eine neue Sicherheitsgruppe erstellen". Beachten Sie, dass SSH-Port 22 für alle offen ist (Überall) IP-Adressen mit dem 0.0.0.0/0 CIDR . Andere Optionen umfassen die Erkennung von „Meine IP“ (wie in Ihrer) oder „Benutzerdefiniert“. Seien Sie versichert, dass der Zugriff auf den nächsten Bildschirm basierend auf den von uns eingerichteten Sicherheitsschlüsseln gesperrt wird. Unter den geöffneten Ports befindet sich eine Schaltfläche zum Hinzufügen von Regeln, um Ports wie MySQL 3306 oder HTTP 80 hinzuzufügen. Aber das werden wir jetzt überspringen. Notieren Sie sich den Namen der Sicherheitsgruppe. Füllen Sie eines aus oder akzeptieren Sie vorerst die Standardeinstellung. Es ist nicht entscheidend, dies richtig zu machen, da die Sicherheitsgruppe später für eine laufende Instanz geändert werden kann . Klicken Sie auf Überprüfen und starten.

Klicken Sie dann auf "Starten" (keine Angst, es wird noch nicht gestartet). Wie der nächste Bildschirm zeigt:

Beachten Sie, dass, da ich bereits einige Schlüsselpaare generiert habe, im ersten Dropdown-Menü standardmäßig „Choose an existing keypair“ (Vorhandenes Schlüsselpaar auswählen) angezeigt wird. Andernfalls „Erstellen Sie ein neues Schlüsselpaar“ mit einem bestimmten Erinnerungsnamen und fahren Sie mit „Schlüsselpaar herunterladen“ fort. An dieser Stelle haben Sie das Schlüsselpaar als .pem Datei. Behandeln Sie diese mit äußerster Sicherheit und bewahren Sie sie an einem Ort auf, an dem Sie sie nicht verlieren. Am besten in einem passwortgeschützten Bereich, wie z. B. unter dem Benutzerverzeichnis Ihres Betriebssystems.

Wenn Sie schließlich auf demselben Bildschirm auf „Launch Instances“ klicken, erfolgt der Start in Bezug auf dieses Schlüsselpaar (entweder gerade erstellt oder ein bereits vorhandenes). Beachten Sie, dass die Generierung eines Schlüsselpaars eine Aufgabe sein kann, die Sie nur einmal im Jahr durchführen. Wie Sie ein Schlüsselpaar immer wieder verwenden, liegt ganz bei Ihnen.

Nachdem Sie die Instanz gestartet haben, haben Sie ungefähr fünf Minuten Zeit, bevor sie live geschaltet wird. Unter dem linken Menüelement Instanzen wissen Sie, dass die Instanz live ist, wenn der Instanzstatus „running“ und die Statusprüfungen „2/2 bestanden“ lautet:

Merken Sie sich die .pem Datei, die Sie heruntergeladen haben? Nun, nur einmal müssen Sie eine .ppk erstellen Datei daraus für PuTTY, ein SSH-Client-Programm, das kryptogesichert mit Ihrer laufenden Instanz kommuniziert. Dafür verwenden wir das puttygen Tool, das mit PuTTY harmoniert. Also führen wir puttygen aus, laden die .pem Minuten zuvor heruntergeladen und die .ppk generiert Datei mit einer "Schlüssel-Passphrase" wie "I &love%ancHovies2_fjdi8Ha". Unten ist ein Bild von Puttygen:

Und die AWS EC2-Seite mit dem Titel Connecting to Your Linux Instance from Windows Using PuTTY . Die Schritte sind Datei / Privaten Schlüssel laden. Ändern Sie den Filter in Alle Dateien (. ). Suchen Sie die .pem Datei. Klicken Sie auf „Öffnen“ und dann auf „Ok“. Geben Sie eine Passphrase ein. Klicken Sie auf "Privaten Schlüssel speichern" und speichern Sie ihn im selben Ordner wie eine .ppk neben Ihrer .pem-Datei Datei. Wie bereits erwähnt, können Sie dies nur einmal im Jahr tun.

Führen Sie nun PuTTY, den SSH-Client, aus. Verwenden Sie den Sitzungs-/Hostnamen als etwas wie

[email protected]

Es ist also im Grunde [email protected] verkettet mit dem öffentlichen DNS-Namen, der unter Instances im EC2 Control Panel angezeigt wird. Wie bei der Angabe von PuTTY .ppk Datei würde es wie folgt aussehen, mit dem .ppk neben der Schaltfläche „Durchsuchen“ ausgewählte Datei:

Gehen Sie zurück zur unten links angezeigten Sitzungshierarchie, geben Sie dieser einen Profilnamen unter „Gespeicherte Sitzungen“ und klicken Sie auf „Speichern“. Wenn Sie im Folgenden PuTTY laden, laden Sie die Sitzung lediglich nach Namen:

Vergessen Sie nicht, dass Sie hier fast nur die .ppk speichern Verweis auf ein Profil mit freundlichem Namen. Und Sie müssen gelegentlich den Hostnamen ändern (sicherlich, wenn Sie ein Instanz-Image auf EC2 speichern und bei einem späteren Start mit einer neuen Instanz-IP-Adresse zurückkehren).

Okay, es ist nicht einfach. Aber es ist, was es ist.

Wenn Sie auf Öffnen klicken, wird versucht, eine Verbindung zu Ihrer RHEL-Instanz herzustellen. Klicken Sie bei der Signaturwarnung auf Ja. Geben Sie die zuvor gespeicherte .ppk ein Key Passphrase, und Sie sollten an einer Linux-Eingabeaufforderung sitzen.

MySQL-Installation (ich werde diese Notizen auf GitHub stellen)

URL01:Laden Sie das MySQL Yum-Repository herunter

URL02:Kapitel 1 Installation MySQL unter Linux mit dem MySQL Yum-Repository

Sie haben jetzt MySQL 5.7.14 geladen und auf EC2 mit einer Datenbank und Benutzereinrichtung ausgeführt. Ihre Server müssen abgebildet werden. Siehe diese Antwort hier von mir zum Erstellen von Bildern (AMI's). Sichern Sie Ihre Daten. Siehe die EC2-Dokumentation wie Best Practices für Amazon EC2 .

Zurück zur Sicherheit:Best Practices empfehlen sicherlich, Ihre Datenbank nicht für direkte Verbindungen über Sicherheitsgruppen für Port 3306 zu öffnen. Wie Sie sich daran halten, ist Ihre Wahl, z. B. mit PHP, Java oder einer anderen Programmier-API. Beachten Sie, dass sich verschiedene db-Client-Programme über SSH-Tunnel wie MySQL Workbench verbinden können. Darüber hinaus existieren verschiedene Entwicklungsbibliotheken mit SSH-Tunneln, aber sie sind nicht besonders einfach zu entwickeln (hauptsächlich aufgrund schwieriger Schlüsselketten und des Mangels an umfangreichen Entwicklererfahrungen). Zum Beispiel gibt es einen für C# hier .

Darüber hinaus bietet AWS RDS und andere Datenbankangebote für weniger praktische und rollende eigene wie oben. Der Grund, warum viele Entwickler auf EC2 abzielen, ist die Tatsache, dass Sie einen vollwertigen Server für Ihre anderen Programmierinitiativen haben.

Wenn Sie die Sicherheitsgruppen wie zuvor erwähnt ändern, ziehen Sie bitte die Verwendung von IP-Bereichen basierend auf CIDR-Einträgen in Betracht und seien Sie vorsichtig, bevor Sie Ihre Datenspeicher übermäßig offenlegen. Oder über das Gewähren. Im Wesentlichen die gleichen Best Practices wie für die Arbeit vor Ort.

In Bezug auf diesen MySQL-Abschnitt befinden sich meine GitHub-Notizen für die obigen paar Bilder hier .