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

ブログ    

推薦する

サブメニューをクリックする効果を実現するJavaScript

この記事では、クリック時にサブメニューを表示するためのJavaScriptの具体的なコードを参考まで...

クラウドサーバーはBaotaを使用してPython環境を構築し、Djangoプログラムを実行します。

目次PagodaをインストールするPythonランタイム環境を構成するPythonをインストールする...

テキストエリアのテキスト入力領域に改行を実装する方法

textarea 入力領域でテキストを折り返す場合は、<br/> と入力すると <...

Linux\Nginx 環境での仮想ドメイン名の設定とテスト検証

Nginx 仮想ドメイン名設定を使用すると、ドメイン名を購入せずに特定のドメイン名を介してローカル ...

Linux システムに docker をインストールし、ssh 経由で docker コンテナにログインする方法

注: 私はCentosを使ってdockerをインストールしていますステップ1: Dockerをインス...

ネイティブ JavaScript でオブジェクトが空かどうかをチェックする実装例

目次ネイティブJavaScriptとはA. 新しいブラウザでnullオブジェクトをチェックするコンス...

lastInfdexOf 関数の MySQL 実装例

MySQL では lastIndexOf に似た関数を使用する必要がある場合もありますが、すぐに使用...

MySQL でのトリガーとカーソルの紹介と使用

トリガーの紹介トリガーは、テーブルに関連付けられた特別なストアド プロシージャであり、テーブル内のデ...

スライドによるページめくり効果とクリックイベント問題をモバイル端末上で実装する

前述のこの記事はとても短いです〜主な目的は、モバイル端末上のクリックと js イベントのメカニズムに...

年末ですが、MySQL パスワードは安全ですか?

序文:年末です。データベースを検査する時期ではないでしょうか?一般的に、検査では、パスワードの複雑さ...

MySQLクエリが遅い理由

目次1. 遅いところはどこですか? 2. 不要なデータをクエリしましたか? 1. 不要なレコードをク...

重要なmysqlログファイルの概要

著者: 丁易出典: https://chengxuzhixin.com/blog/post/mysq...

MySQL 5.7 および MySQL 8.0 でルートパスワードを変更する方法の概要

MySQL 5.7 バージョン:方法1: SET PASSWORDコマンドを使用するフォーマット: ...

Oracle の開閉の 4 つのモード

>1 データベースを起動するcmd コマンド ウィンドウで、「sqlplus」を直接入力して ...

Linux curl フォームのログインまたは送信と Cookie の使用に関する詳細な説明

序文この記事では主に、curl を介してフォーム送信ログインを実装する方法について説明します。単一の...