MySQL 5.7.18 バージョンのインストール パスのカスタマイズに関する詳細なチュートリアル (バイナリ パッケージのインストール)

MySQL 5.7.18 バージョンのインストール パスのカスタマイズに関する詳細なチュートリアル (バイナリ パッケージのインストール)

インストールパス: /application/mysql-5.7.18

1. 事前準備

MySQL 依存関係

リバイオ
yum インストール -y libaio

mysqlユーザーを作成し、このユーザーとしてmysqlを実行します。

ユーザー追加 -s /bin/false -M mysql

mysqlバイナリパッケージをダウンロードして解凍します

cd /ツール
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz をダウンロードします。
tar -zxf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /アプリケーション/

/applicationディレクトリに切り替え、mysqlフォルダ名を短くし、mysqlディレクトリへのソフトリンクを作成します。

cd /アプリケーション/
mysql-5.7.18-linux-glibc2.5-x86_64/mysql-5.7.18 をアップグレードしてください。
mysql-5.7.18 を再起動する

mysql ディレクトリに mysql-files を作成します。フォルダの権限は 750 です。mysql ディレクトリのグループとユーザーを再帰的に設定します。

mkdir mysql/mysql-files
chmod 750 mysql/mysql-files
chown -R mysql:mysql mysql-5.7.18/

2. mysqlディレクトリでの操作

cd mysql

データベースを初期化する

データベースディレクトリを保存するために、mysqlディレクトリにデータディレクトリが生成されます。

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

返された結果の最後の行の最後にランダムなパスワードがあります。私はそれを書き留めました:wa0I:1w?V--a

2017-04-28T02:49:00.853710Z 1 [注記] root@localhost の一時パスワードが生成されます: wa0I:1w?V--a

デフォルトのパスワードを空に設定する場合は、--initialize オプションを --initialize-insecure オプションに置き換えます。

bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data

SSLをインストールする

bin/mysql_ssl_rsa_setup --datadir /application/mysql/data/

データディレクトリへのパスを指定します

ユーザーとグループを変更する

chown -R ルート 。
chown -R mysqlデータmysqlファイル

mysql ディレクトリの下のデータ ディレクトリと mysql-files ディレクトリを除き、他のすべてのファイルの所有者は root に変更されます。

設定ファイルを変更する

sed -i 's/^datadir=\/var\/lib\/mysql/datadir=\/application\/mysql\/data/g' /etc/my.cnf
sed -i 's/^socket=\/var\/lib\/mysql\/mysql.sock/socket=\/tmp\/mysql.sock/g' /etc/my.cnf
sed -i 's/^log-error=\/var\/log\/mariadb\/mariadb.log/log-error=\/application\/mysql\/data\/err.log/g' /etc/my.cnf
sed -i 's/^pid-file=\/var\/run\/mariadb\/mariadb.pid/pid-file=\/application\/mysql\/data\/mysql.pid/g' /etc/my.cnf

は以下と同等です:

vi /etc/my.cnf
データディレクトリ=/application/mysql/data
ソケット=/tmp/mysql.sock
ログエラー=/application/mysql/data/err.log
pid ファイル = /application/mysql/data/mysql.pid
/etc/my.cnf の内容:
[mysqld]
データディレクトリ=/application/mysql/data
ソケット=/tmp/mysql.sock
# さまざまなセキュリティリスクを防ぐために、シンボリックリンクを無効にすることをお勧めします
シンボリックリンク=0
# systemd を使用する場合、ユーザーとグループの設定は無視されます。
# 別のユーザーまたはグループでmysqldを実行する必要がある場合は、
# mariadbのsystemdユニットファイルを以下のとおりカスタマイズします。
# http://fedoraproject.org/wiki/Systemd の手順
[mysqld_safe]
ログエラー=/application/mysql/data/err.log
pid ファイル = /application/mysql/data/mysql.pid
#
# configディレクトリからすべてのファイルをインクルードする
#
!includedir /etc/my.cnf.d

スタートアッププログラムをコピー

cp サポートファイル/mysql.server /etc/init.d/mysql

プログラムを起動するには、mysqlスタートアッププログラムを/etc/init.d/ディレクトリにコピーします。

スタートアップファイルを編集し、スタートアップディレクトリを構成する

方法1:

アイデアは、構成ファイルによって提供される変数に値を割り当てることです。さらに面倒。

sed -i 's/^basedir=/basedir=\/application\/mysql/g' /etc/init.d/mysql
sed -i 's/^datadir=/datadir=\/application\/mysql\/data/g' /etc/init.d/mysql
sed -i 's/^mysqld_pid_file_path=/mysqld_pid_file_path=\/application\/mysql\/data\/mysql.pid/g' /etc/init.d/mysql

これは、行 45 と 46 を置き換えることと同じです。

ベースディレクトリ=
データディレクトリ=
mysqld_pid_file_path=

置き換える

ベースディレクトリ=/application/mysql
データディレクトリ=/application/mysql/data
mysqld_pid_file_path=/application/mysql/data/mysql.pid

方法2(推奨):

アイデアとしては、スクリプトのデフォルト アドレス (/usr/local/mysql) をカスタム パス (/application/mysql) に直接置き換えて、変数に値を割り当てる必要がないようにすることです。

sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysql

この時点で、mysqlのインストールは完了し、通常どおり起動できます。

3. 遅い終了

ソフトリンクを作成するコマンド

mysqlコマンドから環境変数のディレクトリへのソフトリンクを作成し、ユーザーが変数内の対応するコマンドを見つけられるようにします。

ln -s /application/mysql/bin/* /usr/local/sbin

mysqlにログイン

[root@www mysql]# mysql -u root -p

パスワードを入力してください: #drRR0が以前に保存したランダムパスワードを入力してください

...

mysql> #mysqlコンソールに正常にログインしました

パスワード変更SQL文

mysql> 'NewPassWord' で識別されるユーザー 'root'@'localhost' を変更します。

#パスワードをNewPassWordに変更する

クエリは正常、影響を受けた行は 0 行 (0.01 秒) #変更は成功しました

終了するには、quit または Ctrl+d と入力します。

mysql>終了
さよなら
[root@www mysql]#
または
mysql> ^DBye
[root@www mysql]#

4. 共通コマンド

mysqlを入力する

mysql -u ルート -p

MySQLを起動する

サービスmysql開始

MySQLを停止する

サービスmysql停止

MySQLを再起動する

サービスmysqlの再起動

上記は、編集者が紹介した MySQL 5.7.18 バージョンのカスタム インストール パス (バイナリ パッケージ インストール) に関する詳細なチュートリアルです。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Linux での MySQL 5.7.18 バイナリ パッケージのインストール チュートリアル (デフォルトの構成ファイル my_default.cnf なし)
  • CentOS 6.5 に MySQL 5.7.17 バイナリ インストールとマルチインスタンス構成を展開する
  • Centos 7にmysql5.7.24バイナリバージョンをインストールする方法と解決方法
  • Centos7.5 は mysql5.7.24 バイナリ パッケージの展開をインストールします
  • CentOS 7 にコマンドライン経由で Linux 汎用バイナリ版の MySQL 5.7.11 をインストールする詳細なチュートリアル
  • Linux バイナリ ユニバーサル パッケージを使用して MySQL 5.6.20 をインストールするチュートリアル
  • Ubuntu システムに mysql5.6 をインストールする (バイナリ経由)
  • mysql 5.7.19 最新バイナリインストール
  • Linux での MySQL 5.6.24 (バ​​イナリ) 自動インストール スクリプト
  • MySQLバイナリのインストールとバックアップの全プロセス記録

<<:  React Hooksの使用例

>>:  vsftpd ユーザーが ssh 経由でログインすることを禁止する方法

推薦する

MySQL 8.0.18 のインストールと設定のグラフィックチュートリアル

学習目標: Windowsシステムを使用してMySQLデータベースをインストールする方法を学びます。...

HTMLでカスタムタグを使用する方法

カスタム タグは XML ファイルと HTML ファイルで自由に使用できますが、いくつか注意すべき点...

MySQL でトランザクションのコミットとロールバックを実装する方法の詳細な例

最近、データベース データのスケジュールされた移行を実行する必要があります。実行プロセス中に何らかの...

Nginx 仮想ホスト (IP ベース) を構成する 3 つの方法の詳細な説明

Nginx は、IP ベースの仮想ホスト構成、ポート ベースの仮想ホスト構成、ドメイン名ベースの仮想...

Javascriptでオブザーバーモードを実装する方法を教えます

目次オブザーバーパターンとは何ですか?シナリオシミュレーションコードの実装コードのリファクタリング要...

CSS で縦書きテキスト配置を実装する方法 (概要)

HTML でのテキストのデフォルトの配置は水平ですが、特殊な場合にはテキストを垂直に配置する必要が...

LeetCode の SQL 実装 (184. 部門内で最も高い給与)

[LeetCode] 184. 部門最高給与従業員テーブルにはすべての従業員が保存されます。すべて...

一般的なCSS3アニメーションの実装方法

1. 何ですかCSS アニメーションは、CSS を使用して拡張マークアップ言語 (XML) 要素をア...

git bash を使用して Linux にログインするための ssh の設定方法

1. まず、Linux サーバー上で公開鍵ファイルと秘密鍵ファイルを生成します。デフォルトの保存ディ...

CSS ロリポップを描くサンプルコード

背景: 毎日少しずつ進歩し、少しずつ積み重ねていけば、どんどん良くなっていきますコード: <!...

MySQL設定ファイルを変更できない問題の解決方法(Win10)

他の人のために解決した問題を記録します。問題の説明MySQLのバージョンは5.7、オペレーティングシ...

MySQL 8の新機能である降順インデックスの基礎となる実装の詳細な説明

降順インデックスとは何ですか?インデックスについてはよくご存知かもしれませんが、降順インデックスにつ...

CSS の vertical-align プロパティとベースラインの問題に関する深い理解

vertical-align属性は、主にインライン要素の配置を変更するために使用されます。インライン...

Linuxカーネルがプロセスアドレス空間に侵入し、プロセスメモリを変更する方法

プロセス アドレス空間の分離は、現代のオペレーティング システムの注目すべき機能です。これは、「古い...

CSSは、他のレイヤーを変更せずに、多層ネスト構造の最外層を回転させる効果を実現します。

次のようなシナリオがあります。円形のコンテナで、最も外側のコンテナの背景が円弧になっています。内側の...