DockerにMySQL 8.0をインストールする方法

DockerにMySQL 8.0をインストールする方法
環境: MacOS_Cetalina_10.15.1、Mysql8.0.18、Docker_2.0.0.3

1. Dockerリポジトリでmysqlを検索する

docker 検索 mysql 

2. Dockerリポジトリからmysql8.0をプルする

docker プル mysql:8.0
述べる:
docker pull mysql // デフォルトで最新バージョンをプルします

3. ローカルウェアハウスイメージが正常にダウンロードされたかどうかを確認します

docker イメージ mysql:8.0 

4. mysql8.0コンテナをインストールして実行する

docker run -p 3307:3306 --name mysql8.0 -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0
述べる:
-p はローカルホストポートを Docker コンテナポートにマッピングします (ローカルポート 3306 は既に他のバージョンで使用されているため、3307 を使用します)
--name コンテナ名 -e 構成情報、ルートパスワードの設定 -d イメージ名

5. mysql8.0コンテナの実行状態を確認する

ドッカーps 

6. DockerがMySQLにログインする

docker exec -it mysql8.0 bash
mysql -uroot -p 

7. クライアント接続ツール(Navicat)を使用してMySQLにリモートログインする

ログインできないことがわかりました。エラーメッセージは次の通りです: Navicat は caching_sha_password 暗号化方式をサポートしていません。理由: MySQL 8.0 は新しいパスワード暗号化方式 caching_sha_password を使用します。
解決策: 古い暗号化方式 (mysql_native_password) に変更し、パスワードをリセットします。
* ユーザーからホスト、ユーザー、プラグインを選択します。
* mysql_native_password で識別されるユーザー 'root'@'%' を 'root' によって変更します。

8. クライアント接続ツール(navicat)を使用して、MySQLに再度リモートログインします。

9. 追記(よく使われるdockerコマンド)

docker search image name //イメージを検索docker pull image name: version number //対応するバージョンのイメージをプルdocker pull image name //デフォルトで最新のイメージをプルdocker images //ローカルにダウンロードしたイメージを表示docker ps //実行中のコンテナを表示docker ps -a //すべてのコンテナを表示(実行、停止、終了状態のコンテナを含む)
docker container ls //実行中のコンテナを表示docker rm container ID //実行されていないコンテナのみ削除docker rm -f container ID //実行中のコンテナを削除できるdocker run -p local host port number: container service port number--name container name[-e configuration information modification] -d image nameddocker start container ID //コンテナを起動docker stop container ID //コンテナを終了docker rmi image name orID //イメージを削除

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

以下もご興味があるかもしれません:
  • Docker で MySQL サービスをデプロイする方法と、遭遇する落とし穴
  • Docker で MySQL データベースを使用する方法の詳細説明 (LAN でのアクセス)
  • docker で mysql に接続できない場合の解決策
  • DockerコンテナでのMySQLデータのインポート/エクスポートの詳細な説明
  • Docker に MySQL インスタンスをインストールして実行する
  • dockerログインmysqlエラー問題の実践記録

<<:  Linuxネットワーク構成ツールの使用

>>:  Vue で 3D タグ クラウドを実装するための詳細なコード

推薦する

CocosCreatorがスキル冷却効果を実装

CocosCreatorがスキルCD効果を実現多くのゲームにはスキルがあります。プレイヤーがスキルボ...

フレックスレイアウトは、上下固定、中間スライドのレイアウトモードを実現します。

この記事では、主に、上下固定と中スライドレイアウトを実現するためのフレックスレイアウトのレイアウト方...

CSS3で実装された読み込みアニメーション

成果を達成する実装コード <h1>123WORDPRESS.COM</h1>...

ウェブデザインには目的、アイデア、思考、そして粘り強さがなければならない

<br />はじめに:このアイデアは、数日前に上級ウェブデザインの次の記事を考えていると...

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

MySQLにデータを保存するとき、乱雑であまり使用されないデータがJSONフィールドに投げ込まれるこ...

docker-compose を使用して mongodb と mysql を構築する詳細なプロセス

docker-compose で mongodb と mysql を構築する詳細な方法を見てみましょ...

Vue ポーリング リクエスト ソリューションの完全な例

世論調査の理解実際、ポーリングの焦点はループ自体ではなく、実行間の間隔にあります。 Ajax は非同...

MySQL は対応するクライアント プロセスにどのように接続しますか?

質問特定の MySQL 接続について、それがどのクライアント プロセスからのものであるかをどのように...

MySQL 5.7 のルートパスワードログイン問題の解決策

前回の記事でMySQLサービスが起動しない問題が解決したと分かった後、パスワードなしでrootユーザ...

mysql8.0.20 のダウンロードとインストールおよび発生した問題 (図とテキスト)

1.ブラウザでmysqlを検索してダウンロードしてインストールしますアドレス: https://d...

MySQL のデータ統計に関するヒント

よく使用されるデータベースである MySQL では、多くの操作が必要です。デジタル操作には非常に便利...

Vueモバイル端末の適応化問題の詳細説明

1. vue uiでプロジェクトを作成する 2. 基本設定項目を選択する 3. プロジェクトを実行す...

Vueのprops設定の詳細な説明

<テンプレート> <div class="demo">...

ES6 クラス継承を使用してゴージャスなボール効果を実現する方法

目次導入実装手順キャンバス環境を作成するライティングボールBallクラスを継承するMoveBallク...

HTML テーブル マークアップ チュートリアル (38): ヘッダーの境界線の色属性 BORDERCOLOR

テーブルを美しくするために、ヘッダーに異なる境界線の色を設定できます。基本的な構文<TH 境界...