sql >> データベース >  >> RDS >> Mysql

CloudFormation:DB、テーブル、ユーザーを作成するためのテンプレートRDS Mysql、またはスキーマのロード

    簡単に言うと、現時点では、インスタンスの作成時にSQLクエリを自動的に実行することはできません(将来的には誰が知っていますか...)。

    この古典的な問題を解決するには、次の方法を使用します。

    • EC2を使用して必要なMySQLコードを実行します(EC2に「DependsOn」句を配置する必要があるかどうかはわかりません。GetAttでRDSエンドポイントを参照する必要があるため、暗黙的に配置される可能性がありますDependsOn句)。なんらかの方法でRDSエンドポイントを渡す限り、これをユーザーデータまたは任意のスクリプトに配置します。もちろん、EC2にMySQLクライアントパッケージをインストールする必要があります。

    あなたが書いたように、CloudFormationではAWSリソースを作成できますが、それらのリソースを設定するのはあなた次第です。繰り返しになりますが、MySQLクライアントがそのトリックを実行します(MySQLダンプはファイル内のSQLコードにすぎないため、最初の要件と同じです)。

    ChefまたはPuppetを使用しても、問題を単独で解決することはできません。どちらもEC2にエージェントをインストールする必要があるため、RDSサーバーでエージェントを実行することはできません。したがって、ChefまたはPuppetエージェントを使用してEC2を作成すると、MySQLスクリプトが起動しますが、これにより、以前のソリューションよりもはるかに多くのことが得られるわけではありません。




    1. MySQLで列挙値を返すための最良の方法は何ですか?

    2. PHP ::PDOを使用して変数でmysqlスクリプトを実行する方法は?

    3. MYSQLselect結合複数テーブルとSUM

    4. MySQLdは、5.6から5.7へのbrewアップグレード後に起動しません