• Модуль: cluster
  • Путь к файлу: ~/bitrix/modules/cluster/classes/mysql/slave.php
  • Класс: CClusterSlave
  • Вызов: CClusterSlave::Stop
static function Stop($node_id)
{
	global $DB;

	$arNode = CClusterDBNode::GetByID($node_id);
	if(!is_array($arNode))
	{
		return false;
	}

	if ($node_id == 1)
	{
		$nodeDB = $DB;
	}
	else
	{
		ob_start();
		$nodeDB = CDatabase::GetDBNodeConnection($arNode["ID"], true, false);
		ob_end_clean();
	}

	if (!is_object($nodeDB))
	{
		return false;
	}

	$rs = $nodeDB->Query("STOP SLAVE", false, '', ['fixed_connection' => true]);
	if ($rs)
	{
		$ob = new CClusterDBNode;
		if ($node_id == 1)
		{
			$res = $ob->Update($arNode["ID"], ["MASTER_ID" => false, "STATUS" => "ONLINE"]);
		}
		else
		{
			$res = $ob->Update($arNode["ID"], ["STATUS" => "READY"]);
		}

		return $res;
	}
	else
	{
		return false;
	}
}