Linux で複数の mysql5.7.19 (tar.gz) ファイルをインストールする方法

Linux で複数の mysql5.7.19 (tar.gz) ファイルをインストールする方法

LinuxでのMySQL-5.7.19バージョンの初心者向けの最初のインストールについては、前の記事を参照してください。すでにインストール方法がわかっている場合は、Linuxで複数のmysql-5.7.19をインストールするには、この記事を参照してください。

環境: CentOS 6.5

1- ダウンロード


2- ログインをスキップ


3-1 複数のデータベースをインストールする場合は、独自のmy.cnfを設定する必要があります。1つのデータベースのみをインストールし、システムがそれをインストールしていない場合は、次のコマンドを使用できます。

シェル> グループ追加 mysql
シェル> useradd -r -g mysql -s /bin/false mysql
シェル> cd /usr/local
シェル> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s mysqlへのフルパス-バージョン-OS mysql
シェル> cd mysql
シェル> mkdir mysql-files
データディレクトリがあるかどうかを確認します。ない場合は、コマンドを追加します (mkdir data)
シェル> chmod 750 mysql-files
シェル> chown -R mysql 。
シェル> chgrp -R mysql 。
シェル> bin/mysql_install_db --user=mysql # MySQL 5.7.5
shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 以上
shell> bin/mysql_ssl_rsa_setup # MySQL 5.7.6 以上
シェル> chown -R root 。
シェル> chown -R mysqlデータmysqlファイル
シェル> bin/mysqld_safe --user=mysql &
# 次のコマンドはオプションです
シェル> cp サポートファイル/mysql.server /etc/init.d/mysql.server

インストールしたら、ログイン手順5に直接進むことができます。

複数の MySQL インスタンスのインストールについては、以下で説明します。

3-2 複数のデータベースをインストールするには、次のコマンドに従う必要があります。

1-設定ファイル my.cnf を追加します (mysql ディレクトリでコマンド touch my.cnf を実行します)。

以下の設定ファイルは貼り付けを使用して直接コピーできます。

次に、ログファイル /xcxyz/log/mysql/error.log を作成します。

[mysqld]
ベースディレクトリ = /usr/local/mysql-5.7.19-3307
データディレクトリ = /usr/local/mysql-5.7.19-3307/data
ポート = 3307
文字セットサーバー=utf8
サーバーID = 11
#ソケットを指定するのがベストです。指定しない場合は、デフォルトのソケットファイルがデフォルトで使用され、データベースにログインするときに次の問題が発生します。socket = /tmp/mysql3307.sock 
ログエラー = /xcxyz/log/mysql/error.log
pid ファイル = /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid

2-次のコマンドを実行します

2-1 ユーザー グループを追加する 私のユーザーとグループは mysqlosf を使用しています。

シェル> グループ追加 mysql
シェル> useradd -r -g mysql -s /bin/false mysql
シェル> cd /usr/local
シェル> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

2-2 ソフト接続を確立する:

shell> ln -s mysqlへのフルパス-バージョン-OS mysql
シェル> cd mysql
シェル> mkdir mysql-files

データディレクトリがあるかどうかを確認します。ない場合は、コマンドを追加します (mkdir data)

2-3 現在のディレクトリを承認します。

シェル> chmod 750 mysql-files
シェル> chown -R mysqlosf 。
シェル> chgrp -R mysqlosf 。

2-4 コンパイル

bin/mysqld --defaults-file=/usr/local/mysql-VERSION-OS へのフルパス/my.cnf --initialize --user=mysqlosf

ログ出力を表示: vi /xcxyz/log/mysql/error.log
2017-07-24T03:13:47.933684Z 0 [警告] 暗黙の DEFAULT 値を持つ TIMESTAMP は非推奨です。--explicit_defaults_for_timestamp サーバー オプションを使用してください (詳細についてはドキュメントを参照してください)。
2017-07-24T03:13:49.979892Z 0 [警告] InnoDB: 新しいログ ファイルが作成されました。LSN=45790
2017-07-24T03:13:50.262941Z 0 [警告] InnoDB: 外部キー制約システム テーブルを作成しています。
2017-07-24T03:13:50.330756Z 0 [警告] 既存の UUID が見つからないため、このサーバーが初めて起動されたと想定します。新しい UUID を生成しています: 1d702294-701e-11e7-98a1-00163e30bbf6。
2017-07-24T03:13:50.340474Z 0 [警告] Gtid テーブルは使用準備ができていません。テーブル 'mysql.gtid_executed' を開くことができません。
2017-07-24T03:13:50.344419Z 1 [注意] root@localhost の一時パスワードが生成されます: jZpgHhigx5>i (後でパスワードを初期化する際に特に重要)

2-5 キーの確立

シェル> bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf 

這里寫圖片描述

2-6 再認可の割り当て

シェル> chown -R root 。
シェル> chown -R mysqlデータmysqlファイル

2-7 バックグラウンドmysqlを起動する

bin/mysqld_safe --defaults-file=/usr/local/mysql-VERSION-OS へのフルパス/my.cnf --user=mysqlosf &

次のコマンドはオプションです

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

2-8 mysqlが起動しているか確認する ps -ef | grep mysql

4 MySQLにログインし、先ほどの一時パスワードを使用してパスワードを変更します。


ここでまた問題が発生しました、ハハ、ログインできません

ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワード使用:YES) 解決策は以下の通りです

ログインすると、先ほどの仮パスワードを使って直接ログインし、パスワードを設定することができます。

5-MySQL にログインした後、すぐにパスワードを変更する必要があります。そうしないと、いかなる操作も実行できなくなります。 'root'@'localhost'のパスワードを変更するには、次のコマンドを実行します。

パスワードの設定 = PASSWORD('root');
 ALTER USER 'root'@'localhost' パスワードの有効期限を決して切らさないでください。 
権限をフラッシュします。

6-リモートでログインするには、「root」@「%」アカウントを追加します。

'root' によって識別される 'root'@'%' に、GRANT オプションを使用して *.* のすべての権限を付与します。

7- ローカルテスト接続

上記の方法に従って、mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz を解凍してインストールし、ポート 3308、3309 に設定すると、複数の mysql をインストールできます。

ソリューションはインストールされていますが、ログインできません:
私の場合と同じであれば、理由は次のとおりです。赤枠内の英語は、2番目のmysqlでソケットとポートを指定する必要があることを意味します。英語の意味は、ソケットを指定しないと、複数のmysqlをインストールするためデフォルトが選択されるため、これを指定する必要があるということです。

mysql --socket=/tmp/mysql3307.sock --port=3307 -uroot -p 

誤ってパスワードを紛失した場合、またはパスワードの有効期限が切れた場合は、次の方法でリセットできます。

這里寫圖片描述

5- パスワードのリセット:

5-1 プロセスを終了する

`cat /usr/local/mysql-5.7.19-3307/data/mysql-5.7.19-3307.pid` を強制終了します。

5-2 mysql-initファイルを作成する


5-2-1 文書の内容

最初のコンテンツ:

ALTER USER 'root'@'localhost' は 'mysqlosf' によって識別されます。 

這里寫圖片描述

コンテンツを保存してから開始

次のようにコードをコピーします
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &

上記のコンテンツが失敗した場合は、2番目のコンテンツを選択してください

mysql.user を更新します
 SET 認証文字列 = PASSWORD('MyNewPass'), パスワード有効期限 = 'N'
 ここで、User = 'root'、Host = 'localhost';
権限のフラッシュ;

這里寫圖片描述

コンテンツを保存してから開始

次のようにコードをコピーします
bin/mysqld_safe --defaults-file=/usr/local/mysql-5.7.19-3307/my.cnf --init-file=/usr/local/mysql-5.7.19-3307/mysql-init --user=mysqlosf &

這里寫圖片描述

素晴らしいトピックの共有: MySQL のさまざまなバージョンのインストール チュートリアル MySQL 5.7 バージョンのインストール チュートリアル MySQL 5.6 バージョンのインストール チュートリアル

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

以下もご興味があるかもしれません:
  • Linux での MySQL 5.7.19 (tar.gz) インストール グラフィック チュートリアル
  • Linux で mysql 5.7.17.tar.gz をインストールするための詳細なチュートリアル
  • Linux に mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz をインストールする
  • Linux CentOS 6.5 のアンインストール、tar、および MySQL のインストールチュートリアル

<<:  LinuxでSVNサーバーを構築する方法

>>:  Vueプロジェクトウォッチで関数が繰り返しトリガーされる問題の解決

推薦する

CSSはラジオをクリックして2つの画像スタイルを切り替えますが、複数のラジオのうち1つだけをチェックできます。

クリックされたボタンには赤い画像スタイルを実装し、選択されていない他のボタンには灰色の画像スタイルを...

MySQL 学習ノート: データ エンジン

現在のデータベースでサポートされているエンジンを表示します エンジンを表示 +-----------...

完全なショッピングカートを実装するためのミニプログラム

ミニプログラムは、参考までに完全なショッピングカート[すべて選択/選択解除して金額を計算/加算と減算...

Vue におけるキープアライブ マルチレベル ルーティング キャッシュの問題

目次1. 問題の説明2. 原因分析3. 解決策4. 処理1. 問題の説明調整センターでは、最後の 2...

rem をモバイル デバイスに適応させる方法の例

序文モバイル端末のREM適応ソリューションのレビューと概要remの使い方rem 単位の計算は、HTM...

Spring Cloud での Docker デプロイメントに jib を使用する詳細な手順

ジブの紹介Jib は Google が開発した、Java アプリケーションの Docker および ...

JSはモバイル端末の画面を1つずつ上下にスライドさせる機能を実装します

この記事では、モバイル端末を一度に1画面ずつ上下にスライドさせるためのJSの具体的なコードを参考まで...

Kylin V10 サーバーで Storm をコンパイルしてインストールする詳細なプロセス

1 はじめにApache Storm は、Hadoop と同様に、大量のデータを処理するために使用で...

MySQLのnull値に関する小さな問題

今日、null 値をテストしていたところ、小さな問題が見つかりました。ここに記録しました。以前にも遭...

nginx でクロスドメイン障害修復を構成する方法の例

Nginxのクロスドメイン設定は次のようには機能しません サーバー{ 聞く 80; server_n...

WeChat パブリック アカウントの録音ファイルを再生して保存します (amr ファイルを mp3 に変換)

目次オーディオトランスコーディングツール原理JAVE プロジェクトの問題このプロジェクトの特徴拡張機...

非常に詳細な基本的なJavaScript構文ルール

目次01 JavaScript(略称:js) js は 3 つの部分に分かれています。 JavaSc...

JSはユーザー登録インターフェース機能を実装します

この記事の例では、ユーザー登録インターフェース機能を実装するためのJSの具体的なコードを参考までに共...

Vue.js フロントエンド Web ページ ポップアップ非同期動作例の分析

目次1. 序文2. ポップアップコンポーネントを2つ見つける3. 自分で作る3.1. Promise...