AWS RDS Mysql集群在写查询时无法自动扩展,这是因为Mysql在写操作时需要保持数据的一致性,而自动扩展会引入复杂性,可能导致数据不一致的情况发生。不过,我们可以通过以下方法来实现扩展:
import mysql.connector
# 主实例连接信息
master_config = {
'user': '',
'password': '',
'host': '',
'database': ''
}
# 只读实例连接信息
read_replica_config = [
{
'user': '',
'password': '',
'host': '',
'database': ''
},
{
'user': '',
'password': '',
'host': '',
'database': ''
}
]
# 连接主实例
master_conn = mysql.connector.connect(**master_config)
# 连接只读实例
read_replica_conns = []
for config in read_replica_config:
conn = mysql.connector.connect(**config)
read_replica_conns.append(conn)
# 写操作
def write_query(query):
cursor = master_conn.cursor()
cursor.execute(query)
master_conn.commit()
# 读操作
def read_query(query):
conn = read_replica_conns[0] # 选择一个只读实例进行查询
cursor = conn.cursor()
cursor.execute(query)
result = cursor.fetchall()
return result