使用boto修改AWS RDS中的数据库参数组

1 投票
1 回答
2461 浏览
提问于 2025-04-17 10:19

我在用boto修改AWS RDS的数据库参数组时,遇到了下面的错误:

from boto import rds
conn = rds.connect_to_region('eu-west-1', aws_access_key_id=AWS_ACCESS_KEY_ID,     aws_secret_access_key=AWS_SECRET_ACCESS_KEY)
pg = conn.get_all_dbparameters('mygroup')
pg.add_param('slow_query_log', True, 'immediate')


TypeError
"unknown type (<type 'str'>)"
 File: /usr/local/lib/python2.6/dist-packages/boto/rds/parametergroup.py, Line: 175

如果有人能帮忙就太好了

1 个回答

5

你可以试试这样做:

pg = conn.get_all_dbparameters('mygroup')
pg2 = conn.get_all_dbparameters('mygroup', marker = pg.Marker)
pg2['slow_query_log'].value = True
pg2['slow_query_log'].apply(True)

conn.get_all_dbparameters() 这个方法一次最多只能返回100行数据。不过其实有大约180个数据库参数是可以修改的。所以你需要分两步来查询。第一次调用这个方法会返回一个标记(Marker),你可以用这个标记来进行第二次查询。在第二次查询中,你就能获取到你的慢查询日志了。

http://boto.cloudhackers.com/en/latest/ref/rds.html#boto.rds.RDSConnection.get_all_dbparameter_groups

撰写回答