Mysql
 sql >> Base de données >  >> RDS >> Mysql

Impossible de trouver MySQL dans NodeJS à l'aide d'AWS Lambda

Ohk donc on s'attend à ce que cela se produise.

Le problème est qu'AWS Lambda s'exécute sur une autre machine et qu'il est impossible de configurer cette machine particulière pour qu'elle s'exécute dans un environnement personnalisé. Vous pouvez cependant empaqueter le module Node de mysql ou node-mysql dans un zip et chargez-le sur AWS Lambda. Les étapes sont,

  1. npm install mysql --save
  2. Compressez votre dossier et INCLUANT votre package de nœud
  3. Téléchargez ce fichier zip en tant que votre code dans AWS Lambda.

Vous pouvez également adopter une meilleure approche en utilisant Serverless Framework. Plus d'informations ici . Dans cette approche, vous écrivez un fichier YAML qui contient tous les détails et la configuration avec lesquels vous souhaitez déployer votre lambda. Sous votre configuration lambda, spécifiez le chemin d'accès à votre module de nœud (par exemple, nodemodule/** ) sous package -> include section. Cela emballera vos besoins avec votre code. Plus tard, en utilisant la ligne de commande, vous pourrez déployer ce lambda. Il utilise le service AWS Cloudformation et est l'un des moyens préférés de déploiement des ressources.

Vous trouverez plus d'informations sur l'empaquetage à l'aide de Serverless Framework ici .

Remarque : Pour utiliser le framework sans serveur, il y a quelques étapes comme obtenir des clés API pour votre utilisateur, définir les bonnes autorisations dans IAM, etc. Il ne s'agit que d'une configuration initiale et ne seront plus nécessaires plus tard. Effectuez-les avant le déploiement à l'aide d'un framework sans serveur.

J'espère que cela vous aidera !