Docker に MySQL と MariaDB をインストールする方法

Docker に MySQL と MariaDB をインストールする方法

MySQLとMariaDBの関係

MariaDB データベース管理システムは MySQL のブランチであり、主にオープンソース コミュニティによって管理され、GPL に基づいてライセンスされています。
MariaDB は、API やコマンド ラインを含めて MySQL と完全に互換性を持たせ、MySQL の簡単な代替品となることを目指しています。

MySQL と MariaDB の関係について読んだ後、次の疑問が湧いてくるはずです。この 2 つは非常に密接に関連しているため、同時にインストールして起動すると競合が発生するのでしょうか?

答えは「はい」です。たとえば、「この記事では主にポート番号について説明します」。まず両方のインストールを確認し、次に構成フェーズで MariaDB のポート番号と MySQL を区別します。

DockerでMySQLをインストールする

Docker HubでMySQLイメージを探す

docker 検索 mysql

インストールするミラーを選択します(ここではcentos/mysql-57-centos7を選択します)

docker pull centos/mysql-57-centos7

MySQLを起動する

docker run -p 3306:3306 --name mysql-57 -v /my/mysql/conf:/etc/mysql/conf.d -v /my/mysql/logs:/logs -v /my/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=xxx -d centos/mysql-57-centos7

DockerでMariaDBをインストールする

Docker HubでMariaDBイメージを探す

docker 検索 mariadb

インストールするイメージを選択します(ここでは公式イメージを選択します)

docker プル mariadb

MariaDBを起動する

docker run -v /my/mariadb/:/var/lib/mariadb -p 3309:3309 -e MYSQL_ROOT_PASSWORD=xxx --privileged=true --restart unused-stopped --name mariadbs -d mariadb:latest
注: MariaDB はポート 3309 で起動し、MySQL はデフォルトのポート 3306 を使用します。

起動が完了しました。docker docker ps view

MariaDB ポート構成

MariaDB はポート 3309 の使用を開始しますが、リモートからアクセスすることはできません。

コンテナディレクトリに入る

docker exec -it コンテナID bash

設定ファイルを更新する

vi /etc/mysql/my.cnf を編集します。 

再起動

docker コンテナ ID を再起動

リモート接続して再度アクセスすると、正常になります。

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

以下もご興味があるかもしれません:
  • Docker に MySQL と Redis をインストールする方法
  • Docker で Tomcat、MySQL、Redis をインストールするための詳細な手順
  • DockerにMySQLをインストールする方法
  • Docker で MySQL をインストールし、リモート接続を実装するチュートリアル
  • DockerにMySQL 8.0をインストールする方法
  • MySQL (8 および 5.7) の Docker インストール
  • Docker に共通コンポーネント (mysql、redis) をインストールする方法
  • DockerにMySQL8をインストールする方法
  • MySQL の Docker インストールと設定手順

<<:  vue-cropper コンポーネントは画像の切り取りとアップロードを実現します

>>:  UbuntuでMySQLデータベースファイルディレクトリを変更する方法

推薦する

CSSをインポートする方法に関する詳細な洞察の要約

CSS の開発履歴についてはここでは紹介しません。ブログを書いている理由の 1 つは、フロントエンド...

JavaScript でローカル変数をグローバル変数に変換する方法

まず関数の自己呼び出しを知る必要がある関数の自己呼び出し - 自己呼び出し関数1 回限りの関数 - ...

img usemap 属性 中国地図リンク

HTML img タグ: Web ページに導入される画像を定義します。興味深い usemap 属性も...

HTML で中国語を UTF-8 に変換する方法

HTMLでは、中国語のフレーズ「學好好學」は「學好好學」と表現できます。プロジェクトでは、SMSアラ...

要素の読み込み効果を実現するための純粋なHTML+CSS

これは Element UI の読み込みコンポーネントのエフェクトです。かっこいいですね。実装してみ...

シングルサインオン制御を実装するためのVueの完全なコード

参考までに、Vue シングル サインオンのデモをご紹介します。詳細を知りたい方のお役に立てれば幸いで...

CSS3を使用してボタンホバーフラッシュダイナミック特殊効果コードを実装する

CSS3 の列シリーズ属性を使用してウォーターフォールレイアウトを作成する方法を紹介しました。興味の...

テーブル内の要素のドラッグと並べ替えの問題について簡単に説明します

最近、要素テーブルを使用すると、並べ替えの問題によく遭遇します。単純な並べ替えであれば、要素の公式が...

element-plus でオンデマンドインポートとグローバルインポートを実装する方法

目次オンデマンドインポート:グローバルインポートオンデマンドインポート:プラグインをインストールする...

デザイン理論:計画、リソース、コミュニケーションの問題について

<br />多くの中小企業ではこの問題は発生しません。中小企業はデザイナーをサポートし、...

MySQLデータのグループ化の詳細な説明

グループを作成グループ化は、SELECT ステートメントの GROUP BY 句で設定されます。例:...

コンテンツタイプの説明、つまりHTTPリクエストヘッダーのタイプ

コンテンツ タイプについて学ぶには、まずそれが何であるか、そして何に使用されるかを知る必要があります...

DockerでVueプロジェクトをデプロイする方法を教えます

1.前面に書きます:軽量仮想化テクノロジーとして、Docker には継続的インテグレーション、バージ...

Javascript における非同期待機の詳細な理解

この記事では、async/await がすべての JavaScript 開発者にとって非同期プログラ...

Windows Server 2016 に MySQL 5.7.19 の解凍バージョンをインストールするための詳細なチュートリアル

MySQL 5.7.19 winx64 解凍版のインストールチュートリアルを収録しています。具体的な...