AWSLambda函数无法连接到运行在EC2实例上的MySQL
创始人
2024-09-26 05:01:24
0

要让Lambda函数能够连接EC2上运行的MySQL数据库,需要通过VPC(虚拟专用网络)来连接它们。这需要在Lambda函数和EC2实例之间创建一个VPC连接,以便他们可以使用相同的网络。

下面是一个示例代码,展示如何使用Node.js创建一个具有VPC连接的Lambda函数:

var AWS = require('aws-sdk');
var mysql = require('mysql');

exports.handler = function(event, context, callback) {

    // Set AWS region
    AWS.config.update({
        region: 'us-west-2'
    });

    // Get the VPC ID, subnet ID, and security group ID for the Lambda function
    var vpcConfig = {
        "SubnetIds": [ "subnet-12345678" ],
        "SecurityGroupIds": [ "sg-12345678" ]
    };

    // Create a new VPC-enabled Lambda client
    var lambda = new AWS.Lambda({
        "vpcConfig": vpcConfig
    });

    // Create a new MySQL connection
    var connection = mysql.createConnection({
        host     : 'EC2_INSTANCE_IP_ADDRESS',
        user     : 'MYSQL_USER',
        password : 'MYSQL_PASSWORD',
        database : 'MYSQL_DB'
    });

    // Connect to the MySQL database
    connection.connect();

    // Perform MySQL query
    connection.query('SELECT 1 + 1 AS solution', function(err, rows) {
        if (err) throw err;
        console.log('The solution is: ', rows[0].solution);

        // Close MySQL connection
        connection.end();

        // Call the Lambda function
        lambda.invoke({
            FunctionName: 'MY_LAMBDA_FUNCTION_NAME',
            Payload: JSON.stringify(event, null, 2),
            InvocationType: 'Event'
        }, function(error, data) {
            if (error) {
                callback(error);
            } else {
                callback(null, 'Successfully invoked Lambda function');
            }
        });
    });
};

在上述代码中,需要将subnet-12345678sg-12345678替换为Lambda函数所在的子网和安全组ID。同时,需要将EC2_INSTANCE_IP_ADDRESSMYSQL_USERMYSQL_PASSWORDMYSQL_DB分别替换为正确的值。

通过创建一个VPC连接, Lambda函数和MySQL数据库之间可以进行连接并执行查询。

相关内容

热门资讯

开挂辅助软件"wpk... 开挂辅助软件"wpk辅助哪里买"开挂(透视)辅助安装(有挂方式);无需打开直接搜索薇:1367043...
如何分辨真伪“微扑克辅助软件免... 您好:微扑克辅助软件免费版这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
开挂辅助神器"hhp... hhpoker脚本下载 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由...
技术分享“wepoker都是玩... 无需打开直接搜索加微信客服(136704302)咨询了解wepoker都是玩私人局的吗辅助器目前(微...
开挂辅助平台"模拟器... 开挂辅助平台"模拟器打开hhpoker"开挂(透视)辅助下载(证实有挂)【无需打开直接搜索加薇136...
每日必看“wepoker有挂吗... 无需打开直接搜索;操作使用教程:每日必看“wepoker有挂吗开挂”开挂辅助下载(透视)详细教程1、...
开挂辅助平台"epo... epoker透视底牌是一款专注玩家量身打造的游戏记牌类型软件,在epoker透视底牌这款游戏中我们可...
分享实测“we-poker透明... 您好,we-poker透明挂教程这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】...
开挂辅助插件"wep... 开挂辅助插件"wepoker手机版辅助"开挂(透视)辅助神器(真实有挂)wepoker手机版辅助ai...
一分钟揭秘“wepoker有透... 您好:wepoker有透视软件挂吗这款游戏是可以开挂的,软件加【添加微信客服136704302】确实...