mysql-mmm集群(多实例)

Jun 07, 2016 pm 05:42 PM
集まる

一、需求说明最近一直在学习mysql-mmm,想以后这个架构也能用在我们公司的业务上,我们公司的业务是单机多实例部署,所以也想把mysql-mmm部署成这样,功夫不负有

三、部署

1、mysql和mysql-mmm的安装及mysql的主从配置请查看前面的博文:,美国空间,网站空间,这里只介绍mmm多实例配置。

2、db1上:

vi /etc/mysql-mmm/mmm_common_navy2.conf(navy2的配置文件)

vi /etc/mysql-mmm/mmm_common_navy2.conf active_master_role writer cluster_interface eth1 agent_port 9912 mysql_port 3307 pid_path /var/run/mysql-mmm/mmm_agentd_navy2.pid bin_path /usr/libexec/mysql-mmm/ replication_user slave replication_password 123456 agent_user mmm_agent agent_password 123456 ip 172.28.26.101 mysql_port 3307 mode master peer db2 ip 172.28.26.102 mysql_port 3307 mode master peer db1 hosts db1, db2 ips 172.28.26.107 mode exclusive hosts db1, db2 ips 172.28.26.108 mode balanced

vi /etc/mysql-mmm/mmm_common_navy3.conf(navy3的配置文件)

active_master_role writer cluster_interface eth1 agent_port 9913 mysql_port 3308 pid_path /var/run/mysql-mmm/mmm_agentd_navy3.pid bin_path /usr/libexec/mysql-mmm/ replication_user slave replication_password 123456 agent_user mmm_agent agent_password 123456 ip 172.28.26.101 mysql_port 3308 mode master peer db2 ip 172.28.26.102 mysql_port 3308 mode master peer db1 hosts db1, db2 ips 172.28.26.109 mode exclusive hosts db1, db2 ips 172.28.26.110 mode balanced

vi /etc/mysql-mmm/mmm_agent_navy2.conf(navy2的agent配置文件)

include mmm_common_navy2.conf this db1

vi /etc/mysql-mmm/mmm_agent_navy3.conf(navy3的agent配置文件)

include mmm_common_navy3.conf this db1

vi /etc/init.d/mysql-mmm-agent-navy2(navy2的agent启动脚本)

#!/bin/sh # chkconfig: - 64 36 # description: MMM Agent. # processname: mmm_agentd # config: /etc/mysql-mmm/mmm_agent.conf # pidfile: /var/run/mysql-mmm/mmm_agentd.pid # Source function library and defaults file. . /etc/rc.d/init.d/functions . /etc/default/mysql-mmm-agent # Cluster name (it can be empty for default cases) CLUSTER='navy2' LOCKFILE='/var/lock/subsys/mysql-mmm-agent_navy2' prog='MMM Agent Daemon' #----------------------------------------------------------------------- # Paths if [ "$CLUSTER" != "" ]; then MMMD_AGENT_BIN="/usr/sbin/mmm_agentd @$CLUSTER" MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd_$CLUSTER.pid" else MMMD_AGENT_BIN="/usr/sbin/mmm_agentd" MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd.pid" fi start() { if [ "${ENABLED}" != "1" ]; then echo "$prog is disabled!" exit 1 fi echo -n "Starting $prog: " if [ -s $MMMD_AGENT_PIDFILE ] && kill -0 `cat $MMMD_AGENT_PIDFILE` 2> /dev/null; then echo " already running." exit 0 fi daemon $MMMD_AGENT_BIN RETVAL=$? echo [ $RETVAL = 0 ] && touch $LOCKFILE return $RETVAL } stop() { # Stop daemon. echo -n "Stopping $prog: " killproc -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN RETVAL=$? echo [ $RETVAL = 0 ] && rm -f $LOCKFILE return $RETVAL } case "$1" in start) start ;; stop) stop ;; status) status -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN RETVAL=$? ;; restart|reload) stop start ;; condrestart) if [ -f $LOCKFILE ]; then stop start fi ;; *) echo "Usage: $0 {start|stop|restart|condrestart|status}" ;; esac exit $RETVAL

赋予执行权限:

chmod +x /etc/init.d/mysql-mmm-agent-navy2

vi /etc/init.d/mysql-mmm-agent-navy3(navy3的agent启动脚本)

#!/bin/sh # chkconfig: - 64 36 # description: MMM Agent. # processname: mmm_agentd # config: /etc/mysql-mmm/mmm_agent.conf # pidfile: /var/run/mysql-mmm/mmm_agentd.pid # Source function library and defaults file. . /etc/rc.d/init.d/functions . /etc/default/mysql-mmm-agent ## Paths #MMMD_AGENT_BIN="/usr/sbin/mmm_agentd" #MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd.pid" #LOCKFILE='/var/lock/subsys/mysql-mmm-agent' #prog='MMM Agent Daemon' # Cluster name (it can be empty for default cases) CLUSTER='navy3' LOCKFILE='/var/lock/subsys/mysql-mmm-agent_navy3' prog='MMM Agent Daemon' #----------------------------------------------------------------------- # Paths if [ "$CLUSTER" != "" ]; then MMMD_AGENT_BIN="/usr/sbin/mmm_agentd @$CLUSTER" MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd_$CLUSTER.pid" else MMMD_AGENT_BIN="/usr/sbin/mmm_agentd" MMMD_AGENT_PIDFILE="/var/run/mysql-mmm/mmm_agentd.pid" fi start() { if [ "${ENABLED}" != "1" ]; then echo "$prog is disabled!" exit 1 fi echo -n "Starting $prog: " if [ -s $MMMD_AGENT_PIDFILE ] && kill -0 `cat $MMMD_AGENT_PIDFILE` 2> /dev/null; then echo " already running." exit 0 fi daemon $MMMD_AGENT_BIN RETVAL=$? echo [ $RETVAL = 0 ] && touch $LOCKFILE return $RETVAL } stop() { # Stop daemon. echo -n "Stopping $prog: " killproc -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN RETVAL=$? echo [ $RETVAL = 0 ] && rm -f $LOCKFILE return $RETVAL } case "$1" in start) start ;; stop) stop ;; status) status -p $MMMD_AGENT_PIDFILE $MMMD_AGENT_BIN RETVAL=$? ;; restart|reload) stop start ;; condrestart) if [ -f $LOCKFILE ]; then stop start fi ;; *) echo "Usage: $0 {start|stop|restart|condrestart|status}" ;; esac exit $RETVAL

赋予可执行权限:

chmod +x /etc/init.d/mysql-mmm-agent-navy3

启动服务:

/etc/init.d/mysql-mmm-agent-navy2 start /etc/init.d/mysql-mmm-agent-navy3 start

3、db2上:

复制db1上的文件到相应的目录下:

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Python での SVM の例 Python での SVM の例 Jun 11, 2023 pm 08:42 PM

Python のサポート ベクター マシン (SVM) は、分類および回帰の問題を解決するために使用できる強力な教師あり学習アルゴリズムです。 SVM は、高次元データや非線形問題を処理する場合に優れたパフォーマンスを発揮し、データ マイニング、画像分類、テキスト分類、バイオインフォマティクスなどの分野で広く使用されています。この記事では、Python で分類に SVM を使用する例を紹介します。 scikit-learn ライブラリの SVM モデルを使用します。

ノードが Proxmox VE から完全に退避し、クラスターに再参加します ノードが Proxmox VE から完全に退避し、クラスターに再参加します Feb 21, 2024 pm 12:40 PM

ノードが ProxmoxVE から完全に退避し、クラスターに再参加するためのシナリオの説明。ProxmoxVE クラスター内のノードが損傷し、すぐに修復できない場合、障害のあるノードをクラスターから完全に追い出し、残留情報をクリーンアップする必要があります。そうしないと、障害ノードが使用していた IP アドレスを使用する新しいノードが正常にクラスターに参加できなくなり、同様に、クラスターから切り離された障害ノードが修復された後、クラスターとは関係ありませんが、クラスターに参加できなくなります。この単一ノードの Web 管理にアクセスできなくなり、バックグラウンドで元の ProxmoxVE クラスター内の他のノードに関する情報が表示され、非常に迷惑になります。クラスターからノードを削除します。ProxmoxVE が Ceph ハイパーコンバージド クラスターの場合、ホスト システム Debian 上のクラスター内の任意のノード (削除するノードを除く) にログインし、コマンドを実行する必要があります。

Docker を使用してマルチノード クラスターを管理および拡張する方法 Docker を使用してマルチノード クラスターを管理および拡張する方法 Nov 07, 2023 am 10:06 AM

今日のクラウド コンピューティング時代において、コンテナ化テクノロジは、オープンソースの世界で最も人気のあるテクノロジの 1 つになっています。 Docker の登場により、クラウド コンピューティングはより便利かつ効率的になり、開発者や運用保守担当者にとって不可欠なツールになりました。マルチノード クラスター テクノロジーのアプリケーションは、Docker に基づいて広く使用されています。マルチノード クラスターの展開を通じて、リソースをより効率的に利用し、信頼性と拡張性を向上させることができ、さらに展開と管理をより柔軟に行うことができます。次にDockerを使って以下のことを行う方法を紹介します。

VUE3 入門例: 簡単なビデオ プレーヤーの作成 VUE3 入門例: 簡単なビデオ プレーヤーの作成 Jun 15, 2023 pm 09:42 PM

新世代のフロントエンド フレームワークが出現し続ける中、VUE3 は高速で柔軟、そして使いやすいフロントエンド フレームワークとして愛されています。次に、VUE3 の基本を学び、簡単なビデオ プレーヤーを作成しましょう。 1. VUE3 をインストールする まず、VUE3 をローカルにインストールする必要があります。コマンド ライン ツールを開き、次のコマンドを実行します。 npminstallvue@next 次に、新しい HTML ファイルを作成し、VUE3 を導入します。 <!doctypehtml>

Golang でのポインター変換のベスト プラクティスの例を学ぶ Golang でのポインター変換のベスト プラクティスの例を学ぶ Feb 24, 2024 pm 03:51 PM

Golang は、さまざまなアプリケーションやサービスの開発に使用できる強力で効率的なプログラミング言語です。 Golang では、ポインタは非常に重要な概念であり、データをより柔軟かつ効率的に操作するのに役立ちます。ポインタ変換とは、異なる型間のポインタ操作のプロセスを指します。この記事では、具体的な例を使用して、Golang におけるポインタ変換のベスト プラクティスを学びます。 1. 基本概念 Golang では、各変数にはアドレスがあり、アドレスはメモリ内の変数の位置です。

PHP高同時実行環境におけるデータベースの最適化方法 PHP高同時実行環境におけるデータベースの最適化方法 Aug 11, 2023 pm 03:55 PM

高同時実行環境における PHP データベースの最適化方法 インターネットの急速な発展に伴い、ますます多くの Web サイトやアプリケーションが高同時実行の課題に直面する必要があります。この場合、特にバックエンド開発言語として PHP を使用するシステムでは、データベースのパフォーマンスの最適化が特に重要になります。この記事では、PHP の高同時実行環境におけるデータベースの最適化方法をいくつか紹介し、対応するコード例を示します。接続プーリングの使用 同時実行性の高い環境では、データベース接続の頻繁な作成と破棄がパフォーマンスのボトルネックを引き起こす可能性があります。したがって、接続プーリングを使用すると、

PHP の簡単な Web クローラー開発例 PHP の簡単な Web クローラー開発例 Jun 13, 2023 pm 06:54 PM

インターネットの急速な発展に伴い、データは今日の情報化時代において最も重要なリソースの 1 つになりました。 Webクローラは、ネットワークデータを自動的に取得・処理する技術として、ますます注目と応用が進んでいます。この記事では、PHPを使って簡単なWebクローラーを開発し、ネットワークデータを自動取得する機能を実現する方法を紹介します。 1. Web クローラーの概要 Web クローラーとは、ネットワーク リソースを自動的に取得して処理する技術であり、主な動作プロセスはブラウザーの動作をシミュレートし、指定された URL アドレスに自動的にアクセスし、すべての情報を抽出することです。

Python での VAE アルゴリズムの例 Python での VAE アルゴリズムの例 Jun 11, 2023 pm 07:58 PM

VAE は生成モデルであり、正式名は variationalAutoencoder で、中国語に翻訳すると変分自動エンコーダとなります。これは、画像、音声、テキストなどの新しいデータを生成するために使用できる教師なし学習アルゴリズムです。通常のオートエンコーダと比較して、VAE はより柔軟で強力であり、より複雑で現実的なデータを生成できます。 Python は最も広く使用されているプログラミング言語の 1 つであり、深層学習の主要ツールの 1 つです。 Python には、優れた機械学習と奥深いものが数多くあります。

See all articles