标签: aws-rds

我何时应该在AWS中使用t2.medium与m3.medium实例类型?

它们在性能方面似乎大致相同.

型号vCPU Mem(GiB)SSD存储(GB)m3.medium 1 3.75 1 x 4

型号vCPU CPU积分/小时内存(GiB)存储t2.medium 2 24 4 EBS-Only

t2.medium允许突发性能,而m3.medium则不允许.t2.medium甚至比m3.medium有更多的vCPU(1对2)和内存(3.75对4).唯一的性能提升是带有m3.medium的SSD,如果我做重I/O,我认为这可能很重要.

这是我唯一可以在t2.medium上选择m3.medium吗?

我想运行一个每月20-30k点击率的网络服务器,所以我怀疑其中任何一个都可以满足我的需求,但有什么更好的选择呢?

amazon-web-services aws-rds

32
推荐指数
3
解决办法
3万
查看次数

在创建/更新实例时禁用AWS RDS备份?

我正在从快照创建新的RDS MySQL实例,并通过API和UI更新其配置.无论我如何创建或更新实例,这些操作都会自动触发通过某种自动备份过程创建的新快照.有没有办法在执行这些操作时禁用快照创建,因为我不需要额外的快照,并且它们的创建导致不必要的延迟?

database-backups amazon-web-services mysql-backup aws-rds

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

将数据从MySQL Binary Log传输到Kinesis

我们在遗留系统中有一个写入密集型表(在AWS RDS MySQL上),我们希望将该表中的每个写入事件(插入或更新)流式传输到kinesis.我们的想法是创建一个管道来预热缓存并更新搜索引擎.

目前我们使用rudimentar轮询架构,基本上使用SQL,但最理想的是使用推送架构直接从事务日志中读取事件.

有人试过吗?任何建议的架构?

mysql amazon-web-services amazon-kinesis aws-rds

11
推荐指数
1
解决办法
3023
查看次数

RDS服务触发Lambda

我是AWS的新手,我正在寻找一种从RDS服务触发Lambda的方法,特别是MYSql.有没有办法实现它?如果没有,有没有其他方法来实现相同的目标?

aws-lambda aws-rds

10
推荐指数
3
解决办法
9606
查看次数

Amazon Aurora 1.8从S3加载数据 - 无法实例化S3客户端

使用最新的Aurora更新(1.8),LOAD DATA FROM S3引入了该命令.有没有人得到这个工作?升级到1.8之后,我按照设置指南在此处创建角色以允许从RDS访问S3.

重新启动服务器并尝试运行命令后

LOAD DATA FROM S3 PREFIX 's3://<bucket_name>/prefix' INTO TABLE table_name
Run Code Online (Sandbox Code Playgroud)

在SQL Workbench/J中,我得到错误:

Warnings:
S3 API returned error: Missing Credentials: Cannot instantiate S3 Client
S3 API returned error: Failed to instantiate S3 Client
Internal error: Unable to initialize S3Stream
Run Code Online (Sandbox Code Playgroud)

是否还需要其他步骤?我可以只从SDK运行吗?我没有在文件中的任何地方看到这一点

amazon-s3 amazon-web-services amazon-rds amazon-aurora aws-rds

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

添加列时AWS RDS内存不足错误

我们在AWS RDS上使用innodb引擎获得MySQL数据库,MySQL版本为5.6.19.

尝试在表中添加列时,我们会收到以下错误消息:

ERROR 1041(HY000):内存不足; 检查mysqld或其他进程是否使用了所有可用内存; 如果没有,你可能必须使用'ulimit'来允许mysqld使用更多的内存,或者你可以添加更多的交换空间

我们运行到alter table的脚本如下:ALTER TABLE mytablenameADD COLUMN temp_colume varchar(255)NULL temp_firstcolumn;

我们的RDS在db.m3.2xlarge上,内存为30GB:我们的innodb缓冲区大小为DBInstanceClassMemory*3/4~ = 24GB

我们可以使用已经对其进行的列更改成功地重新创建表,但是在更改表时我们会收到错误.

有没有人遇到同样的问题?

php mysql innodb amazon-web-services aws-rds

6
推荐指数
2
解决办法
3147
查看次数

Robomongo无法连接:缺少预期的字段

我尝试使用Robomongo连接到AWS中的MongoDB.当我连接时,我收到此错误:

Cannot connect to the MongoDB at x.x.x.x:27017

Error:
Missing expected field "mechanism"
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个错误?我已经打开了27017端口0.0.0.0.

mongodb amazon-web-services amazon-rds aws-rds robo3t

6
推荐指数
1
解决办法
2713
查看次数

如何优化Postgresql max_connections和node-postgres连接池?

简而言之,我无法通过利用Postgresql,Node.js和node-postgres的数据API每分钟支持超过5000个读取请求.瓶颈似乎介于API和DB之间.以下是详细信息.

我正在使用AWS Postgresql RDS数据库实例(m4.4xlarge - 64 GB内存,16个vCPU,350 GB SSD,没有预配置IOPS)用于Node.js支持的数据API.默认情况下,RDS的max_connections = 5000.节点API在两个集群之间进行负载平衡,每个集群有4个进程(2个Ec2,其中4个vCPU运行API,集群模式下为PM2).我使用node-postgres将API绑定到Postgresql RDS,并尝试使用它的连接池功能.下面是我的连接池代码示例:

var pool = new Pool({
    user: settings.database.username,
    password: settings.database.password,
    host: settings.database.readServer,
    database: settings.database.database,
    max: 25, 
    idleTimeoutMillis: 1000
});

/* Example of pool usage */
pool.query('SELECT my_column FROM my_table', function(err, result){

    /* Callback code here */
});
Run Code Online (Sandbox Code Playgroud)

使用此实现并使用负载测试器进行测试,我可以在一分钟内支持大约5000个请求,平均响应时间约为190毫秒(这是我所期望的).每当我每分钟发出超过5000个请求时,我的响应时间会在最好的情况下增加到超过1200毫秒,在最糟糕的情况下,API开始经常超时.监控表明对于运行Node.js API的EC2,CPU利用率仍低于10%.因此,我的重点是数据库和API与数据库的绑定.

我试图增加(并减少)node-postgres"max"连接设置,但API响应/超时行为没有变化.我也尝试过在RDS上配置IOPS,但没有改进.另外,有趣的是,我将RDS扩展到m4.10xlarge(160 GB内存,40个vCPU),虽然RDS CPU利用率大幅下降,但API的整体性能却大幅下降(甚至无法支持每分钟5000个请求)我能用较小的RDS).

我在许多方面处于不熟悉的领域,并且不确定如何在每分钟超过5000个请求时最好地确定哪些移动部件是瓶颈API性能.如上所述,我已根据对Postgresql配置文档和node-postgres文档的审核尝试了各种调整,但无济于事.

如果有人有关于如何诊断或优化的建议我会非常感激.

UPDATE

在扩展到m4.10xlarge之后,我执行了一系列的负载测试,改变了每个池中请求/分钟数和最大连接数.以下是监控指标的一些屏幕截图:

监控指标

数据库连接

api postgresql node.js node-postgres aws-rds

6
推荐指数
1
解决办法
3830
查看次数

在Slick/HikariCP中连接关闭错误后,不允许任何操作

我正在使用Slick3.1.1 + HikariCP2.5.1.我的配置是:

rdsConfig = {
  url = "jdbc:mysql://mydb.........us-west-2.rds.amazonaws.com:3306/owlschema"  

  driver = "com.mysql.jdbc.Driver"
  connectionPool = HikariCP
  maxConnections = 222   
  minConnections = 30
  keepAliveConnection = true
  properties = {
    user = "me"
    password = "mydarksecret"
  }
  numThreads = 40    
}
Run Code Online (Sandbox Code Playgroud)

我每3秒运行一次查询,每次查询时间<0.4秒.起初一切运行正常,但大约2小时后,HikariCP开始关闭连接,导致错误"连接关闭后不允许操作":

15:20:38.288 DEBUG [] [rdsConfig-8] com.zaxxer.hikari.pool.HikariPool - rdsConfig - Timeout failure stats (total=30, active=0, idle=30, waiting=0)
15:20:38.290 DEBUG [] [rdsConfig connection closer] com.zaxxer.hikari.pool.PoolBase - rdsConfig - Closing connection com.mysql.jdbc.JDBC4Connection@229960c: (connection is evicted or dead)
15:20:38.333 DEBUG [] [rdsConfig connection closer] com.zaxxer.hikari.pool.PoolBase - …
Run Code Online (Sandbox Code Playgroud)

mysql slick hikaricp aws-rds

6
推荐指数
1
解决办法
5271
查看次数

AWS Aurora:如何通过AWS CLI还原数据库集群快照?

通过控制台非常简单,但是我需要在CLI中执行相同的操作。

首先,我创建了一个数据库快照:

aws rds create-db-cluster-snapshot \
    --db-cluster-snapshot-identifier $SNAPSHOT_ID \
    --db-cluster-identifier $CLUSTER \
Run Code Online (Sandbox Code Playgroud)

CLUSTER仅包含一个writer实例

我没有使用create-db-snapshot方法,因为它引发了错误

调用CreateDBSnapshot操作时发生客户端错误(InvalidParameterValue):指定的实例是群集的成员,并且无法直接创建快照。请改用CreateDBClusterSnapshot API。

有用:

aws rds create-db-cluster-snapshot \
  --db-cluster-snapshot-identifier $SNAPSHOT_ID \
  --db-cluster-identifier $CLUSTER \
{
    "DBClusterSnapshot": {
        "Engine": "aurora", 
        "SnapshotCreateTime": "2016-12-08T11:48:07.534Z", 
    ....
}
Run Code Online (Sandbox Code Playgroud)

因此,我想从快照中还原新的Aurora群集,然后尝试进行以下操作:

aws rds restore-db-instance-from-db-snapshot \
    --db-instance-identifier from-snap2 \
    --db-snapshot-identifier snap2 \

 A client error (DBSnapshotNotFound) occurred when calling the RestoreDBInstanceFromDBSnapshot operation: DBSnapshot not found: snap2
Run Code Online (Sandbox Code Playgroud)

所以我尝试用以下方法还原:

aws rds restore-db-cluster-from-snapshot \
    --db-cluster-identifier from-snap2 \
    --snapshot-identifier snap2 \
    --engine aurora \
    --vpc-security-group-ids $PREPROD_SG \ …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-rds

6
推荐指数
2
解决办法
3993
查看次数