« DBMS/MySQL/XtraDBCluster/Manage » : différence entre les versions

De TartareFR
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
== Script de test ==
<syntaxhighlight lang="php">
#!/usr/bin/php
<?php
// CONNECT TO THE DATABASE
$DBNAME = 'didier';
$DBHOST = '192.168.122.136';
$DBUSER = 'didier';
$DBPASS = 'ght1vtt9';
$NBLOOP = 25000;
$mysqli = new mysqli( $DBHOST, $DBUSER, $DBPASS, $DBNAME );
if ( mysqli_connect_errno() ) {
printf( "Connect failed: %s\n", mysqli_connect_error() );
exit( -1 );
}
for ( $i = 0 ; $i < $NBLOOP ; $i++ )
{
$val = substr( md5( microtime() ), rand( 0,26 ), 48 );
$query = "INSERT INTO test(name, text) VALUES('didier', '$val')";
$result = $mysqli->query( $query ) or print $mysqli->error."\n";
}
// Print first row
$query = "SELECT * FROM test LIMIT 1";
$result = $mysqli->query($query) or print $mysqli->error."\n";
if( $result->num_rows > 0 ) {
while( $row = $result->fetch_assoc() ) {
print_r( $row);
}
echo "\n";
}
else {
echo "NO RESULTS\n";
}
mysqli_close($mysqli);
?>
</syntaxhighlight>
== Restart du cluster après un arrêt général ==
== Restart du cluster après un arrêt général ==



Version du 22 août 2014 à 11:04

Script de test

#!/usr/bin/php
<?php

// CONNECT TO THE DATABASE
$DBNAME = 'didier';
$DBHOST = '192.168.122.136';
$DBUSER = 'didier';
$DBPASS = 'ght1vtt9';
$NBLOOP = 25000;

$mysqli = new mysqli( $DBHOST, $DBUSER, $DBPASS, $DBNAME );
if ( mysqli_connect_errno() ) {
	printf( "Connect failed: %s\n", mysqli_connect_error() );
	exit( -1 );
}

for ( $i = 0 ; $i < $NBLOOP ; $i++ )
{
	$val = substr( md5( microtime() ), rand( 0,26 ), 48 );
	$query = "INSERT INTO test(name, text) VALUES('didier', '$val')";
	$result = $mysqli->query( $query ) or print $mysqli->error."\n";
}

// Print first row
$query = "SELECT * FROM test LIMIT 1";
$result = $mysqli->query($query) or print $mysqli->error."\n";
if( $result->num_rows > 0 ) {
	while( $row = $result->fetch_assoc() ) {
		print_r( $row);
	}
	echo "\n";
}
else {
	echo "NO RESULTS\n";	
}
mysqli_close($mysqli);
?>

Restart du cluster après un arrêt général

  • Sur un noeuds
    service mysql restart-bootstrap
  • Sur les autres noeuds
    service mysql restart

Redémarrage après un crash

  • Il faut s'assurer que la clé suivante est bien décommentée et renseignée dans <path>/etc/my.cnf</path>
    wsrep_sst_donor = clust-node1
  • Si l'erreur suivante est rencontrée au démarrage du service mysql
    ERROR! MySQL (Percona XtraDB Cluster) is not running, but PID file exists
    Il faut supprimer le fichier PID (*.pid) dans <path>/var/lib/mysql/</path>