Я просматривал кластеризацию XtraDB и создал P.o.C. окружение на Openstack с использованием 4 экземпляров, которое не удалось во время моего тестирования устойчивости.
Согласно документации pxc: http://www.percona.com/doc/percona-xtradb-cluster/howtos/virt_sandbox.html который охватывает установку из 3 узлов, я выбрал 4-й.
Итак, мои вопросы следующие:
Исходя из ваших симптомов на первом узле, вы используете
wsrep_cluster_address=gcomm://
в вашем файле конфигурации, что означает, что узел запустит новый кластер. Вы можете подтвердить это, установив для переменной wsrep_cluster_size значение 1 на node1 и 3 на остальных. Если вы хотите присоединить node1 к уже существующему кластеру, вы должны указать
wsrep_cluster_address=gcomm://(ip of a running node here)
В этом случае node1 снова присоединится к кластеру.
Некоторые дополнительные мысли:
Из-за механизма кворума в PXC (Percona Xtradb Cluster) не рекомендуется запускать его на 4 узлах. Рекомендуется использовать нечетное количество узлов, чтобы в случае разделения сети одна часть разделенного кластера могла иметь большинство.
Вместо wsrep_cluster_address вы можете использовать wsrep_urls в разделе [mysqld_safe].
Отказ от ответственности: я работаю в Percona.
Дальнейшее исследование этой проблемы кажется жизнеспособным (пока оставим этот ответ непринятым, на случай, если кто-то ответит с лучшей настройкой):
Эта настройка, похоже, допускает потерю любого узла, по крайней мере, из-за отключения, а при восстановлении узла синхронизируется без проблем.
Если Mysql не запускается и причина в поврежденной таблице БД.
воспроизвести то, что делает сервер, и получить хорошую копию с остановленного сервера для клиентских баз данных.
он обрабатывает файлы из $ MYSQLHOME, которые являются db, через nc.
мы использовали scp для перемещения хороших файлов на место, а затем снова запустили синхронизацию, запустив mysql на плохом сервере.