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

データベースDockerコンテナにデータベースを作成するにはどうすればよいですか?

    dockerとdocker-composeの両方を使用できます。たとえば、dockercomposeを使用します。

    次のようなdocker-compose.ymlというファイルを作成します:

    version: '3'
    services:
      db:
        image: percona:5.7
        container_name: whatever_you_want
        environment:
          - MYSQL_DATABASE=${DATABASE}
          - MYSQL_ROOT_PASSWORD=${ROOT_PASSWORD}
          - MYSQL_USER=${USER}
          - MYSQL_PASSWORD=${PASSWORD}
        volumes:
          - ./data:/docker-entrypoint-initdb.d
        ports:
          - "3306:3306"
    

    さらに、./dataの下にファイルが必要です 実行するSQLコマンドと.envを使用します docker-compose.ymlで使用した環境変数を定義するファイル 上記のファイル:${DATABASE}

    .env ファイル:

    # MySQL
    DATABASE=db_name_here
    ROOT_USER=root
    ROOT_PASSWORD=root
    USER=dev
    PASSWORD=dev
    

    ./data/init.sqlを実行するSQLコマンドを含むファイル (ファイルには任意の名前を付けることができます)

    CREATE DATABASE 'whatever';
    DROP DATABASE 'whatever';
    -- you can do whatever you want here
    

    このファイルは、実行するたびに実行されます:

    docker-compose up -d db
    


    1. 時間部分を無視してDATETIMEとDATEを比較します

    2. PostgreSQL11の新しいストアドプロシージャの概要

    3. sqldeveloperの挿入ステートメントからBLOB列に挿入するにはどうすればよいですか?

    4. ZendDbSelectのJOINLEFTを使用したGROUP_CONCAT