Linux 7.6 バイナリに MySQL 8.0.27 をインストールする詳細な手順

Linux 7.6 バイナリに MySQL 8.0.27 をインストールする詳細な手順

1. 環境整備

1.1 オペレーティング システムのバージョン

[root@rhel76 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server リリース 7.6 (Maipo)

1.2 ディスク容量

[root@rhel76 ~]# df -TH
ファイルシステム タイプ サイズ 使用済み 空き容量 使用率 マウント先
/dev/mapper/rhel-root xfs 32G 4.6G 27G 15% /
devtmpfs devtmpfs 2.1G 0 2.1G 0% /dev
tmpfs tmpfs 2.1G 0 2.1G 0% /dev/shm
tmpfs tmpfs 2.1G 14M 2.1G 1% /実行
tmpfs tmpfs 2.1G 0 2.1G 0% /sys/fs/cgroup
/dev/sda1 xfs 996M 172M 825M 18% /boot
/dev/mapper/rhel-u01 xfs 30G 34M 30G 1% /u01
tmpfs tmpfs 413M 4.1k 413M 1% /run/user/42
tmpfs tmpfs 413M 46k 413M 1% /run/user/0

1.3 ファイアウォールをオフにする

[root@rhel76 ~]# systemctl ステータス ファイアウォールd
● firewalld.service - firewalld - 動的ファイアウォールデーモン
   ロード済み: ロード済み (/usr/lib/systemd/system/firewalld.service; 有効; ベンダープリセット: 有効)
   アクティブ: 2021-11-23 火曜 23:46:04 UTC からアクティブ (実行中)、9 分前
     ドキュメント: man:firewalld(1)
メイン PID: 9621 (firewalld)
    タスク: 2
   Cグループ: /system.slice/firewalld.service
           └─9621 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid


11月23日 23:46:03 rhel76 systemd[1]: 動的ファイアウォールデーモンであるfirewalldを起動しています...
11月23日 23:46:04 rhel76 systemd[1]: 動的ファイアウォールデーモンであるfirewalldを起動しました。

[root@rhel76 ~]# systemctl を停止します。firewalld
[root@rhel76 ~]# systemctl ファイアウォールを無効にする
シンボリックリンク /etc/systemd/system/multi-user.target.wants/firewalld.service を削除しました。
シンボリックリンク /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service を削除しました。

ここに画像の説明を挿入

1.4 SELinuxを無効にする

[root@rhel76 ~]# getenforce
施行

[root@rhel76 ~]# cp /etc/selinux/config /etc/selinux/config_`日付 +"%Y%m%d_%H%M%S"`
[root@rhel76 ~]# sed -i 's/SELINUX\=enforcing/SELINUX\=disabled/g' /etc/selinux/config

上記の変更が完了したら、[root@rhel76 ~]# rebootを再起動します。

[root@rhel76 ~]# getenforce
無効
[root@rhel76 ~]# sestatus
SELinux ステータス: 無効

1.5 HOST分析

[root@rhel76 ~]# cat /etc/hosts

127.0.0.1 ローカルホスト ローカルホスト.ローカルドメイン ローカルホスト4 ローカルホスト4.ローカルドメイン4
::1 ローカルホスト ローカルホスト.ローカルドメイン ローカルホスト6 ローカルホスト6.ローカルドメイン6
192.168.6.81 rhel76 さん

[root@rhel76 ~]# ホスト名
翻訳者

ここに画像の説明を挿入

1.6 MySQLのダウンロード

参考:
MD5: 0bdd171cb8464ba32f65f7bf58bc9533

ここに画像の説明を挿入

2. Yumのインストールと設定

2.1 ローカルCDイメージのマウント

[root@rhel76 ~]# mkdir -p /mnt/dvd/

[root@rhel76 ~]# df -TH
ファイルシステム タイプ サイズ 使用済み 空き容量 使用率 マウント先
/dev/mapper/rhel-root xfs 32G 4.7G 27G 15% /
devtmpfs devtmpfs 2.1G 0 2.1G 0% /dev
tmpfs tmpfs 2.1G 0 2.1G 0% /dev/shm
tmpfs tmpfs 2.1G 14M 2.1G 1% /実行
tmpfs tmpfs 2.1G 0 2.1G 0% /sys/fs/cgroup
/dev/sda1 xfs 996M 172M 825M 18% /boot
/dev/mapper/rhel-u01 xfs 30G 34M 30G 1% /u01
tmpfs tmpfs 413M 21k 413M 1% /run/user/0
tmpfs tmpfs 413M 13k 413M 1% /run/user/42
/dev/sr0 iso9660 4.5G 4.5G 0 100% /run/media/root/RHEL-7.6 Server.x86_64

[root@rhel76 ~]# /dev/sr0 /mnt/dvd をマウントします
マウント: /dev/sr0 は書き込み禁止なので、読み取り専用でマウントします
/var/spool/mail/rootにメールがあります

ここに画像の説明を挿入

2.2 yumソースの設定

[root@rhel76 ~]# cd /etc/yum.repos.d/
[root@rhel76 yum.repos.d]# cat >> /etc/yum.repos.d/redhat.repo << "EOF"
> [rhel7]
> name=jeames リポジトリ
> ベースURL=file:///mnt/dvd/
> gpgcheck=0
> 終了

2.3 依存パッケージをインストールする

[root@rhel76 ~]# yum -y groupinstall "開発ツール"
読み込まれたプラグイン: fastestmirror、product-id、search-disabled-repos、subscription-manager
このシステムはエンタイトルメント サーバーに登録されていません。subscription-manager を使用して登録できます。
インストールされたグループ ファイルがありません。
おそらく、yum groups mark convert を実行します (man yum を参照)
キャッシュされたホストファイルからミラー速度をロードする
警告: グループ開発にはインストールするパッケージがありません。
おそらく、yum groups mark install を実行します (man yum を参照)
要求されたグループにはインストールまたは更新できるパッケージがありません

[root@rhel76 ~]# yum -y インストール ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make

ここに画像の説明を挿入

3. MariaDBをアンインストールする

[root@rhel76 ~]# rpm -qa |grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64

[root@rhel76 ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

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

4.1 ユーザーとディレクトリの作成

注: 複数のインスタンスをデプロイし、ポートごとにルート ユーザーの操作を区別することができます:mkdir -p /mysql/data/mysql3306mkdir -p /mysql/app/mkdir -p /mysql/conf/mkdir -p /mysql/data/mysql3306/pid/mkdir -p /mysql/data/mysql3306/socket/mkdir -p /mysql/data/mysql3306/log/mkdir -p /mysql/data/mysql3306/binlog/mkdir -p /mysql/data/mysql3306/errlogmkdir -p /mysql/data/mysql3306/relaylog/mkdir -p /mysql/data/mysql3306/slowlog/mkdir -p /mysql/data/mysql3306/tmp/

4.2 ユーザーとグループ

[root@rhel76 ~]# グループ追加mysql
[root@rhel76 ~]# useradd -g mysql mysql
[root@rhel76 ~]# chown -R mysql:mysql /mysql
[root@rhel76 ~]# パスワード mysql
ユーザー mysql のパスワードを変更します。
新しいパスワード:
パスワードが正しくありません: パスワードが8文字未満です
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正常に更新されました。

[root@rhel76 ~]# cat /etc/group | grep mysql
mysql:x:1001:
[root@rhel76 ~]# cat /etc/passwd | grep mysql
mysql:x:1001:1001::/home/mysql:/bin/bash

ここに画像の説明を挿入

4.3 ソフトウェアパッケージをアップロードして解凍する

[root@rhel76 ~]# cp mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz /mysql/app
[root@rhel76 ~]# chown -R mysql:mysql /mysql

mysql ユーザー操作 [root@rhel76 ~]# su - mysql
ダウンロードしたソフトウェアパッケージが破損していないか、トロイの木馬が含まれていないかを確認するために、md5値を確認します。[mysql@rhel76 ~]$ cd /mysql/app
[mysql@rhel76 アプリ]$ ll
合計 1168588
-rw-r--r-- 1 mysql mysql 1196633756 11月24日 00:49 mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
[mysql@rhel76 アプリ]$ md5sum mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
0bdd171cb8464ba32f65f7bf58bc9533 mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz

パッケージを解凍し、名前を [mysql@rhel76 app]$ tar xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz に変更します。
[mysql@rhel76 アプリ]$ mv mysql-8.0.27-linux-glibc2.12-x86_64 mysql8.0.27

[mysql@rhel76 アプリ]$ ll
合計 1168588
drwxrwxr-x 9 mysql mysql 129 11月24日 00:54 mysql8.0.27
-rw-r--r-- 1 mysql mysql 1196633756 11月24日 00:49 mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz

ここに画像の説明を挿入

5. 環境変数の設定

cat >> /home/mysql/.bash_profile << "EOF"
MYSQL_HOME=/mysql/app/mysql8.0.27
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$MYSQL_HOME/bin
終了


ソース ~/.bash_profile
どのMySQL

ここに画像の説明を挿入

6. パラメータファイルを作成する

バイナリファイルのインストールなので、データベースパラメータファイルは自分で設定する必要があります。cat >> /mysql/conf/my3306.cnf << "EOF"
[mysqld]
サーバーID = 80273306
デフォルトのストレージエンジン=InnoDB
ベースディレクトリ=/mysql/app/mysql8.0.27
データディレクトリ=/mysql/data/mysql3306/data/
ソケット=/mysql/data/mysql3306/socket/mysql.sock
ログエラー=/mysql/data/mysql3306/log/mysqld.log
pid ファイル = /mysql/data/mysql3306/pid/mysqld.pid
ポート=3306
デフォルトのタイムゾーン='+8:00'
default_authentication_plugin=mysql_native_password # リモートログインするにはこのパラメータを追加します transaction_isolation=READ-COMMITTED
最大接続数=1500
バックログ=500
待機タイムアウト=1800
最大ユーザー接続数=800
innodb_buffer_pool_size=1024M
innodb_log_file_size=512M
innodb_log_buffer_size=40M
slow_query_log=オン
長いクエリ時間=5
# ログ設定 #
slow_query_log = オン
slow_query_log_file = /mysql/data/mysql3306/slowlog/slow3306.log
log_error = /mysql/data/mysql3306/errlog/err3306.log
ログエラーの詳細度 = 3
log_bin = /mysql/data/mysql3306/binlog/mysql_bin
log_bin_index = /mysql/data/mysql3306/binlog/mysql_binlog.index
general_log_file = /data/mysql/mysql3306/generallog/general.log
ログクエリがインデックスを使用していない = 1
ログ_遅い_管理ステートメント = 1
有効期限 = 90
binlog_expire_logs_seconds = 2592000 #30d
長いクエリ時間 = 2
検査行数の最小制限 = 100
ログスロットルクエリがインデックスを使用していない = 1000
innodb_flush_log_at_trx_commit=1

終了

7. データベースの初期化

mysql ユーザー操作:
mysqld --defaults-file=/mysql/conf/my3306.cnf --initialize --user=mysql --basedir=/mysql/app/mysql8.0.27 --datadir=/mysql/data/mysql3306/data/
注: 上記と同じ行が実行されます

8.Mysqlを起動する

[mysql@rhel76 ~]$ mysqld_safe --defaults-file=/mysql/conf/my3306.cnf --user=mysql &
[1] 21406
[mysql@rhel76 ~]$ 2021-11-24T06:14:23.240372Z mysqld_safe '/mysql/data/mysql3306/errlog/err3306.log' にログを記録しています。
2021-11-24T06:14:23.296992Z mysqld_safe /mysql/data/mysql3306/data のデータベースを使用して mysqld デーモンを起動しています

ここに画像の説明を挿入

9.Mysqlにログインする

初めてMySQLにログインするときは、エラーログの下にある初期化パスワードを見つける必要があります。私のパスワードは -(Qy5Aj9t,=a です。
ソケットとパスワードを使用してログインした後、何も照会できず、最初にルート パスワードを変更するように求められます。

[mysql@rhel76 ~]$ cat /mysql/data/mysql3306/errlog/err3306.log | grep パスワード

2021-11-24T06:12:14.610657Z 0 [注記] [MY-010309] [サーバー] --sha256_password_auto_generate_rsa_keys によって自動生成された RSA キー ファイルは、データ ディレクトリに配置されます。
2021-11-24T06:12:14.610686Z 0 [注記] [MY-010308] [サーバー] キーファイルがデータディレクトリに存在するため、--caching_sha2_password_auto_generate_rsa_keys による RSA キーペアの生成をスキップします。
2021-11-24T06:12:14.615367Z 6 [注記] [MY-010454] [サーバー] root@localhost の一時パスワードが生成されました: -(Qy5Aj9t,=a
2021-11-24T06:14:26.153958Z 0 [注記] [MY-010308] [サーバー] キー ファイルがデータ ディレクトリに存在するため、--sha256_password_auto_generate_rsa_keys による RSA キー ペアの生成をスキップします。
2021-11-24T06:14:26.153979Z 0 [注記] [MY-010308] [サーバー] キーファイルがデータディレクトリに存在するため、--caching_sha2_password_auto_generate_rsa_keys による RSA キーペアの生成をスキップします。

[mysql@rhel76 ~]$ mysql -uroot -p
パスワードを入力してください:
エラー 2002 (HY000): ソケット '/tmp/mysql.sock' 経由でローカル MySQL サーバーに接続できません (2)

## sock 経由でログインします [mysql@rhel76 ~]$ mysql -uroot -p -P 3306 -S /mysql/data/mysql3306/socket/mysql.sock
パスワードを入力してください:
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは8です
サーバーバージョン: 8.0.27


Copyright (c) 2000、2021、Oracle およびその関連会社。


OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。


ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。


mysql> ステータス
エラー 1820 (HY000): このステートメントを実行する前に、ALTER USER ステートメントを使用してパスワードをリセットする必要があります。

10. パスワードを変更する

mysql> arter use root@'localhost'識別 'root'; query ok、0列の影響imiter:;サーバーバージョン:8.0.27Protocolバージョン:10Connection:unix socketserver Charatereset:utf8mb4clientキャラクター:utf8mb4unix socken:utf8mb4unix socket:/mysql/data/mysql3306/smysqmsquckf/sockedime。 8 min 0 Secthreads:2つの質問:7スロークエリ:0開き:398フラッシュテーブル:3オープンテーブル:36秒あたりのクエリ:0.014 ------------------------------------------------

11. リモートログイン設定

以下のステートメントを使用して作成されたルート ユーザーは、Navicat などのクライアント経由でログインできません。
MySQL 8 以降、認証プラグインが変更されました。
デフォルトの「caching_sha2_password」ではリモートログインは許可されません。
したがって、ログインするにはこのプラグインを「mysql_native_password」に変更する必要があります。

mysql> 'root' によって mysql_native_password で識別されるユーザー root@'%' を作成します。
mysql> grant option を使用して、*.* のすべてを root@'%' に付与します。
mysql> 権限をフラッシュします。

mysql> mysql.user からユーザー、ホスト、プラグインを選択します。  
+------------------+------------+-----------------------+
| ユーザー | ホスト | プラグイン |
+------------------+------------+-----------------------+
| ルート | % | mysql_native_password |
| mysql.infoschema | ローカルホスト | caching_sha2_password |
| mysql.session | ローカルホスト | caching_sha2_password |
| mysql.sys | ローカルホスト | caching_sha2_password |
| ルート | ローカルホスト | mysql_native_password |
+------------------+------------+-----------------------+
セット内の行数は 5 です (0.00 秒)

ここに画像の説明を挿入

Linux 7.6 バイナリ システムに MySQL 8.0.27 をインストールする詳細な手順に関するこの記事はこれで終わりです。Linux 7.6 バイナリ システムに MySQL 8.0.27 をインストールする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL 8.0.27 のインストールと設定方法のグラフィック チュートリアル (Windows 64 ビット)
  • mysql8.0.27 の設定手順と注意事項
  • mysql-connector-java8.0.27 へのアップグレードに関する注意事項
  • Ubuntu 20 での MySQL 8.0.28 のインストールとアンインストールのチュートリアル
  • Ubuntu MySQL 8.0.28 のインストールと設定方法のグラフィックチュートリアル
  • Windows の無料インストール MySQL 8.0.28 バージョンのグラフィック チュートリアル
  • mysql 8.0.28 winx64.zip インストールと設定方法のグラフィックチュートリアル
  • Windows での MySQL 8.0.28 のインストールと設定のチュートリアル
  • MySQL 8.0.28 のインストールと設定方法のグラフィックチュートリアル
  • Windows での MySQL 8.0.27 のインストールと設定方法のグラフィック チュートリアル

<<:  Linux ネットワーク システムの紹介

>>:  CSS3のwebkit-box-reflectを巧みに使用して、さまざまな動的効果を実現します。

推薦する

エラー 2002 (HY000): ソケット '/tmp/mysql.sock' 経由でローカル MySQL サーバーに接続できません

エラーメッセージ:エラー 2002 (HY000): ソケット '/tmp/mysql.so...

mysql コマンドライン スクリプトの実行例

この記事では、例を使用して MySQL コマンドライン スクリプトの実行について説明します。ご参考ま...

MYSQL大規模書き込み問題の最適化の詳細な説明

概要: MySQL のパフォーマンス最適化について話すとき、誰もがクエリ パフォーマンスを向上させる...

Tomcat10 Catalinaのログの文字化けの問題を解決する

実行環境、Idea2020バージョン、Tomcat10、実行時にTomcat CatalinaLog...

最新の仮想マシン VMware 14 インストール チュートリアル

まず、VMware 14のアクティベーションコードをお渡ししますFF31K-AHZD1-H8ETZ-...

@font-face を使用して Web ページに特殊文字を実装する (カスタム フォントを作成する)

数日前、CSS を使用して三角形の矢印を実装する方法について記事を書きました。 目的の効果は達成され...

MySQL、Oracle、SQL Server のページングクエリ例の分析

最近、Oracle、MySQL、SQL Server 2005 のデータ ページング クエリについて...

HTMLはマウスをホバーしたときにテキストを表示するためにtitle属性を使用します。

コードをコピーコードは次のとおりです。 <a href=# title="ここに表示...

Mac で docker と kubectl の自動補完コマンドを追加する方法

kubectl の紹介kubectl は、k8s クラスターを操作するためのコマンドライン ツールで...

vuex で履歴を実装するためのサンプルコード

私は最近、ユーザー操作を元に戻す、またはやり直す機能を備えたビジュアル操作プラットフォームを開発して...

ES6の新機能に関する最もよく使われる知識ポイントのまとめ

目次1. キーワード2. 脱構築3. 文字列4. 正規化5. 配列6. 機能7. オブジェクト8.シ...

CentOS7 (YUM) での MySQL 5.7 のインストールと設定のチュートリアル

インストール環境: CentOS7 64ビット、MySQL5.7 1. YUMソースを設定するMyS...

Vue バックグラウンドでステータス ラベルをエレガントに記述する例

目次序文最適化変数の抽出二次包装 el-tag コンポーネント使用要約する序文バックエンドシステムの...

Keepalived は Nginx の負荷分散と高可用性のサンプル コードを実装します

第1章: keepalivedの紹介VRRP プロトコルの目的は、静的ルーティングの単一点障害問題を...