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

推薦する

CentOS 7 パスワードを忘れた場合の解決プロセス図

必要Windows システムでも Linux システムでも、さまざまな理由でパスワードを忘れてしまう...

MySQL PXC クラスターの構築方法

目次1. PXCの紹介1.1 PXC の紹介1.2 PXC の特徴と利点1.3 PXCの限界と欠点1...

Docker MQTT のインストールと使用のチュートリアル

MQTT の紹介MQTT (Message Queuing Telemetry Transport)...

WebプロジェクトのDockerデプロイメントの実装

前回の記事では、docker サービスをインストールしました。引き続き、Web プロジェクトのデプロ...

Mysql ルートユーザーアカウントのパスワードをリセットする問題を解決する

問題の説明: mysqladmin.exe を使用してコマンドを実行すると、次のエラー メッセージが...

mysql.data.dll ドライバーのさまざまなバージョンの簡単な分析

ここにmysqlドライバmysql.data.dllがあります知らせ:ここではX86バージョンが多く...

mysql5.7.18.zip インストール不要版設定チュートリアル(Windows)

これは私が以前使用した mysql5.7.18.zip のインストール チュートリアルです。まずこれ...

MySQL 8.0.18 のインストールと設定方法のグラフィックチュートリアル (Windows 10 版)

この記事は、参考のためにMySQL 8.0.18のインストールと設定のグラフィックチュートリアルを記...

JavaScript でのプロキシの使用を理解するための記事

目次エージェントとは何かプロキシの基礎知識ハンドラオブジェクトのメソッドプロキシでできること参考文献...

Linux サーバーで MySQL リモート接続を有効にする方法

序文以前の非MKレコードを再編成するためのMySQLの学習説明する有効になっていない場合、データベー...

JSはスネークゲームを実装する

目次1. 初期化構造2. 蛇の色のレンダリング3. ヘビの動き4. ヘビの死を判定する方法 ヘビの死...

MySQL エラー「すべての派生テーブルには独自のエイリアスが必要です」の解決方法

MySQL は、マルチテーブルクエリを実行するときにエラーを報告します。 [SQL] SELECT ...

Vue.jsはカレンダー機能を実装します

この記事では、カレンダー機能を実装するためのVue.jsの具体的なコードを例として紹介します。具体的...

JavaScript のディープコピーの落とし穴

序文以前、ある会社の面接に行ったとき、面接官から「オブジェクトを深くコピーするにはどうすればよいです...

Saltstack に Zabbix サービスをデプロイする方法を説明します

目次SaltstackがZabbixサービスを導入httpd、mysql、phpをインストールするh...