RHEL7.5 mysql 8.0.11 インストールチュートリアル

RHEL7.5 mysql 8.0.11 インストールチュートリアル

この記事はRHEL7.5でのMySQL 8.0.11のインストールチュートリアルを記録しています。具体的な内容は次のとおりです。

まず、MySQL の公式サイトにアクセスして、mysql-8.0.11-el7-x86_64.tar をダウンロードし、解凍します。
mysql の初期化と起動には mysql ユーザーが必要なので、mysql ユーザーを作成します。

ユーザー追加 -d /home/mysql -m -s /bin/bash mysql

テストの結果、システムにインストールされているmariadb関連のmysqlが起動時にエラーを報告することが判明したため、mariadb関連のパッケージをアンインストールしました。

[root@rhel mysql]# yum 削除 mariadb*
読み込まれたプラグイン: axelget、fastestmirror、langpacks、product-id、search-disabled-
  : リポジトリ、サブスクリプション マネージャー
このシステムはエンタイトルメント サーバーに登録されていません。subscription-manager を使用して登録できます。
依存関係の解決
--> トランザクションチェックを実行中
---> パッケージ mariadb-libs.x86_64 1:5.5.56-2.el7 が削除されます
--> 依存関係の処理: パッケージ: 2:postfix-2.10.1-6.el7.x86_64 の libmysqlclient.so.18()(64 ビット)
--> 依存関係の処理: libmysqlclient.so.18(libmysqlclient_18)(64 ビット)、パッケージ: 2:postfix-2.10.1-6.el7.x86_64
--> トランザクションチェックを実行中
---> パッケージ postfix.x86_64 2:2.10.1-6.el7 が削除されます
--> 依存関係の解決が完了しました
epel/x86_64/group_gz | 266 KB 00:00 

依存関係が解決されました

================================================================================
 パッケージ アーキテクチャ バージョン リポジトリ サイズ
================================================================================
削除:
 mariadb-libs x86_64 1:5.5.56-2.el7@ベース 4.4M
依存関係の削除:
 ポストフィックス x86_64 2:2.10.1-6.el7@ベース 12M

取引概要
================================================================================
1 つのパッケージを削除 (+1 つの依存パッケージ)

設置サイズ: 17M
これでいいですか [y/N]: y
パッケージをダウンロードしています:
トランザクションチェックを実行中
トランザクションテストの実行
トランザクションテストが成功しました
トランザクションの実行
 削除中: 2:postfix-2.10.1-6.el7.x86_64 1/2 
 消去中: 1:mariadb-libs-5.5.56-2.el7.x86_64 2/2 
ベースにメタデータがありません
コードにメタデータがありません
epel のメタデータはありません
追加コンテンツにメタデータはありません
更新に利用できるメタデータがありません
キャッシュされたホストファイルからミラー速度をロードする
 * ベース: mirrors.aliyun.com
 * 参照: mirrors.ustc.edu.cn
 * 追加情報: mirrors.aliyun.com
 * 更新情報: mirrors.aliyun.com
epel/x86_64/primary_db | 6.3 MB 00:01 
 検証中: 1:mariadb-libs-5.5.56-2.el7.x86_64 1/2 
 検証中: 2:postfix-2.10.1-6.el7.x86_64 2/2 

削除:
 mariadb-libs.x86_64 1:5.5.56-2.el7      

依存関係が削除されました:
 postfix.x86_64 2:2.10.1-6.el7       

完了!


次のコマンドを使用してデータベースを初期化します。データ ファイルのディレクトリとして /var/lib/mysql が使用されます。

シェル> bin/mysqld --initialize --user=mysql

したがって、初期化時に対応するファイル ディレクトリを指定できます。

bin/mysqld --initialize --basedir=/home/mysql --datadir=/home/mysql/data --user=mysql

初期化中に一時パスワードが生成されます。このパスワードを覚えておいてください。このパスワードは MySQL にログインするときに必要になります。ログイン後にパスワードを再度変更してください。

mysql インスタンスを起動します。

bin/mysqld --user=mysql
bin/mysqld_safe ベースディレクトリ = /home/mysql --datadir = /home/mysql/data --user = mysql

–user=mysql を追加しないと、次のプロンプトが表示されます。

2018-04-22T15:47:25.471462Z 0 [ERROR] [MY-010123] [Server] 致命的なエラー: mysqld を root として実行する方法を確認するには、マニュアルの「セキュリティ」セクションをお読みください。
2018-04-22T15:47:25.471514Z 0 [エラー] [MY-010119] [サーバー] 中止しています

これにより、MySQL インスタンスが正常に起動できなくなります。

MySQL を起動したら、root ユーザーとしてログインし、ランダムに生成されたパスワードを使用します。ログイン後、他の操作を実行する前に、次のコマンドで root ユーザーのパスワードを変更します。

パスワードを 'root' に設定します。

RHEL7 サービスの systemctl スクリプトは、/usr/lib/systemd/ に保存されます。これは、システム (system) とユーザー (user) に分かれています。たとえば、ログインせずに実行する必要があるプログラムは、システム サービス、つまり /usr/lib/systemd/system ディレクトリに保存する必要があります。

各サービスは .service で終わり、一般的に [Unit]、[Service]、[Install] の 3 つの部分に分かれています。ここで MYSQL を追加します。具体的な内容は以下のとおりです。

/usr/lib/systemd/system/mysql.service をcatします。
[ユニット]
説明=mysql サーバー
後=ネットワーク.ターゲット
後=syslog.target

[インストール]
WantedBy=マルチユーザー.ターゲット

[サービス]
ユーザー=mysql
グループ=mysql

タイプ=フォーク
# 事前スクリプトと事後スクリプトをルートとして実行する
権限開始のみ=true
# メインサービスを開始
ExecStart=/home/mysql/bin/mysqld --daemonize
ExecStop=kill -s -QUIT $MAINPID
再起動=失敗時
再起動防止終了ステータス=1
プライベートTmp=偽

systemctl を使用して、mysql サービスを起動、再起動、シャットダウンできます。

素晴らしいトピックの共有:

MySQL の異なるバージョンのインストール チュートリアル

さまざまなバージョンの MySQL 5.7 インストール チュートリアル

さまざまなバージョンの MySQL 5.6 インストール チュートリアル

さまざまなバージョンのmysql8.0インストールチュートリアル

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL 8.0.11 の詳細なインストール手順
  • MySQL 8.0.11 のインストールと設定方法のグラフィックチュートリアル
  • MySQL 8.0.11 MacOS 10.13 のインストールと設定方法のグラフィックチュートリアル
  • MySQL 8.0.11 winx64 のインストールと設定方法のグラフィックチュートリアル
  • MySQL 8.0.12 のインストールと設定方法のグラフィックチュートリアル
  • MySQL 8.0.12 のインストールと設定のグラフィックチュートリアル
  • MySQL 8.0.12 解凍バージョンのインストールチュートリアル
  • mysql インストーラ コミュニティ 8.0.12.0 インストール グラフィック チュートリアル
  • MySQL 8.0.12 インストール設定方法とパスワード変更
  • MySQL 8.0.11 MSI バージョンのインストールと構成のグラフィック チュートリアル

<<:  シンプルなタブバー切り替えコンテンツバーを実装するJavaScript

>>:  Nginx リバース プロキシはポート 80 のリクエストを 8080 に転送します

推薦する

MySQLテーブルシャーディングとパーティショニングの具体的な実装方法

縦型テーブル垂直テーブル分割とは、多数の列を持つテーブルを複数のテーブルに分割することを意味します。...

CSS を使用して fullpage.js のフルスクリーン スクロール効果を実装するサンプル コード

最近 CSS を勉強していたとき、 2 つの CSS プロパティだけを使用して全画面スクロール効果を...

MySQLの暗黙的な変換について話す

作業の過程で、暗黙的な変換が発生するケースが数多くあります。暗黙的な変換は、クエリの速度低下を引き起...

MySQLのデッドロックとログに関する詳細な説明

最近、MySQL オンラインでいくつかのデータ異常が発生しましたが、すべて早朝に発生しました。ビジネ...

Linux で AIDE に基づいてファイルシステムの整合性を検出する方法

1. 補助AIDE (Advanced Instruction Detection Environm...

Excel エクスポートは docker 環境では常に失敗する

Excel のエクスポートは、docker 環境では常に失敗します。最も直接的な原因は、中国語フォン...

更新SQL文に基づくMySQLロックの理解

序文MySQL データベース ロックは、データの一貫性を実現し、同時実行性の問題を解決するための重要...

コンテンツタイプの説明、つまりHTTPリクエストヘッダーのタイプ

コンテンツ タイプについて学ぶには、まずそれが何であるか、そして何に使用されるかを知る必要があります...

ウェブフロントエンドエンジニアにおすすめのヒント

まず、Webフロントエンドエンジニアの価値についてお話ししましょう。現在、Web製品のインタラクショ...

CSS 境界線の半分または部分的に表示される実装コード

1. 疑似クラスを使用して境界線の半分を表示する <!DOCTYPE html> <...

MySQL Routerのインストールと展開

目次01 MySQLルーターの紹介MySQL Router とは何ですか? 02 MySQLルータの...

CentOS8 でローカル yum ソースを構成するための詳細なチュートリアル

centos8 ディストリビューションは、BaseOS および AppStream リポジトリを通じ...

HTMLデザインパターンの日々の勉強ノート

HTML デザインパターン学習ノート今週は主にHTMLデザインパターンを学びました。学習内容をまとめ...

JSONP クロスドメインシミュレーション Baidu 検索

目次1. JSONPとは何か2. JSONPクロスドメインリクエスト3. Baidu検索をシミュレー...

ファイルのダウンロードを実現する javascript Blob オブジェクト

目次例示する1. ブロブオブジェクト2. フロントエンド3. バックエンド要約する例示する最近、ファ...