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 のインストールと設定方法のグラフィック チュートリアル

推薦する

Nginx セッション損失問題の解決策

nginx をリバース プロキシ tomcat として使用する場合、セッション損失が発生する可能性が...

Docker で Springboot プロジェクトを実行する実装

導入: springboot プロジェクトを実行する Docker の構成は実は非常にシンプルで、L...

MySQL の重複データの処理方法 (防止と削除)

一部の MySQL テーブルには重複レコードが含まれている場合があります。重複データが存在することを...

CSS floatプロパティの詳細な説明

1. フローティングとは何ですか?フローティングは、その名の通り、浮遊することを意味します。要素がド...

Vue フロントエンド開発における keepAlive の使用方法の詳細な説明

目次序文keep-avlive フック関数keep-avliveはどのコンポーネントをキャッシュする...

XHTML CSSを使用して正式なブログを書く

ブログの正式名称は「Web log」で、中国語で「ネットワークログ」を意味します。後にブログに短縮さ...

React+Ant Design開発環境をセットアップするための実装手順

基礎1. スキャフォールディングを使用してプロジェクトを作成し、開始する1.1 足場を設置する: n...

スプレッド演算子のサンプルコードと JavaScript での応用

スプレッド演算子を使用すると、式をある時点で展開できます。スプレッド演算子は、複数のパラメーター (...

Flex モバイルレイアウトにおけるシングルラインレイアウトとダブルラインレイアウトの違いと使い方

レイアウトにul>liを使用した単一行レイアウトを以下に示します。 <ul class=...

Windows 10 Home EditionにDockerをインストールする方法を教えます

Redisの本やSpring Cloud Alibabaの本を執筆した際に、一部の分散コンポーネント...

MySQL 無料インストール版 (zip) のインストールと設定の詳細なチュートリアル

この記事では、MySQL無料インストール版(zip)のインストールと設定のチュートリアルを参考までに...

Linux システムで MySQL データベースにリモート接続する方法のチュートリアル

序文最近、職場でこの要件に遭遇し、リモート接続を確立するのに 1 時間以上かかりました。ローカル コ...

Reactはルーティングを使用してログインインターフェースにリダイレクトします

前回の記事では、webpack と react 環境を設定した後、ログイン インターフェースとその後...

HTML の順序付きリスト、順序なしリスト、定義リストに関する簡単な説明

順序付きリストXML/HTML コードコンテンツをクリップボードにコピー<オルタイプ= &qu...

docker デプロイメントの実装手順 lnmp-wordpress

目次1. 実験環境2. Dockerソースをインストールする3. Dockerをインストールする4....