この記事では、Dockerを使用してMySQLデータベースとリモートアクセス構成をデプロイする方法を紹介します。 MySQLをインストールする 画像をプルする MySQL データベース イメージをプルするには、次のコマンドを使用します。 $ sudo docker pull mysql # イメージの最新バージョンをプルします。現在は MySQL 8、タグは最新です $ sudo docker pull mysql:5.7 # MySQLバージョン5.7をプルするように指定します 検索コマンドを使用して、人気度を表す星の数でマークされた他の MySQL 関連のミラーを見つけることもできます。 $ sudo docker 検索 mysql MySQLの実行 $ sudo docker run -p 3306:3306 \ --name mysql \ -v $PWD/conf:/etc/mysql/conf.d \ -v $PWD/ログ:/ログ\ -v $PWD/データ:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=パスワード \ -d MySQL の コマンドの説明:
リモート アクセスの構成 MySQL へのリモート アクセスは基本的な構成ですが、構成時にセキュリティの問題に注意する必要があります。そうしないと、特にエンタープライズ サーバーの場合、セキュリティ上のリスクが発生します。 また、ポート 3306 はサーバーのファイアウォールとサーバー プロバイダーのセキュリティ グループで有効にする必要があります。有効にしないと、アクセスできなくなります。 リモート アクセスを構成するには、まず MySQL 制御ターミナルを開き、次のコマンドを使用して開きます。 $ sudo docker exec -it mysql bash # MySQLコンテナに入る $ mysql -uroot -p # 実行後にMySQLにログインしてパスワードを入力する $ use mysql; # mysqlデータベースの使用を選択 MySQL 8 の設定 'username'@'%' というユーザーを作成し、'password' で識別します。 # リモート アクセス用のアカウントを作成します。 # {usernama} はリモートアクセスログインのユーザー名です。root の使用は推奨されません。 # {password} はリモートアクセス用のログインパスワードです。 # '%' はすべての IP を表します。可能であれば、特定の IP または IP セグメントを設定してみてください。GRANT ALL ON *.* TO 'username'@'%'; # 以前に作成したアカウントにすべての権限を付与します ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; # このアカウントにログインするためにここでパスワードを使用することを確認します FLUSH PRIVILEGES; # 権限の更新 完全なコマンドは次のとおりです。 '123456asd' によって識別されるユーザー 'james'@'%' を作成します。 # リモート アクセス用のアカウント (James) を作成します。 *.* のすべての権限を 'james'@'%' に付与します。 # 以前に作成したアカウント james にすべての権限を付与します ALTER USER 'james'@'%' は '123456asd' によって mysql_native_password で識別されます。 # このアカウント {james} にログインするにはパスワード {123456asd} を使用することを確認します # セキュリティを高めるために、パスワードはできるだけ複雑にしてください。 権限のフラッシュ; # 権限の更新 設定後、Navicat またはその他のツールを使用して接続をテストします。 MySQL 5.7 の設定 GRANT OPTION を使用して、'password' で識別される 'username'@'%' に *.* のすべての権限を付与します。 # {usernama} はリモートアクセスログインのユーザー名です。root の使用は推奨されません。 # {password} はリモートアクセス用のログインパスワードです。 # '%' はすべての IP を表します。可能であれば、特定の IP または IP セグメントの FLUSH PRIVILEGES を設定してみてください。 # 権限の更新 設定後、Navicat またはその他のツールを使用して接続をテストします。 注意: アクセスできない場合は、ファイアウォールのポート 3306 が開いているかどうか、およびサーバー プロバイダーのセキュリティ グループ内のポートが開いているかどうかを確認してください。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: JavaScript+html はフロントエンドページでランダム QR コード検証を実装します
>>: MySQL 8.0.13 で日付を 0000-00-00 00:00:00 に設定すると発生する問題を解決する
Ubuntu 15.04 は MySQL リモート ポート 3306 を開きます。以下の操作はすべて...
目次導入1. MySQL マスタースレーブレプリケーション1. MySQLレプリケーションタイプ2....
目次基本的な紹介入門テスト (Excel ファイルからのデータの読み取り)ステップ1: Maven座...
目次1. 配列の役割: 2. 配列の定義: 1. コンストラクタを通じて配列を作成する2. リテラル...
背景開発プロセス中に Docker コンテナ化をサポートするために、通常は Maven を使用してコ...
目次序文非同期イテレータとは何ですか?非同期イテレータストリームとしてページング機能を備えたAPIの...
1. 並列レプリケーションの背景まず、並列レプリケーションの概念はなぜ存在するのでしょうか? 1. ...
XHTML CSS を使って Web ページをデザインし始めた頃は、タグの使用経験も少なく、あまり気...
目次1. ElementUIで基本的なスタイルを構築する2. [送信]ボタンをクリックして、アカウン...
この記事では、ウェブページのスネークゲームを実装するためのJavaScriptの具体的なコードを参考...
「nofollow」タグは数年前に Google、Yahoo、Microsoft によって提案されま...
序文システムにファイル システムを作成し、それを永続的または非永続的にマウントする方法を学習します。...
序文今日、Xianyuを閲覧していたとき、各行の高さが同じではないことに気付きました。調べてみると、...
目次1. ブール2. 表現3. マルチクラスパッケージ4. v-bind でクラス class を直...
現在、インターネット上でウェブサイトをコピーすることは非常に一般的です。では、他人が私たちのウェブサ...