'; foreach ($GLOBALS['pma']->databases as $current_db) { if ('information_schema' == $current_db) { continue; } if (! empty($selectall) || (isset($tmp_select) && strpos(' ' . $tmp_select, '|' . $current_db . '|'))) { $is_selected = ' selected="selected"'; } else { $is_selected = ''; } $current_db = htmlspecialchars($current_db); $multi_values .= ' '; } // end while $multi_values .= ''; $multi_values .= '
' . __('Uncheck All') . ''; return $multi_values; } /** * prints out code for changing master * * @param String $submitname - submit button name */ function PMA_replication_gui_changemaster($submitname) { list($username_length, $hostname_length) = PMA_replication_get_username_hostname_length(); echo '
'; echo PMA_generate_common_hidden_inputs('', ''); echo '
'; echo ' ' . __('Slave configuration') . ' - ' . __('Change or reconfigure master server') . ''; echo __('Make sure, you have unique server-id in your configuration file (my.cnf). If not, please add the following line into [mysqld] section:') . '
'; echo '
server-id=' . time() . '
'; echo '
'; echo ' '; echo ' '; echo '
'; echo '
'; echo ' '; echo ' '; echo '
'; echo '
'; echo ' '; echo ' '; echo '
'; echo '
'; echo ' '; echo ' '; echo '
'; echo '
'; echo ' '; echo '
'; } /** * This function prints out table with replication status. * * @param String type - either master or slave * @param boolean $hidden - if true, then default style is set to hidden, default value false * @param boolen $title - if true, then title is displayed, default true */ function PMA_replication_print_status_table($type, $hidden = false, $title = true) { global ${"{$type}_variables"}; global ${"{$type}_variables_alerts"}; global ${"{$type}_variables_oks"}; global ${"server_{$type}_replication"}; global ${"strReplicationStatus_{$type}"}; // TODO check the Masters server id? // seems to default to '1' when queried via SHOW VARIABLES , but resulted in error on the master when slave connects // [ERROR] Error reading packet from server: Misconfigured master - server id was not set ( server_errno=1236) // [ERROR] Got fatal error 1236: 'Misconfigured master - server id was not set' from master when reading data from binary log // //$server_id = PMA_DBI_fetch_value("SHOW VARIABLES LIKE 'server_id'", 0, 1); echo '
'; if ($title) { if ($type == 'master') { echo '

' . __('Master status') . '

'; } else { echo '

' . __('Slave status') . '

'; } } else { echo '
'; } echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; $odd_row = true; foreach (${"{$type}_variables"} as $variable) { echo ' '; echo ' '; echo ' '; echo ' '; $odd_row = ! $odd_row; } echo ' '; echo '
' . __('Variable') . '' . __('Value') . '
'; echo $variable; echo ' '; // TODO change to regexp or something, to allow for negative match if (isset(${"{$type}_variables_alerts"}[$variable]) && ${"{$type}_variables_alerts"}[$variable] == ${"server_{$type}_replication"}[0][$variable] ) { echo ''; } elseif (isset(${"{$type}_variables_oks"}[$variable]) && ${"{$type}_variables_oks"}[$variable] == ${"server_{$type}_replication"}[0][$variable] ) { echo ''; } else { echo ''; } echo ${"server_{$type}_replication"}[0][$variable]; echo ''; echo '
'; echo '
'; echo '
'; } /** * Prints table with slave users connected to this master * * @param boolean $hidden - if true, then default style is set to hidden, default value false */ function PMA_replication_print_slaves_table($hidden = false) { // Fetch data $data = PMA_DBI_fetch_result('SHOW SLAVE HOSTS', null, null); echo '
'; echo '
'; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; $odd_row = true; foreach ($data as $slave) { echo ' '; echo ' '; echo ' '; echo ' '; $odd_row = ! $odd_row; } echo ' '; echo '
' . __('Server ID') . '' . __('Host') . '
' . $slave['Server_id'] . '' . $slave['Host'] . '
'; echo '
'; PMA_Message::notice(__('Only slaves started with the --report-host=host_name option are visible in this list.'))->display(); echo '
'; echo '
'; } /** * get the correct username and hostname lengths for this MySQL server * * @uses strtok() * @return array username length, hostname length */ function PMA_replication_get_username_hostname_length() { $fields_info = PMA_DBI_get_fields('mysql', 'user'); $username_length = 16; $hostname_length = 41; foreach ($fields_info as $key => $val) { if ($val['Field'] == 'User') { strtok($val['Type'], '()'); $v = strtok('()'); if (is_int($v)) { $username_length = $v; } } elseif ($val['Field'] == 'Host') { strtok($val['Type'], '()'); $v = strtok('()'); if (is_int($v)) { $hostname_length = $v; } } } return array($username_length, $hostname_length); } /** * Print code to add a replication slave user to the master */ function PMA_replication_gui_master_addslaveuser() { list($username_length, $hostname_length) = PMA_replication_get_username_hostname_length(); if (isset($GLOBALS['username']) && strlen($GLOBALS['username']) === 0) { $GLOBALS['pred_username'] = 'any'; } echo '
'; echo '
'; echo PMA_generate_common_hidden_inputs('', ''); echo '
' . ''.__('Add slave replication user').'' . '' . '' . '' . '' . '' . '' . '
' . '' . '' . ' ' . '' . '' . '
' . '
' . '' . '' . ' ' . '' . '' . PMA_showHint(__('When Host table is used, this field is ignored and values stored in Host table are used instead.')) . '
' . '
' . '' . '' . ' ' . '' . '' . '
' . '
' . '' . ' ' . '' . '
' . '
' . '' . '' . ' ' . '' . '' . '
' . '
'; echo ''; echo '
'; echo '
'; } ?>