MySQLは、オープンソースのリレーショナルデータベース管理システムです。現在、オラクル社の下で開発されています。 MySQL 8は、本番アプリケーションのインストールと使用に使用できる最新バージョンです。 MySQL 8.0には、以前のバージョンに比べて多くの改善と2倍の処理速度があります。このバージョンでは、MySQLチームには、単一のデータベースを使用してSQLとNoSQLの両方のドキュメントアプリケーションを開発するためのドキュメントストアが含まれています。
このチュートリアルは、CentOS8およびRHEL8システムにMySQL8をインストールするのに役立ちます。
前提条件
CentOS8システムのsudo特権アカウントでシェルアクセスが必要です。
ステップ1-MySQLをインストールする
MySQL 8パッケージは、CentOS 8のAppStremリポジトリから入手できます。次のコマンドを使用して、必要なパッケージをインストールします。これにより、複数の依存パッケージもインストールされます。
sudo dnf -y install @mysql
インストールが完了したら、システムの起動時にMySQLサービスが自動起動できるようにします。また、初めて手動でサービスを開始します。
sudo systemctl enable mysqld.service sudo systemctl start mysqld.service
次に、次のコマンドを使用してサービスの現在のステータスを確認します。
sudo systemctl status mysqld.service
● mysqld.service - MySQL 8.0 database server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2020-02-25 04:43:13 UTC; 22s ago Main PID: 16666 (mysqld) Status: "Server is operational" Tasks: 39 (limit: 17963) Memory: 534.9M CGroup: /system.slice/mysqld.service └─16666 /usr/libexec/mysqld --basedir=/usr Feb 25 04:43:04 tecadmin systemd[1]: Starting MySQL 8.0 database server... Feb 25 04:43:04 tecadmin mysql-prepare-db-dir[16582]: Initializing MySQL database Feb 25 04:43:13 tecadmin systemd[1]: Started MySQL 8.0 database server.
ステップ2–MySQLの安全なインストール
MySQLのインストールが完了しました。これで、パスワードなしでMySQLサーバーに接続できますが、MySQLのインストールを保護することをお勧めします。 MySQLパッケージはmysql_secure_installation
を提供します セキュリティを適用するコマンド。ターミナルで次のコマンドを実行するだけです:
sudo mysql_secure_installation
画面の指示に従います。以下は、ユーザー入力が必要な詳細です。
- はいの場合はy|Yを押し、いいえの場合はその他のキーを押します: y
- 0 =LOW、1 =MEDIUM、2 =STRONGと入力してください: 2
- 新しいパスワード:[ここに強力なパスワードを入力]
- 新しいパスワードを再入力します:ここにパスワードを再入力します
- 提供されたパスワードで続行しますか?([はい]の場合はy | Yを押し、[いいえ]の場合は他のキーを押します): y
- 匿名ユーザーを削除しますか? (はいの場合はy | Yを押し、いいえの場合はその他のキーを押します): y
- rootログインをリモートで禁止しますか? (はいの場合はy | Yを押し、いいえの場合はその他のキーを押します): y
- テストデータベースを削除してアクセスしますか? (はいの場合はy | Yを押し、いいえの場合はその他のキーを押します): y
- 特権テーブルを今すぐリロードしますか? (はいの場合はy | Yを押し、いいえの場合はその他のキーを押します): y
ステップ3–MySQLを接続する
インストールが完了し、MySQLサーバーが保護されました。次に、コンソールを介してMySQLサーバーに接続するか、phpMyAdminをインストールしてグラフィカルWebインターフェイスを使用します。
mysql -u root -p
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 8.0.17 Source distribution Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
ステップ4–データベースとユーザーを作成する
「root」ユーザーを使用してアプリケーションからデータベースに接続することはお勧めしません。したがって、アプリケーションデータベース接続用に別のユーザーを作成することをお勧めします。以下は、新しいMySQLデータベースを作成してから、新しいMySQLユーザーを作成し、データベースに対する特権を割り当てるためのコマンドです。
要件に応じて、データベースとユーザー名を変更できます。また、ユーザーには強力なパスワードを使用してください。
mysql> CREATE DATABASE tecadmin; Query OK, 1 row affected (0.01 sec) mysql> CREATE USER 'tecadmin'@'localhost' IDENTIFIED BY 'your secure password here'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL ON tecadmin.* to 'tecadmin'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
次に、新しく作成したユーザーを使用してMySQLサーバーに接続し、使用可能なデータベースを一覧表示します。
mysql -u tecadmin -p
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 8.0.17 Source distribution Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | tecadmin | +--------------------+ 2 rows in set (0.01 sec) mysql>
結論
これで、CentOS8システムにMySQL8.0が正常にインストールおよび構成されました。サーバーは本番環境で使用する準備ができています。また、本番システムの自動データベースバックアップスクリプトを構成する必要がある場合もあります。