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 タグ クラウドを実装するための詳細なコード

推薦する

Docker クロスホストネットワークの実装 (手動)

1. Macvlan の紹介Macvlan が登場する前は、イーサネット カードに複数の IP ア...

MySQL 5.7.17 zip インストールおよび設定チュートリアル MySQL 起動失敗の解決策

MySQL 5.7.17、現在最新バージョンのようです、ダウンロードアドレスここで、プラットフォーム...

シェルスクリプトはNginxのaccess.logのPVを定期的にカウントし、APIに送信してデータベースに保存します。

1. PVとIPの統計一日のPV(ページビュー)をカウントする cat access.log | ...

JavaScript プロトタイプオブジェクトの this ポイント問題の詳細な説明

目次1. これは2. この点を修正する1. call() メソッド2. apply() メソッド要約...

JavaScript の基礎におけるデータ型の詳細な説明

目次1. データ型1.1 なぜデータ型が必要なのか? 1.2 変数のデータ型1.3 データ型の分類2...

要素シャトルフレームのパフォーマンス最適化の実装

目次背景解決新しい質問高度な背景シャトル ボックスが大量のデータを処理すると、レンダリングされる D...

CSS レイアウト チュートリアル: 垂直方向の中央揃えを実現する方法

序文最近、フロントエンドの知識をまとめており、いくつかのインタビューにも参加しました。インタビュー中...

MySQL でレプリケーション フィルターを動的に変更する方法

MySQLはレプリケーションフィルターを動的に変更します今日遭遇した問題についてお話しします。今日は...

HTMLは実際にはいくつかの重要なタグを学ぶアプリケーションです

「これは革命になるだろう」という記事が出たあと。業界の皆様に認知され、もちろん内外からの評価もいただ...

CentOS7でXShellとネットワーク設定を接続する方法

1. Linuxネットワーク構成ネットワークを構成する前に、まずローカル IPv4 アドレスやデフォ...

Linux で ping は成功するがポートが利用できない問題を解決する方法

ping は成功したがポートにアクセスできない場合のポート可用性検出の説明ポート可用性検出ツールの紹...

Dockerを使用してGitlabを素早くデプロイする方法

1. GitLabイメージをダウンロードする docker pull gitlab/gitlab-c...

Web アプリ開発時間を短縮する 10 の時間を節約するヒント (グラフィカル チュートリアル)

今日の開発環境では、速いほど良いです。 「迅速なアプリケーション開発」、「アジャイル ソフトウェア開...

MySQLアカウントのIP制限条件を変更する方法

序文最近、仕事で、MySQL ユーザーの権限を変更するには、特定の IP アドレスへのアクセスを制限...