CentOS 7 で MySQL 5.7 をインストールして設定する

CentOS 7 で MySQL 5.7 をインストールして設定する

この記事では、以下の環境をテストします。

CentOS 7 64 ビット 最小 MySQL 5.7

yumソースを設定する

yum ソース rpm インストール パッケージは https://dev.mysql.com/downloads/repo/yum/ で見つかります。

rpm インストール パッケージ

MySQLソースをインストールする

# シェルをダウンロード> wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# mysql ソース シェルをインストール> yum localinstall mysql57-community-release-el7-11.noarch.rpm

次のコマンドを使用して、mysqlソースが正常にインストールされているかどうかを確認します。

shell> yum repolist が有効 | grep "mysql.*-community.*" 

mysqlソースが正常にインストールされました

MySQLをインストールする

yum installコマンドを使用してインストールする

shell> yum install mysql-community-server

MySQLサービスを開始する

CentOS 7では、サービスを開始/停止するための新しいコマンドはsystemctl start|stopです。

shell> systemctl start mysqld

systemctl status を使用してMySQLのステータスを表示します

shell> systemctl status mysqld

MySQL 起動ステータス

スタートアップを設定する

shell> systemctl enable mysqld shell> systemctl daemon-reload

ルートローカルアカウントのパスワードを変更する

mysql がインストールされると、生成されたデフォルトのパスワードが /var/log/mysqld.log ファイルに記録されます。 grep コマンドを使用して、ログ内のパスワードを見つけます。

shell> grep 'temporary password' /var/log/mysqld.log

一時パスワードを表示

初期パスワードで初めてログインした後、次のコマンドを使用してパスワードを変更します。

shell> mysql -uroot -p mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

または

mysql> set password for 'root'@'localhost'=password('MyNewPass4!');

その後、update setステートメントでパスワードを変更します。

mysql> use mysql; mysql> update user set password=PASSWORD('MyNewPass5!') where user='root';

注意: MySQL 5.7 には、パスワード セキュリティ チェック プラグイン (validate_password) がデフォルトでインストールされています。デフォルトのパスワード チェック ポリシーでは、パスワードに大文字と小文字、数字、特殊記号が含まれ、長さが 8 文字以上である必要があります。そうでない場合、「ERROR 1819 (HY000): パスワードが現在のポリシー要件を満たしていません」というエラーが表示されます。詳細なパスワードポリシーについては、MySQL公式サイトをご覧ください。

リモートログインユーザーの追加

デフォルトでは、ローカルにログインできるのは root アカウントのみです。別のマシン上の MySQL に接続する場合は、リモート接続を許可するアカウントを追加する必要があります。またはリモート接続を許可するようにルートを変更する(非推奨)

リモート接続を許可するアカウントを追加する

mysql> 'Zhangsan2018!' によって識別される 'zhangsan'@'%' に *.* のすべての権限を GRANT OPTION 付きで付与します。

リモート接続を許可するようにルートを変更する(非推奨)

mysql> use mysql; mysql> UPDATE user SET Host='%' WHERE User='root'; mysql> flush privileges;

デフォルトのエンコードをutf8に設定する

MySQL をインストールした後、デフォルトでは中国語がサポートされないため、エンコーディングを変更する必要があります。
/etc/my.cnf 構成ファイルを変更し、関連するノードの下にエンコーディング構成を追加します (存在しない場合は、自分で追加します)。

次のようにコードをコピーします

[mysqld]
文字セットサーバー=utf8
[クライアント]
デフォルトの文字セット=utf8
[mysql]
デフォルトの文字セット=utf8

mysql サービスを再起動し、エンコーディングを照会します。変更されたことがわかります。

shell> systemctl restart mysqld shell> mysql -uroot -p mysql> show variables like 'character%';

デフォルトのエンコード構成ファイルのパスを表示します:

設定ファイル: /etc/my.cnf
ログファイル: /var/log/var/log/mysqld.log
サービス起動スクリプト: /usr/lib/systemd/system/mysqld.service
ソケットファイル: /var/run/mysqld/mysqld.pid

以下もご興味があるかもしれません:
  • Centos7.3 で mysql5.7.18 をインストールして初期パスワードを変更する方法
  • MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル (CentOS7)
  • Linux CentOS MySQL 5.7.18 5.7.X インストール チュートリアル
  • CentOS MySQL 5.7 のコンパイルとインストールの詳細な手順
  • CentOS 7 でソースから MySQL 5.7.6+ をインストールするための詳細なチュートリアル
  • Centos7.3 に mysql5.7.18 をインストールするための詳細なチュートリアル
  • CentOS7 は rpm パッケージを使用して mysql 5.7.18 をインストールします
  • CentOS7 システムに MySQL 5.7.13 をコンパイルしてインストールする詳細な手順
  • Centos MySQL 5.7 のインストールとアップグレードのチュートリアル
  • Alibaba Cloud Centos7.3 インストール mysql5.7.18 rpm インストール チュートリアル
  • CentOS 7 に MySQL 5.7 をインストールするための詳細なチュートリアル
  • MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル (CentOS7)

<<:  Linux の文字端末でマウスを使って赤い四角形を移動する方法

>>:  JS 矢印関数に適さないシナリオは何ですか?

推薦する

Dockerコンテナ間の通信を実装する方法

シナリオ: laradock 開発環境 (php7.3+mysql5.7) がローカルに構築されてい...

JSはキャンバス技術を使用してeChartsの棒グラフを模倣します

Canvas は HTML5 の新しいタグです。js を使用して Canvas 描画 API を操作...

MYSQL トランザクション チュートリアル Yii2.0 マーチャント引き出し機能

序文私はプログラマーとしてスタートした PHP プログラマーです。これまで、トレーニング コースで勉...

SSH ポート転送とは何ですか?何の役に立つの?

目次序文1. ローカルポート転送2. リモートポート転送3. 動的ポート転送(SOCKS5) 4. ...

Vue-cliフレームワークはタイマーアプリケーションを実装します

技術的背景このアプリケーションは vue-cli フレームワークを使用し、カスタム コンポーネント ...

MySQLでBLOBデータを処理する方法

具体的なコードは次のとおりです。 パッケージ epoint.mppdb_01.h3c; java.i...

JavaScript におけるイベント委譲メカニズムと深いコピーと浅いコピーの簡単な分析

目次1. イベントの委任イベントバブリングイベントキャプチャイベントの泡立ちの昇華考える2. 深いコ...

JSON.stringify の簡易版の実装とその 6 つの主要機能の詳細な説明

目次序文JSON.stringify の 6 つの機能特集1特集2特集3特集4特集5特集6手動で文字...

MySQLでconcat関数を使用する方法

以下のように表示されます。 //managefee_managefee テーブルの年と月を照会し、c...

テーブルタグ(TAGS)の詳細な紹介

テーブルの基本構文<table>...</table> - テーブルを定義し...

MySQLデータをOracleに移行する正しい方法

mysql データベースには student テーブルがあり、その構造は次のとおりです。 Oracl...

Windows での MySQL 5.7.20 のインストールと設定方法のグラフィック チュートリアル

参考までにWindowsにMySQLをインストールします。具体的な内容は次のとおりです。 1.まずM...

ウェブフロントエンドコードを書く際の考慮事項のまとめ

1. HTMLタグの前に次のような文を追加するのが最適です。 <!DOCTYPE HTML P...

Nodejs でタイムドクローラーを実装する完全な例

目次事件の原因Node Scheduleを使用してスケジュールされたタスクを実装する1. node-...

BT Baota Panel php7.3 および php7.4 が ZipArchive をサポートしない問題の解決方法

Baota PanelのPHP7.3バージョンがZipArchiveをサポートしていないため、プログ...