CentOS に MySQL をインストールしてリモート アクセスを設定する方法

CentOS に MySQL をインストールしてリモート アクセスを設定する方法

1. MySQLリポジトリソースをダウンロードする

$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2. mysql-community-release-el7-5.noarch.rpm パッケージをインストールします。

$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

このパッケージをインストールすると、2 つの MySQL yum リポジトリ ソース (/etc/yum.repos.d/mysql-community.repo と /etc/yum.repos.d/mysql-community-source.repo) が取得されます。

3. MySQLをインストールする

$ sudo yum mysql-serverをインストールします

インストールするには指示に従ってください。インストール後にパスワードがないため、パスワードをリセットする必要があります。

4. MySQLパスワードをリセットする

$ mysql -u ルート

ログイン時に、次のエラーが報告される場合があります: ERROR 2002 (HY000): ソケット '/var/lib/mysql/mysql.sock' を介してローカル MySQL サーバーに接続できません (2)。原因は、/var/lib/mysql のアクセス許可の問題です。次のコマンドは、/var/lib/mysql の所有者を現在のユーザーに変更します。

$ sudo chown -R ルート:ルート /var/lib/mysql

MySQLサービスを再起動する

$ サービスmysqldを再起動

次に、ログインしてパスワードをリセットします。

$ mysql -u root // Enter キーを直接押して mysql コンソールに入りますmysql > use mysql;
mysql > ユーザーを更新し、パスワードをpassword('123456')に設定し、user='root';
mysql > 終了;

セキュリティ上の理由から、Mysql ではデフォルトでローカルログインのみが許可されます。ただし、この場合、ユーザーはリモートで接続する必要があります。したがって、リモート接続を有効にするには、次の操作を実行する必要があります。

1. ルートユーザーがどこからでもリモートでログインし、すべてのライブラリに対して任意の操作権限を持つことを許可します。具体的な操作は次のとおりです。

このマシンで root ユーザーとして mysql にログインします。
mysql -u root -p "youpassword" 
承認操作を実行するには:
mysql> 'youpassword' によって識別される 'root'@'%' に GRANT OPTION 付きで *.* のすべての権限を付与します。
認証テーブルを再ロードします:
権限のフラッシュ;
mysql データベースを終了します。
出口

2. ルート ユーザーが特定の IP アドレスからリモートでログインし、すべてのライブラリに対する操作権限を持つことを許可します。具体的な操作は次のとおりです。

このマシンで root ユーザーとして mysql にログインします。
mysql -u root -p "youpassword" 
承認操作を実行するには:
GRANT オプションを使用して、"youpassword" によって識別される root@"172.16.16.152" に *.* のすべての権限を付与します。
認証テーブルを再ロードします:
権限のフラッシュ;
mysql データベースを終了します。
出口

3. ルート ユーザーが特定の IP アドレスからリモートでログインし、ライブラリ固有のすべての操作権限を持つことを許可します。具体的な操作は次のとおりです。

このマシンで root ユーザーとして mysql にログインします。
mysql -u root -p "youpassword" 
承認操作を実行するには:
"youpassword" によって識別される root@"172.16.16.152" に *.* の select、insert、update、delete 権限を付与します。
認証テーブルを再ロードします:
権限のフラッシュ;
mysql データベースを終了します。
出口

4. ユーザー権限を削除するには、REVOKE コマンドを使用する必要があります。具体的なコマンドの形式は次のとおりです。

REVOKE privileges ON database[.table name] FROM user-name;
具体的な例として、まずローカルで mysql にログインします。
mysql -u root -p "youpassword" 
承認操作を実行するには:
TEST-DB に対して、"youpassword" によって識別される te​​st-user@"172.16.16.152" に select、insert、update、delete 権限を付与します。
次に、承認操作を削除します。
TEST-DB 上のすべての権限を test-user から取り消します。
****注意: この操作では、TEST-DB に対するユーザーの承認権限のみがクリアされますが、ユーザー「test-user」は引き続き存在します。
最後に、ユーザー テーブルからユーザーをクリアします。
user="test-user" の user から削除します。
認証テーブルを再ロードします:
権限のフラッシュ;
mysql データベースを終了します:
出口

5. MYSQL権限の詳細な分類:

グローバル管理権限: 
FILE: MySQL サーバー上のファイルの読み取りと書き込みを行います。 
PROCESS: 他のユーザーに属するサービス スレッドを表示または終了します。 
RELOAD: アクセス制御リストを再ロードし、ログなどを更新します。 
SHUTDOWN: MySQL サービスをシャットダウンします。
データベース/テーブル/列の権限: 
ALTER: 既存のデータ テーブル (列の追加/削除など) とインデックスを変更します。 
CREATE: 新しいデータベースまたはテーブルを作成します。 
DELETE: テーブルからレコードを削除します。 
DROP: テーブルまたはデータベースを削除します。 
INDEX: インデックスを作成または削除します。 
INSERT: テーブルにレコードを追加します。 
SELECT: テーブルのレコードを表示/検索します。 
更新: テーブル内の既存のレコードを変更します。
特別な権限: 
ALL: 何でも実行できます (root と同じ)。 
使用方法: ログインのみが許可され、他の操作は許可されません。

要約する

以上が編集者が紹介した CentOS に MySQL をインストールし、リモートアクセスを設定する操作方法です。皆様のお役に立てれば幸いです。ご質問があればメッセージを残してください。編集者がすぐに返信いたします。

以下もご興味があるかもしれません:
  • mysql5.7 のエンコーディングを utf8mb4 に設定する方法
  • MySQLでグローバル変数とセッション変数を設定する2つの方法の詳細な説明
  • 外部ネットワークアクセスを許可するためのMysql5.6の設定手順の詳細を共有する
  • Docker で MySQL の文字セットを設定する方法
  • MySQL で datetime 型のデフォルト値を設定する方法
  • Dockerfile を使用して MySQL イメージを構築し、データの初期化と権限設定を実装する詳細な説明
  • MySQL ログの設定と表示方法
  • Windows で MySQL 5.7.17 をインストールし、エンコードを utf8 に設定する方法
  • CentOS 7 に MySQL をインストールし、自動的に起動するように設定する
  • MySQL max_allowed_pa​​cket 設定

<<:  Linux のよく使うコマンドの使い方を詳しく解説(第 2 回)———— テキストエディタのコマンド vi/vim

>>:  Reactでのこのリファレンスの詳細な説明

推薦する

UniappはBaidu Voiceを使用して録音をテキストに変換する機能を実現

3日間さまざまな困難に遭遇した後、ようやくこの機能を実現しました。正常に実装できる方法を見つける前に...

MySQL ディープ ページング (数千万のデータを素早くページ分割する方法)

目次序文場合最適化まとめ序文バックエンド開発では、一度に大量のデータがロードされ、メモリやディスク ...

MySQL 作成ルーチン権限に関する注意事項

1. ユーザーにルーチン作成権限がある場合は、プロシージャ | 関数を作成できます。 2. ユーザー...

Ajax リクエストにおけるクロスドメイン問題の原因と解決策

目次1. クロスドメインはどのように形成されるのでしょうか? 2. クロスドメインの根本的な原因3....

vsftp を使用して Linux で FTP サーバーを構築する (パラメータの説明付き)

導入この章では、主に Linux で FTP サーバーを構築するプロセスを紹介します。習得すべき重要...

Dockerアーキテクチャ入門

Docker には 3 つの基本概念が含まれています。イメージ: Docker イメージはルート フ...

バックエンド サーバー プロキシとして Nginx を推奨する理由 (理由分析)

1. はじめに実際のサーバーはパブリックインターネットに直接公開されるべきではありません。そうしな...

MySQL 8.0.15 のインストールと設定のグラフィックチュートリアル

この記事ではMySQL 8.0.15のインストールと設定方法を参考までに記録します。具体的な内容は以...

MySQL はどのようにしてマスターとスレーブの同期を実現するのでしょうか?

マスタースレーブ同期 (マスタースレーブレプリケーションとも呼ばれる) は、マスタースレーブデータの...

JSは写真の自動再生効果を実現します

この記事では、写真の自動再生効果を実現するためのJSの具体的なコードを参考までに紹介します。具体的な...

MySQL5.7 マスタースレーブ構成例の分析

MySQL5.7マスタースレーブ構成の実装方法、具体的な内容は次のとおりですインストール環境:マスタ...

MySQL 5.7.18 zip バージョンのインストール チュートリアル

MySQL の mysql 5.7.18 zip バージョンは、クリックして次のステップをクリックし...

MySQLデータベースはMMM高可用性クラスタアーキテクチャを実装します

コンセプトMMM (Mysql のマスター マスター レプリケーション マネージャー) は、Perl...

MySQL 5.7.18 のインストール中に MySQL サービスの起動に失敗する問題の解決策

MySQL は非常に強力なリレーショナル データベースです。しかし、初心者の中には、インストールや設...

WeChat ミニプログラム 宝くじ番号ジェネレーター

この記事では、WeChatアプレットの宝くじ番号ジェネレータの具体的なコードを参考までに紹介します。...