2009-12-11 12 views
13

Amazon dice oficialmente: "Amazon RDS le da acceso a todas las capacidades de una base de datos MySQL familiar. Esto significa que el código, las aplicaciones y las herramientas que usted usa hoy con sus bases de datos MySQL existentes funcionan perfectamente con Amazon RDS".¿Cómo 'cambiar' de MySQL a Amazon RDS con un impacto mínimo en la aplicación?

No entiendo esto. Se puede acceder a Amazon RDS a través de servicios web y hay bibliotecas de clientes (como la de .Net).

Así que si tengo una aplicación .Net existente que utiliza un DAL que a su vez consulta MySQL, ¿cómo puedo hacer la misma conversación DAL con Amazon RDS (a través de los servicios web). ¿O me estoy perdiendo algo aquí?

+0

Eliminé mi respuesta ya que parecía ser el documento equivocado. – Peter

Respuesta

12

Amazon RDS es puro MySQL, accesible por su aplicación de la misma manera que cualquier otra base de datos MySQL; la interfaz de servicios web para RDS es puramente para la creación, eliminación y modificación de las instancias DB , no los datos de base de datos. Desde su FAQ:

Q: ¿Cómo accedo a mi carrera DB Instancia?

Una vez que su instancia de base está disponible, Puede recuperar su punto final a través de la API DescribeDBInstance . Usando este punto final puede construir la cadena de conexión requerida para conectarse directamente con su instancia de base de datos usando su herramienta de base de datos favorita o el lenguaje de programación. Para permitir que las solicitudes de red ejecuten su instancia de base de datos, deberá autorizar el acceso. Para obtener una explicación detallada de de cómo construir su cadena de conexión y comenzar, consulte nuestra Guía de introducción.

This es la parte de la Guía de introducción que necesita - que explica cómo obtener el nombre de host de la nueva instancia para que pueda conectarse a él, autorizar la instancia para acceder desde el cliente, y luego conectarse a través de el cliente de línea de comandos de MySQL (como un ejemplo):

$ rds-describe-db-instances --headers 
$ rds-authorize-db-security-group-ingress default --cidr-ip 192.0.2.0/30 --headers 
$ mysql -h myinstance.crwjauxgijdf.us-east-1.rds.amazonaws.com -P 3306 -u mymasteruser -p 
1

Amazon RDS es simplemente un servidor normal con acceso normal a MySQL. Solo existe el servicio web que maneja la creación de instancias, etc., pero todo lo relacionado con mysql sigue siendo el mismo.

+2

Tenga en cuenta también que existen ciertas limitaciones, la más importante: no puede crear un esclavo de lectura que no sea otra instancia de rds porque no se le otorga un privilegio especial. Además, todos los relojes en DB están configurados en UTC, por lo que ahora() puede crear un comportamiento extraño si lo ha usado en la codificación de la aplicación. – Ross

+0

Otra limitación parece no ser una alternativa a init_file en RDS. https://forums.aws.amazon.com/thread.jspa?messageID=401224 –

Cuestiones relacionadas