Mysql
 sql >> Database >  >> RDS >> Mysql

Impossibile trovare MySQL in NodeJS utilizzando AWS Lambda

Ohk, quindi dovrebbe succedere.

Il problema è che AWS Lambda viene eseguito su una macchina diversa e non è possibile configurare quella particolare macchina per l'esecuzione in un ambiente personalizzato. Puoi comunque impacchettare il modulo Node di mysql o node-mysql in uno zip e caricalo su AWS Lambda. I passaggi sono,

  1. npm install mysql --save
  2. Comprimi la cartella e COMPRESO il tuo pacchetto di nodi
  3. Carica questo file zip come codice in AWS Lambda.

Puoi anche adottare un approccio migliore utilizzando Serverless Framework. Maggiori informazioni qui . In questo approccio, scrivi un file YAML che contiene tutti i dettagli e la configurazione con cui desideri distribuire la tua lambda. Nella tua configurazione lambda, specifica il percorso del modulo del tuo nodo (ad esempio, nodemodule/** ) in package -> include sezione. Questo impacchetterà il tuo richiesto insieme al tuo codice. Successivamente, utilizzando la riga di comando, puoi distribuire questo lambda. Utilizza il servizio AWS Cloudformation ed è uno dei modi preferiti per distribuire le risorse.

Ulteriori informazioni sulla creazione di pacchetti utilizzando Serverless Framework sono disponibili qui .

Nota: Per utilizzare il framework serverless ci sono un paio di passaggi come ottenere le chiavi API per il tuo utente, impostare le autorizzazioni corrette in IAM ecc. Queste sono solo impostazioni iniziali e non saranno necessarie in seguito. Esegui quelli prima della distribuzione utilizzando il framework serverless.

Spero che questo aiuti!