Mariadb リモート ログイン構成と問題解決

Mariadb リモート ログイン構成と問題解決

序文:

インストール プロセスについては詳しく説明しません。問題に直接触れましょう。MySQL のリモート接続には解決する必要がある問題が 2 つあります。1. root ユーザーがリモートで接続できるようにします。 2. 任意の IP がデータベースにリモート接続できるようにします。もちろん、テストして問題を解決する前に、まずデータベースとリモート ホスト間のネットワーク通信に問題がないことを確認する必要があります。簡単に言えば、相互に ping できる必要があります。次に、ファイアウォールからの干渉を避けるために、ローカル ホストとデータベース ホストの両方のファイアウォールをオフにします。もちろん、実稼働環境ではファイアウォールをオンにする必要があり、追加のセキュリティ構成が必要です。

問題は解決しました:

1. 新しくインストールされたデータベースは、デフォルトで初期化する必要があります。データベース サービスが起動したら、次のコマンドを使用して初期化します。

[root@localhost ~]# mysql_secure_installation
新しいパスワード: 
新しいパスワードを再入力してください: 
パスワードが正常に更新されました。
権限テーブルを再ロードしています。
 ... 成功!


デフォルトでは、MariaDBのインストールには匿名ユーザーがおり、誰でも
ユーザーアカウントを作成せずにMariaDBにログインする
これはテストのみを目的としており、インストールを確実にするために
少しスムーズに進む。
生産環境。

匿名ユーザーを削除しますか? [Y/n] 
 ... 成功!

通常、rootは「localhost」からのみ接続を許可されます。
誰かがネットワークからルートパスワードを推測できないようにします。

リモートでの root ログインを禁止しますか? [Y/n] n #root ユーザーのリモート ログインを設定する場合は、ここで n を選択する必要があります。[root ユーザーのリモート ログインを禁止する] を選択しない場合、他のオプションは無関係です。
 ...スキップします。

デフォルトでは、MariaDBには誰でも使用できる「test」という名前のデータベースが付属しています。
アクセス。これもテストのみを目的としており、削除する必要があります
実稼働環境に移行する前に。

テストデータベースとそれへのアクセスを削除しますか? [Y/n] 
 - テスト データベースを削除しています...
 ... 成功!
 - テスト データベースの権限を削除しています...
 ... 成功!

権限テーブルを再ロードすると、これまでに行ったすべての変更が確実に反映されます。
直ちに発効します。

権限テーブルを今すぐ再読み込みしますか? [Y/n] 
 ... 成功!

掃除中…

完了です!上記の手順をすべて完了すると、MariaDB
これでインストールは安全になるはずです。

MariaDB をご利用いただきありがとうございます。[root@localhost ~]# systemctl restart mariadb #初期化後、サービスを再起動します。

2. データベース内でコマンドを実行することで、ルート ユーザーがリモートで接続できるようにし、任意の IP がデータベースにリモートで接続できるようにすることができます。

ここでは 2 つの状況があります。

1) MySQL データベースにリモート接続するための新しい管理者ユーザーを作成します (管理者を例に任意のユーザーを作成します)

'123456' で識別される admin@'%' に、 grant オプションを使用して *.* のすべての権限を許可します。
権限をフラッシュします。

IP アドレスを持つ任意のコンピューター (% は任意の IP アドレスが許可されることを意味します) が管理者アカウントとパスワード (123456) を使用してこの MySQL サーバーにアクセスできるようにします。
管理者アカウントが存在する必要はないことに注意してください。

2) MySQLデータベースへのリモート接続を許可するルートユーザーをサポートする

'123456' で識別される 'root'@'%' に、GRANT オプションを使用して *.* のすべての権限を付与します。
権限をフラッシュします。

root ユーザーのリモート ログインを設定する場合、パスワードは以前に設定したパスワードと同じである必要があることに注意してください。

3. Ubuntu システムの追加構成。

Ubuntuシステムのmy.cnfファイルはvim /etc/mysql/mysql.conf.d/mysqld.cnfにあり、コメントアウトされています。

バインドアドレス = 127.0.0.1

デフォルトでは、Centos システム構成ファイルにそのような行はありません。

確認方法も非常に簡単です。データベースが起動している前提で、netstat -an | grep 3306 を使用してポートの接続情報を表示します。 0.0.0.0 は、任意の IP 接続が許可されることを意味します。

図に示すように、任意の IP 接続が許可されます。

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

以下もご興味があるかもしれません:
  • MySQLとMariaDBの違いとパフォーマンスの比較についての詳細な説明
  • Linux 上の MariaDB は root ユーザーで起動します (推奨)
  • Windows 10 に MariaDB をインストールするチュートリアル
  • MySQL/MariaDB ルートパスワードリセットチュートリアル
  • Windows7 での MariaDB データベースのインストールとシステム初期化操作の分析
  • PHP+MariaDBデータベース操作の基本スキルのまとめ
  • MySQL と MariaDB の違いについての簡単な説明 (MariaDB と MySQL のパフォーマンス比較)
  • DockerでMariaDBイメージを作成する方法

<<:  Ubuntu 20.04でルートアカウントを有効にする方法

>>:  Vue グローバルメソッドを設定する 2 つの方法

推薦する

MySQLパーティションテーブルは月別に分類されています

目次テーブルを作成するデータベース ファイルを表示します。入れるクエリ消去補足:Mysqlは月テーブ...

Macでのファイル権限の表示と設定の詳細な説明

序文Mac システムのターミナルでファイルの権限を変更するには、Linux の chmod コマンド...

Jenkins+Docker継続的インテグレーションの実装

目次1. Jenkinsの紹介2. Jenkinsをインストールしてデプロイする1. 環境情報2. ...

大規模な MySQL テーブルに対する count() の実装を最適化しました

以下は、B+ ツリーのデータ構造と実験結果からの推測に基づいた私の判断です。間違いがあればご指摘くだ...

MySQL 5.1 のパスワードを変更し、MySQL データベースにリモートでログインする方法

mysql ユーザーを作成し、承認します。形式: 「ユーザー パスワード」で識別されるユーザー@ログ...

この記事は、Dockerにおけるcgroupの具体的な使用法を徹底的に理解するのに役立ちます。

目次cgroupとはcgroupの構成cgroupが提供する機能cgroup 内の CPU を制限す...

Vue フロントエンドと Django バックエンドを使用して、一定期間内のデータをクエリする方法

序文開発プロセスでは、すべてのデータではなく特定の期間内のデータをクエリするなど、クエリのフィルタリ...

W3C チュートリアル (9): W3C XPath アクティビティ

XPath は、XML ドキュメントの一部を選択するための言語です。 XPath は、XSLT、XQ...

MySql データベース クエリの特殊コマンド

まずMySQLのインストールMySQLソフトウェアをダウンロードし、インストールパスを変更しますMy...

MySQL データベースの大文字と小文字の区別の問題

MySQL では、データベースはデータ ディレクトリ内のディレクトリに対応します。データベース内の各...

1つのSQL文でMySQLの重複排除が完了し、1つが保持されます。

数日前、ある要件に取り組んでいたとき、MySQL で重複レコードをクリーンアップする必要がありました...

MySQLはインデックスプッシュダウンを数秒で理解するのに役立ちます

目次1. インデックスプッシュダウン最適化の原理2. インデックスプッシュダウンの具体的な実践1. ...

CentOS 6 は Docker を使用して Redis マスター スレーブ データベース操作例を展開します

この記事では、Docker を使用して Centos6 に Redis マスター/スレーブ データベ...

CSS 垂直センタリングの代替実装コードの詳細な説明(非従来型)

序文ご存知のとおり、「CSS で要素を垂直方向に中央揃えするにはどうすればよいか」という質問は、すで...

Linux で実行中のバックグラウンド プログラムを表示および終了する方法

Linux タスク管理 - バックグラウンド実行と終了fg、bg、ジョブ、&、ctrl + ...