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

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

最近 Django を導入しましたが、MySQL を手動でインストールしたくなかったので、Docker を使ってみました。インストールの経験をまとめました。Docker をインストールした後の前提条件は次のとおりです。

1. mysql イメージを表示します。

 docker 検索 mysql 

2. イメージがある場合は、最新のイメージを直接プルします

docker pull mysqlv:最新

3. MySQLイメージを起動する

```シェル
docker run –name w-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:latest

–name: 新しく作成したコンテナに名前を付けます。ここではw-mysqlという名前です。

-e: 設定情報。ここではmysqlルートユーザーのログインパスワードを設定します。
-p: ポート マッピング。このコンテナーではポート 3306 が使用されることを意味します。ローカル マシンにマップされる 2 番目のポートも 3306 です。
-d: コンテナが正常に起動した後、コンテナの完全なIDを出力します。

4. mysqlにログインする

```シェル
docker exec -it w-mysql mysql -uroot -p 

5. リモート接続できるユーザーを作成する

'123456' によって mysql_native_password で識別されるユーザー 'tantan404' を作成します。
*.* のすべての権限を 'tantan404' に付与します。

6. Navicatを使用して接続を試みる

7. 起こりうるエラー

このエラーは、新しいバージョンの MySQL の暗号化ルールがサポートされていないために、接続時に報告されることがあります。MySQL 8 より前のバージョンの暗号化ルールは mysql_native_password で、MySQL 8 以降のバージョンの暗号化ルールは caching_sha2_password です。この問題を解決するには 2 つの方法があります。1 つは navicat ドライバーをアップグレードすること、もう 1 つは MySQL ユーザー ログイン パスワードの暗号化ルールを mysql_native_password に復元することです。私は 2 番目の方法を使用しました:
操作は以下のとおりです。

ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #暗号化ルールを変更します。'password'はあなたのパスワードです。 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; #ユーザーのパスワードを更新します。'password'はあなたのパスワードです。 FLUSH PRIVILEGES; #権限を更新します

8. 終わり

dockerベースのシンプルなmysqlインストール、記録を作成する

上記は、docker に MySQL をインストールする方法の詳細です。docker に MySQL をインストールする方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Docker に MySQL と Redis をインストールする方法
  • Docker で Tomcat、MySQL、Redis をインストールするための詳細な手順
  • Docker で MySQL をインストールし、リモート接続を実装するチュートリアル
  • DockerにMySQL 8.0をインストールする方法
  • MySQL (8 および 5.7) の Docker インストール
  • Docker に MySQL と MariaDB をインストールする方法
  • Docker に共通コンポーネント (mysql、redis) をインストールする方法
  • DockerにMySQL8をインストールする方法
  • MySQL の Docker インストールと設定手順

<<:  Vue.jsはElement-uiを使用してナビゲーションメニューを実装します

>>:  DCL を使用して MySQL でユーザーを管理し、権限を制御する方法

推薦する

ウェブページでグレーまたはブラックモードを実現するための CSS3 フィルターコード

フロントエンドcss3 フィルターは、Web ページのグレー効果を実現できるだけでなく、ナイト モー...

史上最も簡単な MySQL データのバックアップと復元のチュートリアル (パート 2) (パート 37)

データのバックアップと復元パート3の詳細は次のとおりです基本的な概念:バックアップ、現在のデータまた...

MySQL sql_mode の分析と設定の説明

昨夜、MySQL データベースにデータセットを挿入したときにエラーが発生しました。データベースは容赦...

Vueのprops設定の詳細な説明

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

MySQL トリガー: 複数のトリガー操作の作成例の分析

この記事では、例を使用して、MySQL で複数のトリガー操作を作成する方法について説明します。ご参考...

WeChat アプレット計算機の例

WeChatアプレット計算機の例、参考までに、具体的な内容は次のとおりです。インデックス.wxml ...

ネイティブ JavaScript を使用した Web 計算機の実装

この記事では、参考までに、計算機のWebバージョンを実装するためのJavaScriptの具体的なコー...

なぜ Tomcat が起動できないのでしょうか?

目次現象:ポートの使用:ファイルにスペルミスがあります:現象: Tomcat がインストールされ、W...

MySQL 関数インデックス最適化ソリューション

MySQL を使用する場合、多くの開発者は一部の列に対して関数計算を実行することが多く、その結果、イ...

HTML の ReadOnly と Enabled の違い

ReadOnly 属性を持つ TextBox は、クライアント上で次のマークアップとして表示されます...

Win10 での MySQL 8.0 ログインでユーザー 'root'@'localhost' のアクセスが拒否される (パスワード使用: YES) 問題の解決方法

最近、MySQL を学び始めました。インストールはスムーズに進み、インターネット上の既成のチュートリ...

MySQL で置換操作を使用したときにデータ損失が発生する問題の解決策

序文同社の開発者は、データの更新時に replace into ステートメントを使用していました。不...

CentOS7にsshをインストールして設定する

1. openssh-serverをインストールする yum インストール -y openssl o...

10 種類のモダンなレイアウトを実現するための CSS コード

序文日曜日に自宅で web.dev の 2020 3 日間ライブを視聴したところ、興味深い点がたくさ...

MySQL トリガーの原理と使用例の分析

この記事では、例を使用して、MySQL トリガーの原理と使用方法を説明します。ご参考までに、詳細は以...