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 でユーザーを管理し、権限を制御する方法

推薦する

10分で始めるCSS3アニメーション

導入アニメーションを使用すると、JavaScript や jQuery に依存せずに、純粋な CSS...

Linux で特定のユーザーにフォルダーのすべてのコンテンツを許可するにはどうすればよいですか?

【問題分析】 chown コマンドを使用できます。ここで ch は change (変更) を表し...

TomcatをダウンロードしてLinuxにインストールする詳細な手順

Linux に触れたばかりの方には、この内容が役に立つかもしれません。Linux にしばらく触れてい...

Tomcat 7.0 で仮想ディレクトリを設定し、仮想パスを構成する方法

Tomcat7.0は仮想ディレクトリを設定します(1)現在、当社のウェブサイトはデフォルトのディレク...

Vue で v-if と v-for を一緒に使用することが推奨されない理由の詳細な説明

この記事では主に、v-if と v-for を一緒に使用することが推奨されない理由を紹介します。詳細...

Linuxでブーストライブラリをインストールするための完全な手順

序文Boost ライブラリは、標準ライブラリのバックアップとして機能し、C++ 標準化プロセスの開発...

js キャンバスで円形の水のアニメーションを実現

この記事の例では、円形の水のアニメーションを実現するためのキャンバスの具体的なコードを参考までに共有...

VMware Tools を最初からインストールするための詳細な手順 (グラフィック チュートリアル)

VMware Tools は VMware 仮想マシンに付属するツールで、VirtualBox (...

シンプルなナビゲーションバー機能を実現するHTML+CSS

さっそく、コードを見てみましょう(初心者:特に言うことはありません) <!DOCTYPE ht...

MySQL InnoDBストレージエンジンについて簡単に説明します

序文:ストレージ エンジンはデータベースの中核です。MySQL の場合、ストレージ エンジンはプラグ...

Mac ノードの削除と再インストールのケーススタディ

Macノードの削除と再インストール消去 ノード -v sudo npm アンインストール npm -...

docker compose サービスの起動順序を制御する方法

まとめDocker-compose は複数の Docker コンテナ サービスを簡単に組み合わせるこ...

FirefoxのWeb開発者を使用してWebページのスタイルを無効にする方法

前提条件: Web開発者プラグインがインストールされている操作手順: [ツール] -> [We...

TypeScript でオブジェクト キーの値の範囲を制限する方法

TypeScript を使用する場合、TypeScript が提供する型システムを使用してコードのあ...

Node.jsを理解するのはとても簡単です

目次Node.js の公式紹介Node.jsのコア開発言語ウェブ上の JavaScript と No...