标签: amazon-rds

如何在最小的应用程序影响下从MySQL"切换"到Amazon RDS?

亚马逊正式声明:"Amazon RDS让您可以访问熟悉的MySQL数据库的全部功能.这意味着您现在使用的代码,应用程序和工具与现有的MySQL数据库无缝地与Amazon RDS协同工作."

我不懂.Amazon RDS可通过Web服务访问,还有一个客户端库(如.Net).

因此,如果我有一个使用DAL的现有.Net应用程序,而该DAL又会查询MySQL,我如何与Amazon RDS进行相同的DAL通话(通过Web服务).或者我在这里遗漏了什么?

mysql migrate amazon-rds

13
推荐指数
1
解决办法
6623
查看次数

使用 python 连接到 AWS RDS Postgres 数据库

我在 RDS 中有一个带有数据库名称的现有 postgres 表 my-rds-table-name

我已经使用 pgAdmin4 和以下只读用户的配置连接到它:

host_name = "my-rds-table-name.123456.us-east-1.rds.amazonaws.com"
user_name = "my_user_name"
password = "abc123def345"
Run Code Online (Sandbox Code Playgroud)

我已经验证我可以查询该表。

但是,我无法使用 python 连接到它:

SQLAlchemy==1.2.16
psycopg2-binary==2.7.6.1
mysqlclient==1.4.1
Run Code Online (Sandbox Code Playgroud)

和:

import psycopg2
engine = psycopg2.connect(
    database="my-rds-table-name",
    user="my_user_name",
    password="abc123def345",
    host="my-rds-table-name.123456.us-east-1.rds.amazonaws.com",
    port='5432'
)
Run Code Online (Sandbox Code Playgroud)

它失败了

psycopg2.OperationalError: FATAL:  database "my-rds-table-name" does not exist
Run Code Online (Sandbox Code Playgroud)

同样,如果我尝试使用 sqlalchemy 连接到它:

sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL:  database "my-rds-table-name" does not exist
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

postgresql amazon-web-services amazon-rds python-3.x

13
推荐指数
1
解决办法
1万
查看次数

如何计算Amazon RDS和定价的小时/月使用情况?

我从未使用过Amazon EC2或RDS服务.我正在尝试使用http://calculator.s3.amazonaws.com/calc5.html计算我的费用

我搜索了一下,但可以找到一些基本的东西的答案.你能帮我解决这个问题:

  1. 数据库实例意味着什么?1个数据库= 1个实例或1个连接= 1个实例
  2. 如何计算小时/月用量?它应该取决于传输速率或处理时间.有没有办法可以粗略地了解它?
  3. 如果我已经准备好数据库并希望直接上传它(那将是几GB)怎么办呢?那么它将如何计算.

我是亚马逊EC2的新手,在发布此问题之前搜索了stackoverflow和serverfault.有一些想法,但没有具体到我要找的东西.有人可以帮帮我吗?

database amazon-ec2 amazon-rds

12
推荐指数
1
解决办法
1万
查看次数

使用int8范围加入2个大的postgres表不能很好地扩展

我想将IP路由表信息加入到IP whois信息中.我正在使用亚马逊的RDS,这意味着我不能使用Postgres ip4r扩展,因此我使用int8range类型来表示IP地址范围,并使用gist索引.

我的表看起来像这样:

=> \d routing_details
     Table "public.routing_details"
  Column  |   Type    | Modifiers
----------+-----------+-----------
 asn      | text      |
 netblock | text      |
 range    | int8range |
Indexes:
    "idx_routing_details_netblock" btree (netblock)
    "idx_routing_details_range" gist (range)


=> \d netblock_details
    Table "public.netblock_details"
   Column   |   Type    | Modifiers
------------+-----------+-----------
 range      | int8range |
 name       | text      |
 country    | text      |
 source     | text      |
Indexes:
    "idx_netblock_details_range" gist (range)
Run Code Online (Sandbox Code Playgroud)

完整的routing_details表包含不到600K的行,netblock_details包含大约8.25M行.两个表中都有重叠的范围,但是对于routing_details表中的每个范围,我想从netblock_details表中获得单个最佳(最小)匹配.

我提出了2个不同的查询,我认为这些查询将返回准确的数据,一个使用窗口函数,另一个使用DISTINCT ON:

EXPLAIN SELECT DISTINCT ON (r.netblock) *
FROM …
Run Code Online (Sandbox Code Playgroud)

sql postgresql amazon-web-services amazon-rds

12
推荐指数
1
解决办法
557
查看次数

RDS端点名称格式

在AWS中,RDS端点名称具有以下格式

my-db-name.aaaaaaaaaaaa.eu-west-1.rds.amazonaws.com
Run Code Online (Sandbox Code Playgroud)

标识符的第二部分是一系列看似随机的字符.这是怎么产生的?它似乎在同一帐户和区域中的所有rds实例中保持一致.是否还有其他因素会导致其发生变化.

我查看了AWS文档,但找不到任何相关信息.

amazon-web-services amazon-rds

12
推荐指数
1
解决办法
2237
查看次数

无法在AWS上连接 - RDS DB:SQL Server 2012 Express

我是AWS世界的新手.我在RDS(US-East-1a)上访问我的Microsoft SQL Server 2012 Express(11.00.5058)实例时遇到问题.

当我创建数据库实例时,我能够访问它,创建一些表,传输数据等等.一切正常!

我没有更改任何内容,并且在一些不活动后几个小时,我尝试使用Microsoft SQL Server企业管理器访问SQL Server实例,但我无法再连接到它.我得到以下消息:

无法连接到m3instance.cqbvdcpcgye3.us-east-1.rds.amazonaws.com,1433.

建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供程序:TCP提供程序,错误:0 - 等待操作超时.)(Microsoft SQL Server,错误:258)

目前,实例显示为可用,安全组为'rds-launch-wizard(sg-be4afcc6)'.

我试图通过Telnet连接到1433端口,但没有成功.

实例名称为m3instance.cqbvdcpcgye3.us-east-1.rds.amazonaws.com.

你知道附加什么吗?

非常感谢你的帮助.

更新

Telnet命令返回:

telnet m3instance.cqbvdcpcgye3.us-east-1.rds.amazonaws.com 1433

Connecting To m3instance.cqbvdcpcgye3.us-east-1.rds.amazonaws.com...
Could not open connection to the host, on port 1433: Connect failed
Run Code Online (Sandbox Code Playgroud)

数据库设置:

在此输入图像描述

安全组:

在此输入图像描述 在此输入图像描述

VPC:

在此输入图像描述

我试图通过使用我的家庭连接或咖啡店wifi连接没有成功.我现在没有检查我的IP地址是什么,但奇怪的是,当我创建数据库实例(创建SQL表,传输数据等等)时,我能够连接到SQL服务器,但几个小时后(并且没有任何变化),我无法访问它.

可能如果我在这样的安全组/入站规则中添加新规则,它将解决我的问题:(我没有尝试,因为我现在正在工作,我们有阻止SQL访问的防火墙)

在此输入图像描述

此时,数据不敏感,安全性不是大问题.

再次感谢您的帮助!

sql-server amazon-web-services amazon-rds

12
推荐指数
1
解决办法
6639
查看次数

错误:连接ETIMEDOUT rds lambda

我试图使用Lambda函数连接到RDS,但我收到一个错误:

var mysql = require('mysql');
exports.handler = function(event, context) {   
           //Connect to RDS

var connection = mysql.createConnection({
host     : 'hostname',
user     : 'username',
password : 'password',
database : 'database'

});

connection.connect( function(err)
{
   if (err)
   { 
     throw err;
   }
else 
  {
    console.log('DB connection establish');
  }
  });

 };
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

START RequestId: 9711e650-e582-11e5-af5f-97ba391a42ae Version: $LATEST

2016-03-08T23:08:06.737Z    9711e650-e582-11e5-af5f-97ba391a42ae    
Error: connect ETIMEDOUT  
  at Connection._handleConnectTimeout (/var/task/node_modules/mysql/lib/Connection.js:412:13)       
      at Socket.g (events.js:180:16)   
    at Socket.emit (events.js:92:17)   
    at Socket._onTimeout (net.js:327:8)     
    at _makeTimerTimeout (timers.js:429:11)   
    at Timer.unrefTimeout [as ontimeout] (timers.js:493:5)    
    --------------------
    at …
Run Code Online (Sandbox Code Playgroud)

amazon-rds node.js aws-lambda

12
推荐指数
2
解决办法
9460
查看次数

如何在Amazon的Aurora DB中更改character_set_server?

目前使用亚马逊的Aurora数据库,在我们的Jira中,由于字符的原因,我们看到一些带有问号(???)的名称.

在进一步调查之后,似乎我需要将character_set_serverfrom 更改latin1utf8.

在Aurora DB中,我查看了参数组和群集组设置,但我看不到character_set_server或类似的东西.

谢谢.

amazon-web-services amazon-rds amazon-aurora

12
推荐指数
1
解决办法
4130
查看次数

AWS CloudFormation - 在 RDS 实例准备好后创建表?

CloudFormation 业余爱好者在这里。一直在网上查找,但找不到任何关于在我的 RDS 实例通过 CloudFormation 建立后我将如何创建表的参考资料。是否可以指定一个 Lambda 来启动和创建所有表,或者指定一个要应用的 SQL 文件?这方面的标准模式是什么?

amazon-web-services amazon-rds aws-cloudformation aws-lambda

12
推荐指数
1
解决办法
4786
查看次数

如何正确使用 pg_restore 和 AWS RDS 来恢复 postgresql 数据库

我正在尝试将我的 Postgresql 数据库恢复到 AWS RDS。我想我快到了。我可以获得转储,并在本地重新创建数据库,但我错过了将其恢复到 AWS RDS 的最后一步。

这是我在做什么:

  1. 我得到我的转储

$ pg_dump -h my_public dns -U myusername -f dump.sql myawsdb

  1. 我在名为 test 的 shell 中创建了一个本地数据库:

create database test;

  1. 我将转储放入我的测试数据库

$ psql -U myusername -d test -f dump.sql

到目前为止,一切都很好。

I get an error: psql:dump.sql:2705: ERROR: role "rdsadmin" does not exist,但我想我可以忽略它,因为我的数据库包含所有内容。(我检查了 \list 和 \connect 测试)。

现在我想将此转储/测试恢复到我的 AWS RDS。

按照这个https://gist.github.com/syafiqfaiz/5273cd41df6f08fdedeb96e12af70e3b 我现在应该做:

pg_restore -h <host> -U <username> -c -d <database name> <filename to be restored>

但是我的文件名是什么,我的数据库名是什么?

我试过:

pg_restore -h mydns -U myusername …

django postgresql dump restore amazon-rds

12
推荐指数
1
解决办法
6817
查看次数