Docker での MySQL 8.0.20 のインストールと設定のチュートリアル

Docker での MySQL 8.0.20 のインストールと設定のチュートリアル

Dockerは参考までにMySQLバージョン8.0.20をインストールします。具体的な内容は以下のとおりです。

最初のステップは画像を引き下げることです

docker プル mysql:8.0.20

ステップ2:ミラーを起動する

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20

起動が成功したかどうかを確認する

ドッカーps -a

3 番目のステップが正常に開始されたら、コンテナーに入り、構成ファイルをホストにコピーします。

docker cp mysql:/etc/mysql /mnt/sda1/mysql8.0.20

コンテナの /etc/mysql ディレクトリをホストディレクトリ /mnt/sda1/mysql8.0.20 にコピーします。

ステップ4: mysqlコンテナを削除して再作成する

まずコンテナを停止する

docker 停止 mysql

コンテナを再度削除する

docker rm mysql

ステップ5: MySQLを起動し、設定ファイルをマウントし、データをホストに保存する

起動スクリプトのファイル名はmysql8.0.20.shです。

#!/bin/sh
docker 実行 \
-p 3306:3306 \
--name mysql \
--privileged=true \
--停止しない限り再起動する \
-v /mnt/sda1/mysql8.0.20/mysql:/etc/mysql \
-v /mnt/sda1/mysql8.0.20/logs:/logs \
-v /mnt/sda1/mysql8.0.20/データ:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0.20

コマンドの説明:

-p ポートマッピング

--privileged=true マウントファイルの権限設定

--restart except-stopped 起動後にコンテナを自動的に再起動するように設定する

-v /mnt/sda1/mysql8.0.20/mysql:/etc/mysql マウント設定ファイル

-v /mnt/sda1/mysql8.0.20/logs:/logs \ ログをマウント

-v /mnt/sda1/mysql8.0.20/data:/var/lib/mysql \ 永続性のためにデータ ファイルをホストにマウントします。

-v /etc/localtime:/etc/localtime コンテナの時刻はホストマシンと同期されます

-e MYSQL_ROOT_PASSWORD=123456 パスワードを設定する

-d mysql:8.0.20 バックグラウンド起動、mysql

ステップ6 : スクリプトを実行してイメージを起動する

sh mysql8.0.20.sh

docker ps -a を実行して正常に起動したかどうかを確認します。

Navicatはmysqlに接続してバージョン番号を表示します

完了です ---- データファイルと構成ファイルをマウントしました

インストール成功おめでとうございます。

MySQL の設定情報を変更する場合は、マウントされた設定ファイルを変更するだけです。

変更後は必ず再起動してください

MySQLを停止する

docker 停止 mysql

MySQLを起動する

docker で MySQL を起動する

素晴らしいトピックの共有:

MySQL の異なるバージョンのインストール チュートリアル

さまざまなバージョンの MySQL 5.7 インストール チュートリアル

さまざまなバージョンの MySQL 5.6 インストール チュートリアル

さまざまなバージョンのmysql8.0インストールチュートリアル

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

以下もご興味があるかもしれません:
  • docker で mysql 設定ファイルを変更する方法
  • docker公式mysqlイメージのカスタム構成の詳細な説明
  • Docker に MySQL インスタンスをインストールして実行する
  • DockerがMySQL構成実装プロセスを開始

<<:  Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

>>:  サーバー上で Nginx を使用して Springboot プロジェクトをデプロイする方法の詳細なチュートリアル (jar パッケージ)

推薦する

nginx で同時接続リクエストの数を制限する方法

導入同時接続数を制限するモジュールは http_limit_conn_module です。アドレス:...

HTML で特定のテキストを非表示にするにはどうすればよいでしょうか?

テキスト非表示コード、HTML 内の特定のテキストを非表示にするコードをコピーコードは次のとおりです...

1 つの記事で Vue ミドルウェア パイプラインを学ぶ

SPA を構築する場合、多くの場合、特定のルートを保護する必要があります。たとえば、認証されたユーザ...

JavaScript で文字列を数値に変換する方法

目次1.parseInt(文字列、基数) 2. 数値() 3.parseFloat()主なメソッドは...

MySQLは1億のテストデータを素早く挿入します

目次1. テーブルを作成する1.1 テストテーブルt_userを作成する1.2 一時テーブルの作成2...

Webフロントエンド開発におけるエラーを見つけるための基本的な考え方

WEB開発は主に2つのインタラクション(B/Sデータ)から構成されますブラウザ: 1html、css...

Docker ネットワークの原理とカスタム ネットワークの詳細な分析

Docker はホストマシン上のブリッジを仮想化します。コンテナを作成して起動すると、各コンテナには...

VMware Workstationはデバイス/資格情報ガードと互換性がありません

仮想マシンをインストールするときに、「VMware ワークステーションはデバイス/資格情報ガードと互...

ハイパーリンクの表示と開き方

<br />関連記事: ハイパーリンクを表示して開く方法症状<br />ユー...

MySQL ストアド プロシージャで if ステートメントを使用する詳細な例

この記事では、例を使用して、MySQL ストアド プロシージャでの if ステートメントの使用方法を...

MySQLを定期的にバックアップしてQiniuにアップロードする方法

ほとんどのアプリケーション シナリオでは、緊急時に備えて重要なデータをバックアップし、安全な場所に保...

ウェブデザインと制作の一般的な原則をまとめる

<br />関連記事: Web コンテンツ ページ作成に関する 9 つの実用的な提案、W...

SVNサービスバックアップ操作手順の共有

SVN サービスのバックアップ手順1. ソースサーバーとターゲットサーバーを準備するソースサーバー:...

Linux (CentOS7) で RPM を使用して MySQL 8.0.11 をインストールするチュートリアル

目次1. インストールの準備1. Linux関連情報の表示(Linuxコマンドライン操作) 2. M...

Linuxでディスク使用量を確認する方法

1. dfコマンドを使用してディスク全体の使用量を表示します。 df コマンドは、ハードディスクのマ...