、CentOSの8オペレーティングシステムのインストールは、MySQL 8.0は、デフォルトのCentOSの8リポジトリのMySQLデータベースサーバのバージョン8.0から最新バージョンをインストールすることができ、CentOSの8も5.7用のMySQL直接交換であるMariaDB 10.3を、提供していますが、いくつかの制限がありますあなたのアプリケーションは、MySQL 8.0と互換性がない場合は、MariaDB 10.3をインストールし、参照方法MariaDB 10.4 CentOSの7サーバーをインストールしました。
CentOSの8 8.0にMySQLをインストールする
MySQLの8.0サーバーをインストールするには、CentOSのパッケージマネージャを使用するには、rootユーザーまたはsudo権限を持つユーザーによって:
sudoのDNFは@mysqlインストール
@mysqlモジュールがMySQLとその依存関係のすべてをインストールされます。
インストールが完了したら、以下のコマンドを実行して、MySQLサービスを開始し、それが起動時に自動的に起動します:
sudoは--now mysqldを有効systemctl
入力して、MySQLサーバが動作しているかどうかを確認する:
sudoのsystemctlステータスmysqldを
次のように戻り情報は次のとおりです。
mysqld.service - MySQLは8.0データベースサーバは
ロード:(/usr/lib/systemd/system/mysqld.service;有効、PRESETベンダー:無効)ロード
アクティブ:(ランニング)アクティブは、木2019年10月17日夜09時09分39秒UTC以来、営業、15S前
注:MySQLの8.0をインストールするための手順が成功しました。
保護MySQLの操作
実行mysql_secure_installationスクリプトは、いくつかのセキュリティ関連の操作を実行し、MySQLのrootのパスワードを設定するには:
須藤のmysql_secure_installationの
システムは、VALIDATEパスワードプラグインを設定するように要求されます(認証パスワードプラグイン)、MySQLユーザーのパスワードの強度試験とは、セキュリティを向上させるためのプラグイン、パスワード認証ポリシーは3つのレベルに分かれています:低、中、強い、およびパスワードの検証プラグインを設定したくない場合は、Enterキーを押します。
次のプロンプトでは、あなたはこれが行われ、MySQLのrootユーザのパスワードを設定するよう求められます、スクリプトは、匿名ユーザーを削除し、ローカルコンピュータ上のルートアクセスを制限し、テスト・データベースを削除するように要求されます、あなたはすべての質問に答える必要があります「はい。」
コマンドラインからMySQLサーバと対話するために、以下の試験ルートアクセスを入力することで、依存関係としてインストールされているMySQLクライアントユーティリティを使用する:
MySQLの-uルートは-p
プロンプトが表示されたら、rootのパスワードを入力し、表示さMySQLのシェルとして、以下の:
;で終了するMySQLのモニタコマンドで購入可能です。.. G \または
上記のid上記のMySQLの接続が12
:8.0.17ソースのディストリビューションのサーバーバージョン
、これまでのところ、およびCentOSの8上のMySQL 8.0サーバーを保護するために設置されていますそしてそれを使用する準備ができて。
[ルート@サーバー1〜]#のmysql_secure_installationの
注:このスクリプトの実行されているすべてのPARTS FOR ALL MySQLをお勧めします
使用中の運用サーバー!PLEASE READ EACH注意深くSTEP!
アン順番がITにログインするためにMySQLを確保するために、私たちは現在の必要があります
ルートでユーザーのパスワード。あなただけのMySQLをインストールした場合、および
rootパスワードでSETを持っていないしていますまだ、してパスワードを空白で、されます
。SOあなただけ押して、壁紙がここに入力する必要があります
-最初の実行を直接入力し、<:(なしのために入力します)ルートの現在のパスワードを入力し
、[OK]を、成功裏に使用するパスワード、ONを移動...
誰というrootパスワードを確実に時の設定MySQLのINTO CANを記録する
ルート適切なユーザー認証はなし。
セットrootパスワード[Y / N-] < - rootパスワードを設定し、または直接運搬台車とyを入力しているのですか?
新しいパスワード:< -セットrootのパスワードを
再新しいパスワードを入力します。< -あなたが設定したパスワードを再入力してください
パスワード...失敗しましたエラー:!パスワードが現在のポリシー要件では満足しない場合は###ここに表示され
、パスワードの更新に成功し、その後、あなたはRoot_12rootは、最初のセットアップなどのウィザードMySQLのセキュリティ設定にパスワードを設定することができ、再入力してください!私たちは変更に従う
テーブル特権をリロード...
...成功!
デフォルトでは、MySQLのインストールA AN匿名は、誰もができるように、ユーザーを持っている
アカウントのユーザーを作成していたことがなくても、INTO A MySQLをログに記録する
それらを。これが唯一のテストを対象とするATにすることですインストール
ゴースムーズAは彼らがA.のに移る削除する前に万一によってビット
本番の環境。
削除をユーザーが匿名[Y- / N-] < - ?本番環境を削除することを提案し、匿名ユーザーを削除するかどうか、それは直接入力することができます
...成功!
だけルート万一通常の、 「localhost」のからの接続を許可する 。この
。誰かがネットワークでのrootのパスワードでATを推測できないことを保証します
!ルートリモートログインを禁止するかどうか、Yを選択/ nは、彼らのニーズと入力し、Enterキーを押し、提案された禁止に応じて-禁止するルートログインリモートで[Y / n]は<
!...成功
デフォルトで、MySQLは誰ができることを「テスト」という名前のデータベースが付属して
アクセスこれはまた、唯一のテストのために意図しており、削除する必要があります。
INTO Aプロダクションの環境を移動する前に。
削除テストデータベースとアクセスITに[Y- / N-] < - ?ですテスト・データベースを削除し、直接入力します
-落下テストデータベース...
...成功!
-テスト・データベースに対する権限を削除し...
...成功!
リロードウィルSO FARすべての変更内容によって、表ていることを確認の特権で
意志によってテイク効果がすぐにある。
表特権になりました[Y-リロード/? n]は< -権限テーブルをリロードするかどうかを直接入力します
...成功!
アップ...クリーニング
すべては、あなたが上記の手順で完了した場合の!すべて、MySQLのDONE
今インストールされた安全でなければなりませんが。
MySQLを使用して!してくれてありがとう
[ルート@サーバー1〜]#の
認証操作
エンドのCentOSで一部の顧客のための8 CentOSの8リポジトリが古いmysql_native_password認証プラグインは、デフォルトの上流のMySQL 8.0のリリースに設定されている、使用するのMySQL 8.0のサーバーが含まれているので、caching_sha2_password方法とツールとライブラリは、互換性がありません。
ほとんどの設定については、mysql_native_password方法は問題になりませんが、あなたは、デフォルトの認証プラグcaching_sha2_passwordを変更したい場合は、これが速くなると、次の構成ファイルを開いてくださいより優れたセキュリティを提供することができます:
sudoのvimのは/ etc /マイを。 cnf.d / MySQLのデフォルトは-authentication- plugin.cnfは
default_authentication_plugin caching_sha2_passwordの値が変更されます:
[mysqldを]
default_authentication_plugin = caching_sha2_password
近いし、ファイル保存し、変更を有効にするためにMySQLサーバを再起動します:
sudoのsystemctl再起動mysqldの
ことをここで追加するために変更パスワードの簡単な道
:MySQLの8.0は、パスワードの検証ルールを調整し
、MySQLの> SET、株式会社無料validate_password.policy = 0参加
のMySQL> SET、株式会社無料で参加validate_password.length = 1;
パスワードをリセット:
ALTER「パスワード」で識別されるユーザー「ルート」@「localhostの」;
ここでは、リモート接続のopenメソッドを追加するために
MySQLのデフォルトのリモートログインを許可していない、あなたがリモートアクセスをオンにする必要があります
することができます最初のビューユーザテーブル
MySQLの>を選択し、ユーザー、authentication_string、ホストユーザから、
デフォルトでローカルホスト
のMySQL>更新SETユーザホスト=「%」ユーザー=「ルート」;
この時点でホストができるれた全てのルートであり
、次に、この手順を改変書き込みこれは、行われなければならない、または効果を取ることができません。
FLUSH PRIVILEGESは、
その後、ファイアウォールをオンにします
[ルート@ localhostの〜]#ファイアウォール-CMD --zone =公共--add-ポート= 3306 / tcpの--permanent
成功
[ルート@ localhostの〜]#ファイアウォール-CMD --reloadの
成功