sql >> Database >  >> RDS >> Mysql

CloudFormation:sjabloon RDS Mysql om DB, tabellen, gebruikers of laadschema's te maken

Het korte antwoord is:u kunt op dit moment niet automatisch SQL-query's uitvoeren bij het maken van een instantie (in de toekomst, wie weet...).

Ik zou de volgende manier gebruiken om dit klassieke probleem op te lossen:

  • Gebruik een EC2 om de MySQL-code uit te voeren die u nodig hebt (niet zeker of u een "DependsOn"-clausule in de EC2 moet plaatsen, aangezien u naar het RDS-eindpunt moet verwijzen met een GetAtt, wat waarschijnlijk een impliciete DependsOn-clausule). Je plaatst dit in de gebruikersgegevens of een willekeurig script dat je wilt, zolang je het RDS-eindpunt op de een of andere manier passeert. Natuurlijk hebt u het MySQL-clientpakket nodig dat op uw EC2 is geïnstalleerd.

Zoals je schreef, kun je met CloudFormation AWS-bronnen maken, maar het vullen van die bronnen is aan jou. Nogmaals, een MySQL-client zal het lukken (aangezien een MySQL-dump niet meer is dan SQL-code in een bestand, hetzelfde als uw oorspronkelijke vereiste).

Het gebruik van Chef of Puppet lost uw probleem niet alleen op, aangezien beide een agent op een EC2 nodig hebben, u kunt uw agent niet op de RDS-server draaien. Je kunt dus een EC2 hebben met een Chef- of Puppet-agent, die op zijn beurt het MySQL-script start, maar dit zal je niet veel meer opleveren dan de vorige oplossing




  1. Meerdere relaties met hetzelfde model CakePHP

  2. MySQL op Docker - Hoe u uw database kunt containeriseren:nieuwe whitepaper

  3. mysql invoegen na verwijderen mislukt vanwege dubbele invoer

  4. Update MySQL-tabel en negeer dubbele vermeldingen