00001 <?php
00002
00003
00004
00005
00009 require('./server_common.inc.php');
00010
00011
00015 require('./server_links.inc.php');
00016
00017
00021 if (!empty($innodbstatus)) {
00022 echo '<h2>' . "\n"
00023 . ' ' . $strInnodbStat . "\n"
00024 . '</h2>' . "\n";
00025 $sql_query = 'SHOW INNODB STATUS;';
00026 $res = PMA_mysql_query($sql_query, $userlink) or PMA_mysqlDie(PMA_mysql_error($userlink), $sql_query);
00027 $row = PMA_mysql_fetch_row($res);
00028 echo '<pre>' . "\n"
00029 . htmlspecialchars($row[0]) . "\n"
00030 . '</pre>' . "\n";
00031 mysql_free_result($res);
00032 require_once('./footer.inc.php');
00033 }
00034
00038 echo '<h2>' . "\n"
00039 . ' ' . $strServerStatus . "\n"
00040 . '</h2>' . "\n";
00041
00042
00046 if (!$is_superuser && !$cfg['ShowMysqlInfo']) {
00047 echo $strNoPrivileges;
00048 require_once('./footer.inc.php');
00049 }
00050
00051
00055 $res = @PMA_mysql_query('SHOW STATUS;', $userlink) or PMA_mysqlDie(PMA_mysql_error($userlink), 'SHOW STATUS;');
00056 while ($row = PMA_mysql_fetch_row($res)) {
00057 $serverStatus[$row[0]] = $row[1];
00058 }
00059 @mysql_free_result($res);
00060 unset($res);
00061 unset($row);
00062
00063
00067
00068 $res = @PMA_mysql_query('SELECT UNIX_TIMESTAMP() - ' . $serverStatus['Uptime'] . ';');
00069 $row = PMA_mysql_fetch_row($res);
00070 echo sprintf($strServerStatusUptime, PMA_timespanFormat($serverStatus['Uptime']), PMA_localisedDate($row[0])) . "\n";
00071 mysql_free_result($res);
00072 unset($res);
00073 unset($row);
00074
00075 $queryStats = array();
00076 $tmp_array = $serverStatus;
00077 foreach($tmp_array AS $name => $value) {
00078 if (substr($name, 0, 4) == 'Com_') {
00079 $queryStats[str_replace('_', ' ', substr($name, 4))] = $value;
00080 unset($serverStatus[$name]);
00081 }
00082 }
00083 unset($tmp_array);
00084 ?>
00085 <ul>
00086 <li>
00087 <!-- Server Traffic -->
00088 <?php echo $strServerTrafficNotes; ?><br />
00089 <table border="0">
00090 <tr>
00091 <td valign="top">
00092 <table border="0">
00093 <tr>
00094 <th colspan="2"> <?php echo $strTraffic; ?> </th>
00095 <th> ø <?php echo $strPerHour; ?> </th>
00096 </tr>
00097 <tr>
00098 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>"> <?php echo $strReceived; ?> </td>
00099 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown($serverStatus['Bytes_received'])); ?> </td>
00100 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown($serverStatus['Bytes_received'] * 3600 / $serverStatus['Uptime'])); ?> </td>
00101 </tr>
00102 <tr>
00103 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>"> <?php echo $strSent; ?> </td>
00104 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown($serverStatus['Bytes_sent'])); ?> </td>
00105 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown($serverStatus['Bytes_sent'] * 3600 / $serverStatus['Uptime'])); ?> </td>
00106 </tr>
00107 <tr>
00108 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>"> <?php echo $strTotalUC; ?> </td>
00109 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown($serverStatus['Bytes_received'] + $serverStatus['Bytes_sent'])); ?> </td>
00110 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo join(' ', PMA_formatByteDown(($serverStatus['Bytes_received'] + $serverStatus['Bytes_sent']) * 3600 / $serverStatus['Uptime'])); ?> </td>
00111 </tr>
00112 </table>
00113 </td>
00114 <td valign="top">
00115 <table border="0">
00116 <tr>
00117 <th colspan="2"> <?php echo $strConnections; ?> </th>
00118 <th> ø <?php echo $strPerHour; ?> </th>
00119 <th> % </th>
00120 </tr>
00121 <tr>
00122 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>"> <?php echo $strFailedAttempts; ?> </td>
00123 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format($serverStatus['Aborted_connects'], 0, $number_decimal_separator, $number_thousands_separator); ?> </td>
00124 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format(($serverStatus['Aborted_connects'] * 3600 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00125 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo ($serverStatus['Connections'] > 0 ) ? number_format(($serverStatus['Aborted_connects'] * 100 / $serverStatus['Connections']), 2, $number_decimal_separator, $number_thousands_separator) . ' %' : '---'; ?> </td>
00126 </tr>
00127 <tr>
00128 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>"> <?php echo $strAbortedClients; ?> </td>
00129 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format($serverStatus['Aborted_clients'], 0, $number_decimal_separator, $number_thousands_separator); ?> </td>
00130 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format(($serverStatus['Aborted_clients'] * 3600 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00131 <td bgcolor="<?php echo $cfg['BgcolorTwo']; ?>" align="right"> <?php echo ($serverStatus['Connections'] > 0 ) ? number_format(($serverStatus['Aborted_clients'] * 100 / $serverStatus['Connections']), 2 , $number_decimal_separator, $number_thousands_separator) . ' %' : '---'; ?> </td>
00132 </tr>
00133 <tr>
00134 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>"> <?php echo $strTotalUC; ?> </td>
00135 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format($serverStatus['Connections'], 0, $number_decimal_separator, $number_thousands_separator); ?> </td>
00136 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format(($serverStatus['Connections'] * 3600 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00137 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format(100, 2, $number_decimal_separator, $number_thousands_separator); ?> % </td>
00138 </tr>
00139 </table>
00140 </td>
00141 </tr>
00142 </table>
00143 </li>
00144 <br />
00145 <li>
00146 <!-- Queries -->
00147 <?php echo sprintf($strQueryStatistics, number_format($serverStatus['Questions'], 0, $number_decimal_separator, $number_thousands_separator)) . "\n"; ?>
00148 <table border="0">
00149 <tr>
00150 <td colspan="2">
00151 <br />
00152 <table border="0" align="right">
00153 <tr>
00154 <th> <?php echo $strTotalUC; ?> </th>
00155 <th> ø <?php echo $strPerHour; ?> </th>
00156 <th> ø <?php echo $strPerMinute; ?> </th>
00157 <th> ø <?php echo $strPerSecond; ?> </th>
00158 </tr>
00159 <tr>
00160 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format($serverStatus['Questions'], 0, $number_decimal_separator, $number_thousands_separator); ?> </td>
00161 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format(($serverStatus['Questions'] * 3600 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00162 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format(($serverStatus['Questions'] * 60 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00163 <td bgcolor="<?php echo $cfg['BgcolorOne']; ?>" align="right"> <?php echo number_format(($serverStatus['Questions'] / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00164 </tr>
00165 </table>
00166 </td>
00167 </tr>
00168 <tr>
00169 <td valign="top">
00170 <table border="0">
00171 <tr>
00172 <th colspan="2"> <?php echo $strQueryType; ?> </th>
00173 <th> ø <?php echo $strPerHour; ?> </th>
00174 <th> % </th>
00175 </tr>
00176 <?php
00177
00178 $useBgcolorOne = TRUE;
00179 $countRows = 0;
00180 foreach ($queryStats as $name => $value) {
00181
00182
00183
00184
00185 ?>
00186 <tr>
00187 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>"> <?php echo htmlspecialchars($name); ?> </td>
00188 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format($value, 0, $number_decimal_separator, $number_thousands_separator); ?> </td>
00189 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format(($value * 3600 / $serverStatus['Uptime']), 2, $number_decimal_separator, $number_thousands_separator); ?> </td>
00190 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>" align="right"> <?php echo number_format(($value * 100 / ($serverStatus['Questions'] - $serverStatus['Connections'])), 2, $number_decimal_separator, $number_thousands_separator); ?> % </td>
00191 </tr>
00192 <?php
00193 $useBgcolorOne = !$useBgcolorOne;
00194 if (++$countRows == ceil(count($queryStats) / 2)) {
00195 $useBgcolorOne = TRUE;
00196 ?>
00197 </table>
00198 </td>
00199 <td valign="top">
00200 <table border="0">
00201 <tr>
00202 <th colspan="2"> <?php echo $strQueryType; ?> </th>
00203 <th> ø <?php echo $strPerHour; ?> </th>
00204 <th> % </th>
00205 </tr>
00206 <?php
00207 }
00208 }
00209 unset($countRows);
00210 unset($useBgcolorOne);
00211 ?>
00212 </table>
00213 </td>
00214 </tr>
00215 </table>
00216 </li>
00217 <?php
00218
00219 unset($serverStatus['Aborted_clients']);
00220 unset($serverStatus['Aborted_connects']);
00221 unset($serverStatus['Bytes_received']);
00222 unset($serverStatus['Bytes_sent']);
00223 unset($serverStatus['Connections']);
00224 unset($serverStatus['Questions']);
00225 unset($serverStatus['Uptime']);
00226
00227 if (!empty($serverStatus)) {
00228 ?>
00229 <br />
00230 <li>
00231 <!-- Other status variables -->
00232 <b><?php echo $strMoreStatusVars; ?></b><br />
00233 <table border="0">
00234 <tr>
00235 <td valign="top">
00236 <table border="0">
00237 <tr>
00238 <th> <?php echo $strVar; ?> </th>
00239 <th> <?php echo $strValue; ?> </th>
00240 </tr>
00241 <?php
00242 $useBgcolorOne = TRUE;
00243 $countRows = 0;
00244 foreach($serverStatus AS $name => $value) {
00245 ?>
00246 <tr>
00247 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>"> <?php echo htmlspecialchars(str_replace('_', ' ', $name)); ?> </td>
00248 <td bgcolor="<?php echo $useBgcolorOne ? $cfg['BgcolorOne'] : $cfg['BgcolorTwo']; ?>" align="right"> <?php echo htmlspecialchars($value); ?> </td>
00249 </tr>
00250 <?php
00251 $useBgcolorOne = !$useBgcolorOne;
00252 if (++$countRows == ceil(count($serverStatus) / 3) || $countRows == ceil(count($serverStatus) * 2 / 3)) {
00253 $useBgcolorOne = TRUE;
00254 ?>
00255 </table>
00256 </td>
00257 <td valign="top">
00258 <table border="0">
00259 <tr>
00260 <th> <?php echo $strVar; ?> </th>
00261 <th> <?php echo $strValue; ?> </th>
00262 </tr>
00263 <?php
00264 }
00265 }
00266 unset($useBgcolorOne);
00267 ?>
00268 </table>
00269 </td>
00270 </tr>
00271 </table>
00272 </li>
00273 <?php
00274 }
00275 $res = PMA_mysql_query('SHOW VARIABLES LIKE "have_innodb";', $userlink);
00276 if ($res) {
00277 $row = PMA_mysql_fetch_row($res);
00278 if (!empty($row[1]) && $row[1] == 'YES') {
00279 ?>
00280 <br />
00281 <li>
00282 <!-- InnoDB Status -->
00283 <a href="./server_status.php?<?php echo $url_query; ?>&innodbstatus=1">
00284 <b><?php echo $strInnodbStat; ?></b>
00285 </a>
00286 </li>
00287 <?php
00288 }
00289 } else {
00290 unset($res);
00291 }
00292 ?>
00293 </ul>
00294
00295
00296 <?php
00297
00298
00302 require_once('./footer.inc.php');
00303
00304 ?>