Centos7環境でMySQL 5.6のインスタンスを複数作成する方法の詳細な説明

Centos7環境でMySQL 5.6のインスタンスを複数作成する方法の詳細な説明

この記事では、CentOS 7 環境で MySQL 5.6 の複数のインスタンスを作成する方法について説明します。ご参考までに、詳細は以下の通りです。

1. MySQLインストールディレクトリの説明

mysql5.6 は、/data/mysql56 にバイナリ インストール パッケージとしてインストールされます。データ ディレクトリは /data/mysql56/data です。構成ファイルは /etc/my.cnf です。

2. マルチインスタンスディレクトリの説明

/mysql インスタンス
|-- 3308
|-- data #3308 インスタンスデータディレクトリ
|-- 3309
|-- data #3309 インスタンスデータディレクトリ

> mkdir -p /mysql-instance/3308/data
> mkdir -p /mysql-instance/3309/data

3. 構成ファイルをインスタンスディレクトリにコピーする

> cp /data/mysql56/support-files/my-default.cnf /mysql-instance/3308/my.cnf
> cp /data/mysql56/support-files/my-default.cnf /mysql-instance/3309/my.cnf

4. 設定ファイルを変更する

> vi /mysql-instance/3308/my.cnf
> vi /mysql-instance/3309/my.cnf

[クライアント]
ポート = 3308
ソケット = /mysql-instance/3308/mysql.sock
[mysql]
自動再ハッシュなし
[mysqld]
ユーザー = mysql
ポート = 3308
ソケット = /mysql-instance/3308/mysql.sock
ベースディレクトリ = /data/mysql56
データディレクトリ = /mysql-instance/3308/data
pid ファイル = /mysql-instance/3308/mysql.pid
リレーログ = /mysql-instance/3308/リレーbin
リレーログ情報ファイル = /mysql-instance/3308/relay-log.info
サーバーID = 12
[mysqld_safe]
ログエラー = /mysql-instance/3308/mysql.err
pid ファイル = /mysql-instance/3308/mysql.pid

3309の設定は上記と同じですが、3308を3309に置き換えるだけです。

5. MySQLマルチインスタンス起動ファイルを作成する

>vi /mysql-instance/3308/mysql
>vi /mysql-instance/3309/mysql

#!/bin/sh
ポート=3308
mysql_user="root"
#独自のデータベースパスワードを入力してください mysql_pwd="123456"
cmd_path="/data/mysql56/bin"
mysql_sock="/mysql-instance/${port}/mysql.sock"
mysql_start() {
  if [ ! -e "$mysql_sock" ];その後
    printf "mysql 開始...\n"
    /bin/sh ${cmd_path}/mysqld_safe --defaults-file=/mysql-instance/${port}/my.cnf 2>&1 > /dev/null &
  それ以外
    printf "mysql が実行中です...\n"
    出口
  フィ
}
mysql_stop() {
  if [ ! -e "$mysql_sock" ];その後
    printf "mysql は停止しています...\n"
    出口
  それ以外
    printf "mysql 停止...\n"
    ${cmd_path}/mysqladmin -u ${mysql_user} -p${mysql_pwd} -S /mysql-instance/${port}/mysql.sock シャットダウン
  フィ
}
mysql_restart() {
  printf "mysql を再起動します...\n"
  mysql_stop
  睡眠2
  mysql_start
}
ケース$1
  開始) mysql_start ;;
  停止)mysql_stop;;
  再起動)mysql_restart ;;
*)
printf "使用方法: /data/${port}/mysql {start|stop|restart}\n"
エサック

6. MySQLユーザーディレクトリの権限を承認する

> chown -R mysql.mysql /mysql-instance
> chmod 700 /mysql-instance/3308/mysql
> chmod 700 /mysql-instance/3309/mysql

7. MySQLマルチインスタンスデータベースファイルを初期化する

> cd /daa/mysql56/scripts
> ./mysql_install_db --basedir=/data/mysql56 --datadir=/mysql-instance/3308/data --user=mysql
> ./mysql_install_db --basedir=/data/mysql56 --datadir=/mysql-instance/3309/data --user=mysql

8. 複数のMySQLインスタンスを起動する

> /mysql-instance/3308/mysql スタート
> /mysql-instance/3309/mysql スタート
> netstat -lntup|grep 330

9. MySQLインスタンスにログインする

> mysql -uroot -p -S /mysql-instance/3308/mysql.sock

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL 共通関数の概要」、「MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキル」、および「MySQL データベース ロック関連スキルの概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL マルチインスタンス構成ソリューション
  • CentOS 6.5 に MySQL 5.7.17 バイナリ インストールとマルチインスタンス構成を展開する
  • mysqld_multi を使用して単一のマシンに複数のインスタンスをデプロイする方法に関する MySQL チュートリアル
  • MySQLの導入と1台のマシンでのマルチインスタンス導入を迅速に実装
  • Linux に MySQL の複数のインスタンスをインストールしてデータ バックアップ サーバーとし、マルチ マスターから 1 つのスレーブへのマルチ インスタンス バックアップを実現する
  • MySQLマルチインスタンスインストールに基づく詳細な分析
  • シェルはmysqld_multiを使用して、複数のインスタンスのスレーブライブラリスクリプトを自動的に作成します。
  • CentOS7.5 は mysql_multi を使用して MySQL5.7.28 の複数インスタンスをインストールします (詳細説明)
  • MySQLデータベース入門:マルチインスタンス構成方法の詳しい説明

<<:  Linux のハードリンクとソフトリンクの原理と使用法の分析

>>:  期間限定フラッシュセール機能を実装するJavaScript

推薦する

JavaScriptクロージャの原理と機能の詳細な説明

目次導入クロージャの使用カレー作りパブリック変数の実装キャッシュカプセル化(属性のプライベート化)閉...

Vue3 コンポジション API でロジックの再利用を実装する方法

Composition API はロジック再利用手順を実装します。ロジックコードを関数に抽出します。...

JavaScript でよく使われるいくつかの文字列メソッドの概要 (初心者必読)

JavaScriptでよく使われるいくつかの文字列メソッド文字列は読み取り専用データです。よく使用...

フロントエンドセキュリティの詳細な説明: JavaScript の http ハイジャック対策と XSS

目次HTTP ハイジャック、DNS ハイジャック、XSS HTTPハイジャックDNSハイジャックXS...

uniapp エントリーレベル nvue クライミングピット記録の分析

目次序文こんにちは世界画像 境界線の半径を設定する実ピクセルを設定する外部CSSをインポートttfフ...

CSS で波の効果を作成するためのアイデア

以前、純粋な CSS を使用して波の効果を実現する方法をいくつか紹介しました。それらについては、次の...

VirtualBox でのホストオンリー + NAT モードのネットワーク構成

VirtualBoxのHost Only+NATモードのネットワーク構成は参考用です。具体的な内容は...

Windows で MySQL 5.7.17 圧縮バージョンをインストールするときに遭遇する落とし穴

まず、Windows 64 ビット用の最新の MySQL 5.7.17 コミュニティ圧縮バージョンを...

Linux の traceroute コマンドの使用方法の詳細な説明

Traceroute を使用すると、情報がコンピュータからインターネットの反対側のホストまでたどるパ...

ログインボックスのメールプロンプトを実装するネイティブJS

この記事では、登録またはログイン時に電子メール アドレスを入力する際のドロップダウン プロンプトのネ...

CentOS 7.4 で MySQL 5.7.28 バイナリモードをインストールする方法

Linuxシステムバージョン: CentOS7.4 MySQL バージョン: 5.7.28 Linu...

Webフロントエンド開発CSS関連チームコラボレーション

フロントエンド開発部門は成長し、スタッフも増加し、技術も向上しています。 CSSer はフロントエン...

海外でダウンロードできる25個の新鮮で便利なアイコンセット

1. Eコマースアイコン2. アイコンスイーツ2 3. 携帯電話アイコンパック4. 旗アイコンセット...

html-webpack-plugin の使用方法の詳細な説明

最近、React プロジェクトで初めてhtml-webapck-pluginプラグインを使用しました...

Nodejs と Socket.IO を組み合わせて Websocket の即時通信を実現

目次WebSocketを使用する理由ソケット.ioオープンソースプロジェクト効果プレビューアプリイン...