MySQL and MariaDB docker containers of MySQL v5.5, v5.6, v5.7, v8.0, mariadb v10.0, v10.1, v10.2, v10.3
In order to make it easy to test whether applications can be started with different versions, such as upgrading mysql, we made it possible to start multiple mysql servers easily.
mysqlのアップグレードなど、異なるバージョンでアプリケーションを起動できるかどうかをテストしやすくするために、複数のmysqlサーバーを docker-compose
で簡単に起動できるようにしました。
https://www.docker.com/products/docker-desktop
No need to install mysql client
.
When connect-xxx.sh execute, the mysql client installed in the docker container is executed locally
.
MySQLクライアントのインストールは不要です。
connect-xxx.shを実行すると、ローカルからMySQLコンテナ内のmysqlクライアントをリモート実行します。
git clone [email protected]:treetips/docker-compose-all-mysql.git
$ docker-compose up -d
Connect remote mysql servers.
$ ./connect-mysql-5-5.sh
$ ./connect-mysql-5-6.sh
$ ./connect-mysql-5-6.sh
$ ./connect-mysql-8-0.sh
$ ./connect-mariadb-10-0.sh
$ ./connect-mariadb-10-1.sh
$ ./connect-mariadb-10-2.sh
$ ./connect-mariadb-10-3.sh
Wait for MySQL started before connecting.
MySQLの起動完了を待ってから接続します。。
vi ./my.cnf
All the same connection setting except port.
ポート以外の設定を共通で設定します。
$ vi ./mysql5.5/conf.d/my.cnf
$ vi ./mysql5.6/conf.d/my.cnf
$ vi ./mysql5.7/conf.d/my.cnf
$ vi ./mysql8.0/conf.d/my.cnf
$ vi ./mariadb10.0/conf.d/my.cnf
$ vi ./mariadb10.1/conf.d/my.cnf
$ vi ./mariadb10.2/conf.d/my.cnf
$ vi ./mariadb10.3/conf.d/my.cnf
If you change database-schema or user or password or root-password, Edit .env
.
DBスキーマ・ユーザ名・パスワード・rootパスワードを変更したい場合は、 .env
を編集して下さい。
DB_DATABASE=work
DB_USER=worker
DB_PASSWORD=worker
DB_ROOT_PASSWORD=root
If you want to delete general.log
and error.log
and slow-query.log
, execute clear_logs.sh
.
general.log
・ error.log
を削除したい場合は clear_logs.sh
を実行して下さい。
https://hub.docker.com/_/mysql/#initializing-a-fresh-instance
./common/initdb.d/common-init.(sh|sql)
(executed commonly for all containers)./(mysql|mariadb)X.X/initdb.d/xxx.(sh|sql)
(executed for each container)Initial data can be input at startup by customizing these.
これらをカスタマイズすることにより、起動時に初期データを投入できます。