Docker で複数の MySQL コンテナを作成して実行する方法の例

Docker で複数の MySQL コンテナを作成して実行する方法の例

1. mysql/mysql-server:latestイメージを使用してMySQLインスタンスを素早く起動する

docker run --name ilink_user_01 -e MYSQL_ROOT_PASSWORD=123456 0d 0p 3307:3306 mysql/mysql-server:latest 

  • ilink_user_01はコンテナ名で、--nameコマンドで指定されます。
  • 123456 はデータベース ルートのパスワードです。-e は環境変数 MYSQL_ROOT_PASSWORD を 123456 に指定します。-e (コンテナ内の環境変数を指定します)
  • -d -dパラメータを指定すると、コンテナはバックグラウンドに入り、ユーザーはコンテナ内の情報を見たり操作を実行したりできなくなります。
  • 3307:3306はポートマッピングであり、ローカルホストのポート3307がコンテナのポート3306にマッピングされることを指定します。

2.インスタンスを入力して、mysql構成情報を変更します。

docker exec -it ilink_user_01 bash 

  • execはコンテナ内で直接人間のコマンドを実行できる
  • -itパラメータは、コンテナ内の他のアプリケーションに影響を与えずに、テーブル入力を保存して開くために使用され、ユーザーはコンテナと簡単に対話できます。

3. MYSQLデータベース内のすべてのユーザーを表示する

SELECT DISTINCT CONCAT('ユーザー: '''、user、'''@'''、host、''';') AS query FROM mysql.user; 

4. mysqlのルートユーザーを変更して、どのIPからもログインできるようにします。

mysql.user を更新し、host='%' を設定し、user='root' にします。

権限をフラッシュします。 

5. Navicatを使用して接続をテストする

認証プラグイン「caching_sha2_password」が表示されるのは、MySQL イメージが caching_sha2_password を使用して暗号化されており、Navicat が caching_sha2_password 暗号化方式をサポートしていないためです。

6. 認証プラグイン「caching_sha2_password」を解決する

ALTER USER 'root'@'%' は '123456' によって mysql_native_password で識別されます。 

7. Navicat接続を再利用する

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Dockerコンテナの起動時にMysqlデータベースを初期化する方法
  • DockerコンテナでのMySQLデータのインポート/エクスポートの詳細な説明
  • Docker経由でMysqlコンテナ+Tomcatコンテナ接続環境を構築する詳細説明
  • DockerでMySQLコンテナを作成する方法
  • DockerでMySQLコンテナを作成し、コマンドラインからコンテナに接続する方法の詳細な説明
  • Docker コンテナを使用して MySql マスター スレーブ レプリケーションを構築する
  • Docker の Tomcat コンテナで MySQL を使用する方法
  • Docker接続Spring BootとMySQLコンテナ方式の紹介
  • DockerでMySQLコンテナを作成する簡単な手順
  • Docker の MySQL コンテナのタイムゾーン問題の修正

<<:  mysql5.6 以前のデータベースで json をクエリする方法

>>:  Mysql5.7 で中国語の文字化けの問題を解決する

推薦する

Mysqlはブール型の演算を設定します

Mysqlはブール型を設定します1. Tinyintタイプテストテーブルを作成し、blフィールドをブ...

Red Hat Enterprise Linux 8 をベースにした CentOS 8 が正式にリリースされました

CentOS プロジェクトは、Red Hat の再配布要件に完全に準拠した、Red Hat Ente...

JSでES6クラスの使い方をすぐにマスター

1. どのように構築しますか? es5 でクラスを構築する一般的な方法を確認しましょう。まず、es5...

MySQL でのインデックスの追加と削除に関連する操作

目次1. インデックスの役割2. インデックスの作成と削除(1)ALTER TABLE文を使用して、...

Ubuntu 16.04 に nvidia ドライバー + CUDA + cuDNN をインストールする詳細なチュートリアル

準備1. GPUがCUDAをサポートしているかどうかを確認するlspci | grep -i nvi...

ネイティブ js はフォームの定期的な検証を実装します (検証後にのみ送信)

以下の機能が実装されています。 1. ユーザー名: onfouc は msg ルールを表示します。o...

MySQLの3つの用途と違いは同等ではない

MySQLでは判定記号がよく使われますが、等しくない記号はもっと一般的に使われます。次の3つの等しく...

RocketMQ の Docker インストールとインストール中に発生した問題の解決策

目次rocketmqイメージを取得する名前rvを作成する単一のブローカーノードを作成するrocket...

MYSQLデータベーステーブル構造の最適化方法の詳細な説明

この記事では、例を使用して、MYSQL データベース テーブル構造を最適化する方法を説明します。ご参...

Centos7のシステム言語を簡体字中国語に変更する方法

例示するシステムを自分でインストールする場合は、通常、システム言語をカスタマイズできます。ただし、ク...

mysql 5.7.18 winx64 パスワード変更

MySQL 5.7.18 が正常にインストールされた後、バージョン 5.7 では空のパスワードでのロ...

MySQL の JSON 挿入の問題

MySQL 5.7.8 以降では、JSON テキストでデータを効率的に取得できるネイティブ JSON...

Vue で eslint 検出をオフにする方法 (複数の方法)

目次1. 問題の説明2. 問題解決1. 問題の説明Vue プロジェクトを開発する場合、作成時に誤って...

vue v-for ループ オブジェクトの属性

目次1. ループオブジェクト内の値2. ループオブジェクト3. キーと値のループ1. ループオブジェ...

大量のデータを含むエレメントのシャトルボックスで「すべて選択」をクリックするとスタックする問題の解決方法

目次解決策1: EUIの転送コンポーネントをコピーして変更し、プロジェクトディレクトリに導入する解決...