Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Prise en charge memcached MySQL
Amazon RDS prend en charge l'utilisation de l'interface memcached
pour les tableaux InnoDB introduits dans MySQL 5.6. L'API memcached
permet aux applications d'utiliser les tables InnoDB de la même façon que les magasins de données clé-valeur NoSQL.
L'interface memcached
est un cache simple basé sur les clés. Les applications utilisent memcached
pour insérer, manipuler et récupérer les paires de données clé-valeur du cache. MySQL 5.6 a présenté un plug-in qui implémente un service démon exposant les données des tables InnoDB via le protocole memcached
. Pour de plus amples informations sur le plug-in MySQL memcached
, veuillez consulter InnoDB Integration with memcached
Pour activer la prise en charge memcached d'une instance de base de données RDS for MySQL
-
Déterminez le groupe de sécurité à utiliser pour contrôler l'accès à l'interface
memcached
. Si l'ensemble d'applications qui utilise déjà l'interface SQL est identique à celui qui accède à l'interfacememcached
, vous pouvez utiliser le groupe de sécurité VPC existant utilisé par l'interface SQL. Si un ensemble différent d'applications accède à l'interfacememcached
, définissez un nouveau groupe de sécurité VPC ou DB. Pour plus d'informations sur la gestion des groupes de sécurité, consultez Contrôle d'accès par groupe de sécurité -
Créez un groupe d'options de base de données personnalisé, en sélectionnant MySQL comme type et version du moteur. Pour plus d'informations sur la création d'un groupe d'options, consultez Création d'un groupe d'options.
-
Ajoutez l'option
MEMCACHED
au groupe d'options. Spécifiez le port que l'interfacememcached
utilisera, et le groupe de sécurité à utiliser pour contrôler l'accès à l'interface. Pour plus d'informations sur l'ajout d'options, consultez Ajout d'une option à un groupe d'options. -
Modifiez les options pour configurer les paramètres
memcached
, le cas échéant. Pour plus d'informations sur la modification des paramètres d'options, consultez Modification d'un paramètre d'option. -
Appliquez le groupe d'options à une instance. Amazon RDS active la prise en charge de
memcached
pour cette instance lorsque le groupe d'options est appliqué :Vous activez la prise en charge
memcached
pour une nouvelle instance en spécifiant le groupe d'options personnalisé lorsque vous lancez l'instance. Pour plus d'informations sur le lancement d'une instance MySQL, consultez Création d'une instance de base de données Amazon RDS.Vous activez la prise en charge
memcached
pour une instance existante en spécifiant le groupe d'options personnalisé lorsque vous modifiez l'instance. Pour de plus amples informations sur la modification d'une instance de base de données, veuillez consulter Modification d'une instance de base de données Amazon RDS.
-
Spécifiez les colonnes de vos tables MySQL accessibles via l'interface
memcached
. Le plug-inmemcached
crée une table de catalogue appeléecontainers
dans une base de données dédiée appeléeinnodb_memcache
. Vous insérez une ligne dans la tablecontainers
pour mapper une table InnoDB et y accéder viamemcached
. Vous spécifiez une colonne dans la table InnoDB qui est utilisée pour stocker les valeurs de clémemcached
, et une ou plusieurs colonnes qui sont utilisées pour stocker les valeurs de données associées à la clé. Vous spécifiez également un nom qu'une applicationmemcached
utilise pour faire référence à cet ensemble de colonnes. Pour de plus amples informations sur l'insertion de lignes dans la tablecontainers
, veuillez consulter Internals of the InnoDB memcached Plugin. Pour obtenir un exemple de mappage d'une table InnoDB et y accéder via memcached
, veuillez consulter Writing Applications for the InnoDB memcached Plugin. -
Si les applications qui accèdent à l'interface
memcached
sont sur différents ordinateurs ou instances EC2 que les applications qui utilisent l'interface SQL, ajoutez les informations de connexion de ces ordinateurs au groupe de sécurité VPC associé à l'instance MySQL. Pour plus d'informations sur la gestion des groupes de sécurité, consultez Contrôle d'accès par groupe de sécurité.
Vous désactivez la prise en charge memcached
pour une instance en modifiant l'instance et en spécifiant le groupe d'options par défaut pour votre version MySQL. Pour de plus amples informations sur la modification d'une instance de base de données, veuillez consulter Modification d'une instance de base de données Amazon RDS.
Considérations de sécurité memcached MySQL
Le protocole memcached
ne prend pas en charge l'authentification utilisateur. Pour plus d'informations sur les considérations de sécurité relatives à MySQL memcached
, consultez Security Considerations for the InnoDB memcached Plugin
Vous pouvez prendre les mesures suivantes pour aider à augmenter la sécurité de l'interface memcached
:
Spécifiez un port différent du port par défaut 11211 lorsque vous ajoutez l'option
MEMCACHED
au groupe d'options.Veillez à associer l'interface
memcached
avec un groupe de sécurité VPC qui limite l'accès aux adresses client ou instances EC2 fiables et connues. Pour plus d'informations sur la gestion des groupes de sécurité, consultez Contrôle d'accès par groupe de sécurité.
Informations de connexion memcached MySQL
Pour accéder à l'interface memcached
, une application doit spécifier le nom DNS de l'instance Amazon RDS et le numéro de port memcached
. Par exemple, si une instance possède un nom DNS de my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com
et l'interface memcached utilise le port 11212, les informations de connexion spécifiées dans PHP seront :
<?php $cache = new Memcache; $cache->connect('my-cache-instance.cg034hpkmmjt.region.rds.amazonaws.com',11212); ?>
Pour trouver le nom DNS et le port memcached d'une instance de base de données MySQL
Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/rds/
. Dans le coin supérieur droit du AWS Management Console, sélectionnez la région qui contient l'instance de base de données.
Dans la panneau de navigation, choisissez Databases (Bases de données).
Choisissez le nom de l'instance de base de données MySQL pour afficher ses détails.
Dans la section Connexion, notez la valeur du champ Point de terminaison. Le nom DNS est le même que le point de terminaison. Veuillez également noter que le port dans la section Connexion n'est pas utilisé pour accéder à l'interface
memcached
.Dans la section Détails, notez le nom répertorié dans le champ Groupe d'options.
Dans le panneau de navigation, choisissez Groupes d'options.
Choisissez le nom du groupe d'options utilisé par l'instance de base de données MySQL pour afficher les détails du groupe d'options. Dans la section Options, notez la valeur du paramètre Port pour l'option MEMCACHED.
Paramètres d'option memcached MySQL
Amazon RDS expose les paramètres memcached
MySQL comme paramètres d'option dans l'option Amazon RDS MEMCACHED
.
Paramètres memcached MySQL
DAEMON_MEMCACHED_R_BATCH_SIZE
– Nombre entier qui spécifie combien d'opérations de lecture (get)memcached
doivent être effectuées avant d'exécuter un COMMIT pour lancer une nouvelle transaction. Les valeurs autorisées sont comprises entre 1 et 4294967295, et celle par défaut est 1. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.DAEMON_MEMCACHED_W_BATCH_SIZE
– Nombre entier qui spécifie combien d'opérations d'écriturememcached
comme add, set ou incr doivent être effectuées avant d'exécuter un COMMIT pour lancer une nouvelle transaction. Les valeurs autorisées sont comprises entre 1 et 4294967295, et celle par défaut est 1. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.INNODB_API_BK_COMMIT_INTERVAL
– Nombre entier qui spécifie la fréquence d'auto-commit des connexions inactives qui utilisent l'interfacememcached
InnoDB. Les valeurs autorisées sont comprises entre 1 et 1073741824, et celle par défaut est 5. L'option prend effet immédiatement, sans que vous ayez besoin de redémarrer l'instance.INNODB_API_DISABLE_ROWLOCK
– Valeur booléenne qui désactive (1 (vrai)) ou active (0 (faux)) l'utilisation des verrouillages de ligne lorsque vous utilisez l'interfacememcached
InnoDB. La valeur par défaut est 0 (faux). L'option ne prend pas effet tant que l'instance n'est pas redémarrée.INNODB_API_ENABLE_MDL
– Valeur booléenne qui, lorsqu'elle est configurée sur 0 (faux), verrouille la table utilisée par le plug-inmemcached
InnoDB pour ne pas qu'il puisse être abandonné ou modifié par une instruction DDL via l'interface SQL. La valeur par défaut est 0 (faux). L'option ne prend pas effet tant que l'instance n'est pas redémarrée.INNODB_API_TRX_LEVEL
– Nombre entier qui spécifie le niveau d'isolation de la transaction pour les requêtes traitées par l'interfacememcached
. Les valeurs autorisées sont comprises entre 0 et 3. La valeur par défaut est 0. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.
Amazon RDS configure ces paramètres memcached
MySQL, ils ne peuvent pas être modifiés : DAEMON_MEMCACHED_LIB_NAME
, DAEMON_MEMCACHED_LIB_PATH
et INNODB_API_ENABLE_BINLOG
. Les paramètres que les administrateurs MySQL configurent en utilisant daemon_memcached_options
sont disponibles comme paramètres d'options MEMCACHED
individuels dans Amazon RDS.
Paramètres MySQL daemon_memcached_options
BINDING_PROTOCOL
– Chaîne qui spécifie le protocole de liaison à utiliser. Les valeurs autorisées sontauto
,ascii
oubinary
. La valeur par défaut estauto
, ce qui signifie que le serveur négocie automatiquement le protocole avec le client. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.BACKLOG_QUEUE_LIMIT
– Nombre entier qui spécifie combien de connexions réseau peuvent être en attente de traitement parmemcached
. L'augmentation de cette limite peut réduire les erreurs reçues par un client qui ne peut pas se connecter à l'instancememcached
, mais n'améliore pas les performances du serveur. Les valeurs autorisées sont comprises entre 1 et 2048, et celle par défaut est 1024. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.CAS_DISABLED
– Valeur booléenne qui active (1 (vrai)) ou désactive (0 (faux)) l'utilisation de la fonction CAS (Compare and Swap), ce qui réduit la taille par élément de 8 octets. La valeur par défaut est 0 (faux). L'option ne prend pas effet tant que l'instance n'est pas redémarrée.CHUNK_SIZE
– Nombre entier qui spécifie la taille minimum du bloc, en octets, à attribuer à la clé, à la valeur et aux indicateurs de l'élément le plus petit. Les valeurs autorisées sont comprises entre 1 et 48. La valeur par défaut est 48 et vous pouvez considérablement améliorer l'efficacité de la mémoire avec une valeur inférieure. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.CHUNK_SIZE_GROWTH_FACTOR
– Nombre flottant qui contrôle la taille des nouveaux blocs. La taille d'un nouveau bloc correspond à la taille du bloc précédent multipliée parCHUNK_SIZE_GROWTH_FACTOR
. Les valeurs autorisées sont comprises entre 1 et 2, et celle par défaut est 1.25. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.ERROR_ON_MEMORY_EXHAUSTED
– Valeur booléenne qui, lorsqu'elle est configurée sur 1 (vrai), spécifie quememcached
renverra une erreur plutôt que d'expulser les éléments lorsqu'il n'y a plus de mémoire pour les stocker. S'il est configuré sur 0 (faux),memcached
expulse les éléments s'il n'y a plus de mémoire. La valeur par défaut est 0 (faux). L'option ne prend pas effet tant que l'instance n'est pas redémarrée.MAX_SIMULTANEOUS_CONNECTIONS
– Nombre entier qui spécifie le nombre maximum de connexions simultanées. La configuration de cette valeur sur n'importe quel chiffre inférieur à 10 empêche MySQL de démarrer. Les valeurs autorisées sont comprises entre 10 et 1024, et celle par défaut est 1024. L'option ne prend pas effet tant que l'instance n'est pas redémarrée.VERBOSITY
– Chaîne qui spécifie le niveau d'informations consignées dans le journal d'erreurs MySQL par le servicememcached
. La valeur par défaut est v. L'option ne prend pas effet tant que l'instance n'est pas redémarrée. Les valeurs autorisées sont :v
– Journalise les erreurs et avertissements pendant l'exécution de la boucle principale d'évènements.vv
– Outre les informations consignées par v, journalise également la commande de chaque client et la réponse.vvv
– Outre les informations consignées par vv, journalise également les transitions d'état interne.
Amazon RDS configure ces paramètres MySQL DAEMON_MEMCACHED_OPTIONS
, ils ne peuvent pas être modifiés : DAEMON_PROCESS
, LARGE_MEMORY_PAGES
, MAXIMUM_CORE_FILE_LIMIT
, MAX_ITEM_SIZE
, LOCK_DOWN_PAGE_MEMORY
, MASK
, IDFILE
, REQUESTS_PER_EVENT
, SOCKET
et USER
.