Mysql 如何在aws linux机器中配置节点js datasource.json
您好,我已经用nodejs和loopback创建了一个示例应用程序。什么时候 我试着用“db”记忆它的工作。当我添加lb数据源时 抛出mysql错误。请帮我解决这个问题 datasource.json 堆栈跟踪:Mysql 如何在aws linux机器中配置节点js datasource.json,mysql,node.js,xampp,loopbackjs,loopback,Mysql,Node.js,Xampp,Loopbackjs,Loopback,您好,我已经用nodejs和loopback创建了一个示例应用程序。什么时候 我试着用“db”记忆它的工作。当我添加lb数据源时 抛出mysql错误。请帮我解决这个问题 datasource.json 堆栈跟踪: 请确保您在IAM角色中设置了正确的权限 您是否使用EC2实例托管MySQL数据库?如果没有其他信息,很难回答。根据主机链接,您的MySQL数据库位于EC2上。您在哪里部署了环回应用程序?它在另一个EC2实例上吗?可能您没有从该实例启用internet访问,或者MySQL实例上的端口33
请确保您在IAM角色中设置了正确的权限 您是否使用EC2实例托管MySQL数据库?如果没有其他信息,很难回答。根据主机链接,您的MySQL数据库位于EC2上。您在哪里部署了环回应用程序?它在另一个EC2实例上吗?可能您没有从该实例启用internet访问,或者MySQL实例上的端口3307已关闭。你能提供更多关于你的设置的信息吗?@IvanSchwarz我已经在ec2实例上安装了xampp,它内置了mysql。当我启动xampp时,它将在端口3306上启动mysql。在我的本地pc上,我安装了相同的配置数据库和我的数据源。您的数据源配置指向端口3307,但如果mysql在该端口上运行,它应该是3306。第二件事是,如果您要从本地计算机将3306端口作为目标,则必须在EC2实例上打开该端口。还要确保MySql服务器接受远程连接。@A.Z.是的,当它不工作时。我只手动将端口从3306默认端口更改为3307端口。我允许aws实例上的所有流量。我能够通过phpmyadmin通过EC2链接连接到mysql。只有它的代码无法通过datasource.json代码进行连接。我还对mysql配置进行了更改,以允许远程连接
{
"db": {
"name": "db",
"connector": "memory"
},
"mysql": {
"host": "ec2-52-35-183-50.us-west-2.compute.amazonaws.com",
"port": "3307",
"url": "",
"database": "medola",
"password":"xxyyxx@123",
"name": "mysql",
"user": "root",
"connector": "mysql"
}
}
Connection fails: Error: connect ECONNREFUSED 172.31.24.147:3307 It will be retried for the next request. events.js:160
throw er; // Unhandled 'error' event
^
Error: connect ECONNREFUSED 172.31.24.147:3307
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1090:14)
--------------------
at Protocol._enqueue (/home/ec2-user/medola/node_modules/mysql/lib/protocol/Protocol.js:141:48)
at Protocol.handshake (/home/ec2-user/medola/node_modules/mysql/lib/protocol/Protocol.js:52:41)
at PoolConnection.connect (/home/ec2-user/medola/node_modules/mysql/lib/Connection.js:130:18)
at Pool.getConnection (/home/ec2-user/medola/node_modules/mysql/lib/Pool.js:48:16)
at MySQL.connect (/home/ec2-user/medola/node_modules/loopback-connector-mysql/lib/mysql.js:89:17)
at Object.initializeDataSource [as initialize] (/home/ec2-user/medola/node_modules/loopback-connector-mysql/lib/mysql.js:43:28)
at DataSource.setup (/home/ec2-user/medola/node_modules/loopback-datasource-juggler/lib/datasource.js:352:19)
at new DataSource (/home/ec2-user/medola/node_modules/loopback-datasource-juggler/lib/datasource.js:121:8)
at Registry.createDataSource (/home/ec2-user/medola/node_modules/loopback/lib/registry.js:355:12)
at dataSourcesFromConfig (/home/ec2-user/medola/node_modules/loopback/lib/application.js:440:19)
at EventEmitter.app.dataSource (/home/ec2-user/medola/node_modules/loopback/lib/application.js:235:14)
at /home/ec2-user/medola/node_modules/loopback-boot/lib/executor.js:190:9
at /home/ec2-user/medola/node_modules/loopback-boot/lib/executor.js:281:5
at Array.forEach (native)
at forEachKeyedObject (/home/ec2-user/medola/node_modules/loopback-boot/lib/executor.js:280:20)
at setupDataSources (/home/ec2-user/medola/node_modules/loopback-boot/lib/executor.js:180:3)