Docker はリモート接続のサンプルコードを実現するために MySQL をデプロイします

Docker はリモート接続のサンプルコードを実現するために MySQL をデプロイします

1.docker search mysql查看mysql版本

2. docker pull mysqlは要選擇starts最高的那個name 進行下載

3. docker images查看下載好的鏡像

4. MySQLインスタンスを起動する

 docker run --name dockermysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql

--name 、mysql インスタンスのエイリアスを設定します。 -p 3307 は外部に公開されるポートです。 3306は内部ポートです

-e MYSQL_ROOT_PASSWORD mysqlログインパスワードを設定します -dはデーモンとして実行されます(バックグラウンド実行)最後のmysqlはイメージ名です

5. docker ps -a查看在運行的

6. docker exec -it dockermysql bash が進入容器內部 dockermysql 是上邊運行時為容器取的別名也可以用id替代

7.docker mysql -u root -p然后直接輸入密碼即可密碼是在運行時設置的

MySQLを使用する

8.給用于授予權限

GRANT ALL PRIVILEGES ON *.* 'root'@'%' identified by '123123' WITH GRANT OPTION; これは、インターネットではより一般的な書き方です。実際には、エラーが報告されます。

9.権限のフラッシュ、権限の更新

10. ログイン

11.Mysql リモート接続エラー: authentication plugin caching_sha2

MySQL 8.0 では、デフォルトで caching_sha2_password 認証メカニズムが使用されます (mysql_native_password から caching_sha2_password に変更)。

5.7 から 8.0 にアップグレードしても、既存のユーザーの認証方法は変更されませんが、新しいユーザーはデフォルトで新しい caching_sha2_password を使用します。

クライアントは新しい暗号化方式をサポートしていません。

方法1: ユーザーのパスワードと暗号化方式を変更する

ALTER USER 'root'@'%' を 'password' によって mysql_native_password で識別します。

ユーザーに権限を付与する場合と同じになります。 localhost の場合は、上記と同じ操作を行います。 %についても同様です

mysql8.* の新機能: caching_sha2_password パスワード暗号化方式

以前のバージョンの MySQL では、パスワードの暗号化にmysql_native_passwordを使用していました。

新しく追加されたユーザーパスワードのデフォルトのcaching_sha2_password

以前のMySQLをベースにアップグレードする場合、ユーザーが使用するパスワード暗号化はmysql_native_passwordである必要があります。

以前のパスワード暗号化方法を使用する場合は、/etc/my.cnfファイルを変更します。

データベースのタイムゾーンの問題:

データベースへの接続時にパラメータ serverTimezone=UTC に問題が発生する

serverTimezone=Asia/Shanghai に変更するだけで問題ありません。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Dockerは安全なTLSリモート接続アクセスを可能にします
  • サーバーのDockerコンテナへのvscodeリモート接続を設定する方法
  • Docker は 2003 年の問題を解決するために MySQL リモート接続を導入しました
  • TLS暗号化通信を使用してDockerにリモート接続する詳細な例
  • Docker で MySQL をインストールし、リモート接続を実装するチュートリアル
  • dockerデーモンのリモート接続設定の詳しい説明
  • Dockerリモート接続設定の実装例

<<:  MAC+PyCharm+Flask+Vue.js ビルドシステム

>>:  MySQL サーバー 5.7.20 のインストールと設定方法のグラフィック チュートリアル

推薦する

MySQL 8.0.12 の詳細なインストールおよびアンインストール チュートリアル

1. MySQL 8.0.12 バージョンのインストール手順。 1. ダウンロードhttps://d...

WeChatアプレットはユーザーログインモジュールサーバーの構築を実装します

サーバーの構築には node.js を選択しました。まだインストールしていない方は、私の他の nod...

HTML の表の行と列を結合する問題の解決策の詳細な説明

私たちが構築しようとしていたウェブサイトには、長い文章だけでなく、多数の表も含まれており、表のレイア...

MySQL がデュアルマスターで構成されている場合にデータループの競合を回避する方法

あなたはこの質問について考えたことがあるでしょうか?デュアルアクティブが構成されている場合、データル...

MySQL 日付処理関数の例の分析

この記事は主にMySQLの日付処理関数のサンプル分析を紹介します。この記事ではサンプルコードを詳細に...

広告を閉じるための JavaScript カウントダウン

広告を閉じるまでのカウントダウンを実装するために JavaScript を使用するまだフロントエンド...

Dockerコンテナはルーティングを介して直接通信し、ネットワーク通信を実現します。

概要Docker 自体の現在のデフォルト ネットワークについては、単一ホスト上の異なる Docker...

Angularコンポーネントのライフサイクルの詳しい説明(パート2)

目次1. ビューフック1. ngAfterViewInit および ngAfterViewCheck...

JavaScript キャンバスでカラフルな太陽のハロー効果を実現

この記事では、カラフルな太陽のハロー効果を実現するためのJavaScriptキャンバスの具体的なコー...

CentOS7 構成 Alibaba Cloud yum ソースメソッドコード

Centos yumフォルダを開くコマンドcd /etc/yum.repos.d/を入力します。 w...

ホストサービスにアクセスするDockerでのサービスの実装

目次1. シナリオ2. 解決策3. 結論4. 参考文献1. シナリオ日常の開発およびテスト作業には ...

MySQL 8.0 の新機能の落とし穴と解決策についての簡単な説明 (要約)

1. ユーザーを作成して承認するMySQL 8.0 では、ユーザーの作成と認証が以前とは異なります...

選択ドロップダウンメニューのテキストを左右にスクロールするように設定する

marquee タグを使用してフォントのスクロールを設定したいです。コードは次のように記述しましたが...

MySQLで時間別データと最後の時間別データの差をクエリするアイデアの詳細な説明

1. はじめに要件は、特定の時間範囲内で、1 時間ごとのデータと前の 1 時間ごとのデータの差と比率...

我々は自らの力でIE6を絶滅に追い込んでいる

実際、IE6 が本当にいつ消滅するのか私たちは毎日疑問に思っていますが、2001 年のリリース以来、...