Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Unterstützung für MySQL-memcached
Amazon RDS unterstützt die Verwendung der Schnittstelle memcached
für InnoDB-Tabellen, die in MySQL 5.6 eingeführt wurde. Die API memcached
erlaubt Anwendungen, InnoDB-Tabellen zu verwenden, ähnlich wie es in NoSQL-Schlüsselwert-Datenspeichern möglich ist.
Die memcached
-Benutzeroberfläche ist ein einfacher, schlüsselbasierter Cache. Anwendungen verwenden memcached
, um im Cache Schlüsselwert-Datenpaare einzufügen, zu manipulieren oder abzurufen. Mit MySQL 5.6 wurde ein Plugin eingeführt, das einen Daemon-Service implementiert, der Daten von InnoDB-Tabellen über das memcached
-Protokoll freigibt. Weitere Informationen zum MySQL-memcached
-Plug-in finden Sie unter InnoDB-Integration mit memcached
So aktivieren Sie Memcached-Unterstützung für eine DB-Instance von RDS for MySQL
-
Bestimmen der Sicherheitsgruppe, die für den kontrollierten Zugriff auf die
memcached
-Schnittstelle verwendet werden soll. Wenn die vom Anwendungs-Set bereits verwendete SQL-Schnittstelle dieselbe ist, die auf diememcached
-Schnittstelle zugreifen wird, können Sie die bestehende VPC-Sicherheitsgruppe verwenden, die von der SQL-Schnittstelle verwendet wird. Wenn ein anderes Anwendungs-Set auf diememcached
-Schnittstelle zugreifen wird, definieren Sie eine neue VPC- oder DB-Sicherheitsgruppe. Weitere Informationen über das Verwalten von Sicherheitsgruppen finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen -
Erstellen einer benutzerdefinierten DB-Optionsgruppe, Auswählen von MySQL als Engine-Typ und Version. Weitere Informationen zum Erstellen einer Optionsgruppe finden Sie unter Erstellen einer Optionsgruppe.
-
Fügen Sie die Option
MEMCACHED
zur Optionsgruppe hinzu. Angeben des Ports, den diememcached
-Schnittstelle verwenden soll, und der Sicherheitsgruppe, die für die Kontrolle des Zugriffs auf die Schnittstelle verwendet werden soll. Weitere Informationen über das Hinzufügen von Optionen finden Sie unter Hinzufügen einer Option zu einer Optionsgruppe. -
Ändern der Optionseinstellungen, um die
memcached
-Parameter zu konfigurieren, falls notwendig. Weitere Informationen über das Ändern von Optionseinstellungen finden Sie unter Ändern einer Optionseinstellung. -
Wenden Sie die Optionsgruppe auf eine Instance an. Amazon RDS aktiviert die
memcached
-Unterstützung für diese Instance, wenn die Optionsgruppe angewendet wurde:Sie können die
memcached
-Unterstützung für eine neue Instance aktivieren, indem Sie beim Starten der Instance die benutzerdefinierte Optionsgruppe angeben. Weitere Informationen über das Starten einer MySQL-Instance finden Sie unter Erstellen einer Amazon RDS-DB-Instance.Sie können die
memcached
-Unterstützung für eine bestehende Instance aktivieren, indem Sie beim Ändern der Instance eine benutzerdefinierte Optionsgruppe angeben. Weitere Informationen über das Ändern einer DB-Instance finden Sie unter Ändern einer Amazon RDS-DB-Instance.
-
Angeben, auf welche Spalten in Ihren MySQL-Tabellen über die
memcached
-Schnittstelle zugegriffen werden darf. Das Pluginmemcached
erstellt eine Katalog-Tabelle mit dem Namencontainers
in einer dedizierten Datenbank mit dem Nameninnodb_memcache
. Sie können eine Zeile in dercontainers
-Tabelle einfügen, um eine InnoDB-Tabelle für den Zugriff durchmemcached
zu berechtigen. Sie können eine Spalte in der InnoDB-Tabelle festlegen, die verwendet werden soll, ummemcached
-Schlüsselwerte zu speichern, und eine oder mehrere Spalten, die dazu verwendet werden sollen, um die Datenwerte zu speichern, die mit dem Schlüssel zusammenhängen. Sie können einen Namen angeben, den einememcached
-Anwendung verwenden soll, um sich auf diese Spalten zu beziehen. Weitere Details zum Einfügen von Zeilen in dercontainers
-Tabelle finden Sie unter InnoDB memcached Plugin Internals. Ein Beispiel für die Zuordnung einer InnoDB-Tabelle und den Zugriff über memcached
finden Sie unter Schreiben von Anwendungen für das InnoDB-memcached Plugin. -
Wenn sich die Anwendungen, die auf die
memcached
-Schnittstelle zugreifen, auf anderen Computern oder EC2-Instances befinden als die Anwendungen, die die SQL-Anwendung verwenden, fügen Sie die Verbindungsinformationen für diese Computer zur VPC-Sicherheitsgruppe hinzu, die mit der MySQL-Instance verknüpft ist. Weitere Informationen über das Verwalten von Sicherheitsgruppen finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen.
Sie können die memcached
-Unterstützung für eine Instance deaktivieren, indem Sie die Instance ändern und die Standard-Sicherheitsgruppe für Ihre MySQL-Version angeben. Weitere Informationen über das Ändern einer DB-Instance finden Sie unter Ändern einer Amazon RDS-DB-Instance.
Sicherheitsüberlegungen zu MySQL memcached
Das memcached
-Protokoll unterstützt keine Benutzer-Authentifizierung. Weitere Informationen zu memcached
-Sicherheitsüberlegungen von MySQL finden Sie unter Sicherheitsüberlegungen für das InnoDB Memcached Plugin
Sie können folgende Aktionen durchführen, um die Sicherheit der memcached
-Schnittstelle zu erhöhen:
Geben Sie einen anderen Port als den Standard-Port 11211 an, wenn Sie die Option
MEMCACHED
Ihrer Sicherheitsgruppe hinzufügen.Stellen Sie sicher, dass Sie die
memcached
-Schnittstelle mit einer VPC-Sicherheitsgruppe verknüpfen, die den Zugriff auf bekannte und vertrauenswürdige Client-Adressen und EC2-Instances beschränkt. Weitere Informationen über das Verwalten von Sicherheitsgruppen finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen.
Verbindungsinformationen zu MySQL memcached
Um auf eine memcached
-Schnittstelle zuzugreifen, müssen in einer Anwendung der DNS-Name der Amazon RDS-Instance und die memcached
-Portnummer angegeben sein. Wenn eine Instance beispielsweise den DNS-Namen my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com
trägt und die Memcached-Schnittstelle den Port 11212 verwendet, würde die Verbindungsinformation in PHP wie folgt aussehen:
<?php $cache = new Memcache; $cache->connect('my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com',11212); ?>
So finden Sie den DNS-Namen und den Memcached-Port einer MySQL-DB-Instance
Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/
. Wählen Sie in der oberen rechten Ecke von die Region aus AWS Management Console, die die DB-Instance enthält.
Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.
Wählen Sie den Namen der MySQL DB-Instance, um deren Details anzuzeigen.
Beachten Sie im Bereich Verbinden den Wert im Feld Endpunkt. Der DNS-Name stimmt mit dem Endpunkt überein. Beachten Sie ebenfalls, dass der Port im Bereich Verbinden nicht für den Zugriff auf die
memcached
-Schnittstelle verwendet wird.Achten Sie im Bereich Details auf den aufgeführten Namen im Feld Optionsgruppe.
Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.
Wählen Sie den Namen der Optionsgruppe aus, die von der MySQL-DB-Instance verwendet wird, um die Details für die Optionsgruppe anzuzeigen. Achten Sie im Bereich Optionen auf den Wert der Einstellung Port für die Option MEMCACHED.
Optionseinstellungen in MySQL memcached
Amazon RDS gibt die MySQL-memcached
-Parameter als Optionseinstellungen in der Amazon RDS-MEMCACHED
-Option frei.
MySQL memcached-Parameter
DAEMON_MEMCACHED_R_BATCH_SIZE
– Eine Zahl, die angibt, wie vielememcached
-Leseoperationen durchgeführt (erhalten) werden müssen, bevor ein COMMIT ausgeführt wird, um eine neue Transaktion zu starten. Der erlaubte Wertebereich liegt zwischen 1 und 4294967295; der Standardwert ist 1. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.DAEMON_MEMCACHED_W_BATCH_SIZE
– Eine Zahl, die angibt, wie vielememcached
-Schreiboperationen, wie Addition, Set oder Erhöhung, durchgeführt werden müssen, bevor ein COMMIT ausgeführt wird, um eine neue Transaktion zu starten. Der erlaubte Wertebereich liegt zwischen 1 und 4294967295; der Standardwert ist 1. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.INNODB_API_BK_COMMIT_INTERVAL
– Eine Zahl, die angibt, wie oft für Verbindungen im Leerlauf, die die InnoDB-memcached
-Schnittstelle verwenden, ein Auto-Commit durchgeführt werden muss. Der erlaubte Wertebereich liegt zwischen 1 und 1073741824; der Standardwert ist 5. Die Option wird angewendet, ohne dass ein Neustart der Instance notwendig ist.INNODB_API_DISABLE_ROWLOCK
– Ein boolescher Wert, der die Verwendung von Zeilensperren aktiviert (1 (wahr)) oder deaktiviert (0 (falsch)), wenn die InnoDB-memcached
-Schnittstelle verwendet wird. Der Standardwert lautet 0 (falsch). Die Option wird nicht angewendet, bis die Instance neu gestartet wird.INNODB_API_ENABLE_MDL
– Ein boolescher Wert, der, wenn auf 0 (falsch) festgelegt, die vom InnoDB-memcached
-Plug-in verwendete Tabelle sperrt, damit diese durch DDL über die SQL-Schnittstelle nicht verworfen oder geändert werden kann. Der Standardwert lautet 0 (falsch). Die Option wird nicht angewendet, bis die Instance neu gestartet wird.INNODB_API_TRX_LEVEL
– Eine Zahl, die das Level der Transaktionsisolation für Abfragen festlegt, die von dermemcached
-Schnittstelle verarbeitet werden. Zulässige Werte liegen zwischen 0 und 3. Der Standardwert ist 0. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.
Amazon RDS konfiguriert diese MySQL-memcached
-Parameter und sie können nicht geändert werden: DAEMON_MEMCACHED_LIB_NAME
, DAEMON_MEMCACHED_LIB_PATH
und INNODB_API_ENABLE_BINLOG
. Die Parameter, die MySQL-Administratoren mithilfe von daemon_memcached_options
festlegen, sind als einzelne MEMCACHED
-Optionseinstellung in Amazon RDS verfügbar.
MySQL-daemon_memcached_options-Parameter
BINDING_PROTOCOL
– Ein String, der das zu verwendende verbindliche Protokoll angibt. Die zulässigen Werte sindauto
,ascii
oderbinary
. Der Standardwert lautetauto
. Das bedeutet, dass der Server mit dem Client das Protokoll automatisch vereinbart. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.BACKLOG_QUEUE_LIMIT
– Eine Zahl, die festlegt, wie viele Netzwerkverbindungen in der Warteschlange stehen dürfen, um von verarbeitet zu werdenmemcached
. Das Erhöhen dieser Beschränkung könnte Fehler reduzieren, die ein Client erhält, wenn er nicht mit dermemcached
-Instance verbunden ist, aber es verbessert nicht die Leistung des Servers. Der erlaubte Wertebereich liegt zwischen 1 und 2048; der Standardwert ist 1024. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.CAS_DISABLED
– Ein boolescher Wert, der die Verwendung von compare und swap (CAS) aktiviert (1 (wahr)) oder deaktiviert (0 (falsch)), welche die Pro-Element-Größe um 8 Bytes reduzieren. Der Standardwert lautet 0 (falsch). Die Option wird nicht angewendet, bis die Instance neu gestartet wird.CHUNK_SIZE
– Eine Zahl, die das Minimum der Chunk-Größe festlegt, um die kleinsten Schlüssel, Werte und Kennzeichnungen für ein Element bereitzustellen. Die zulässigen Werte liegen zwischen 1 und 48. Der Standardwert lautet 48. Mit einem niedrigeren Wert können Sie die Effizienz des Arbeitsspeichers signifikant verbessern. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.CHUNK_SIZE_GROWTH_FACTOR
– Eine Float-Zahl, die die Größe neuer Chunks steuert. Die Größe eines neuen Chunks ist die Größe des Vielfachen des vorherigen ChunksCHUNK_SIZE_GROWTH_FACTOR
. Der erlaubte Wertebereich liegt zwischen 1 und 2; der Standardwert ist 1,25. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.ERROR_ON_MEMORY_EXHAUSTED
– Ein boolescher Wert, der, wenn auf 1 (wahr) festgelegt, angibt, dassmemcached
eine Fehlermeldung zurückgibt, anstatt Elemente zu entfernen, wenn kein freier Arbeitsspeicher mehr für die Elemente verfügbar ist. Wenn auf 0 (falsch) festgelegt, wirdmemcached
Elemente exmittieren, falls kein freier Arbeitsspeicher mehr verfügbar ist. Der Standardwert lautet 0 (falsch). Die Option wird nicht angewendet, bis die Instance neu gestartet wird.MAX_SIMULTANEOUS_CONNECTIONS
– Eine Zahl, die die maximale Anzahl an gleichzeitigen Verbindungen angibt. Wenn dieser Wert unter dem von 10 festgelegt wird, kann MySQL nicht gestartet werden. Der erlaubte Wertebereich liegt zwischen 10 und 1024; der Standardwert ist 1024. Die Option wird nicht angewendet, bis die Instance neu gestartet wird.VERBOSITY
– Eine Zeichenfolge, die das Informationslevel des vommemcached
-Service erstellten MySQL-Fehlerprotokolls angibt. Der Standardwert ist v. Die Option wird erst wirksam, wenn die Instance neu gestartet wird. Die zulässigen Werte lauten:v
– Protokolliert Fehler und Warnungen während der Ausführung der Hauptereignisschleife.vv
– Protokolliert zusätzlich zu den von v protokollierten Informationen auch jeden Client-Befehl und die Antwort.vvv
– Protokolliert zusätzlich zu den von vv protokollierten Informationen auch interne Zustandsübergänge.
Amazon RDS konfiguriert diese MySQL-DAEMON_MEMCACHED_OPTIONS
-Parameter und sie können nicht geändert werden: DAEMON_PROCESS
, LARGE_MEMORY_PAGES
, MAXIMUM_CORE_FILE_LIMIT
, MAX_ITEM_SIZE
, LOCK_DOWN_PAGE_MEMORY
, MASK
, IDFILE
, REQUESTS_PER_EVENT
, SOCKET
und USER
.