/**
 * The Procedure for the tuning-primer Shell script
 * 
 * @param Menu $backMenu The Menu for return
 * 
 * @return void
 */
function tuningPrimerProcedure(Menu $backMenu)
{
    $procedure = new Procedure();
    echo "Select a mode:\n\n";
    echo "[1] All (perform all checks) [default]\n";
    echo "[2] Prompt (prompt for login credintials and socket and execution mode)\n";
    echo "[3] Memory (run checks for tunable options which effect memory usage)\n";
    echo "[4] Disk, file (run checks for options which effect i/o performance or file handle limits)\n";
    echo "[5] InnoDB (run InnoDB checks)\n";
    echo "[6] Misc (run checks for that don't categorise" . " well Slow Queries, Binary logs, Used Connections and Worker Threads)\n";
    echo "[7] Banner (show banner info)\n";
    echo "-------------------------------------------------------------------------------\n";
    $choice = "0";
    $procedure->showReturnChoice($choice);
    $qt_mode = $procedure->createQuestion("\nSelected mode: ");
    $mode = $procedure->askQuestion($qt_mode);
    switch ($mode) {
        case "1":
            $mode = "all";
            break;
        case "2":
            $mode = "prompt";
            break;
        case "3":
            $mode = "memory";
            break;
        case "4":
            $mode = "file";
            break;
        case "5":
            $mode = "innodb";
            break;
        case "6":
            $mode = "misc";
            break;
        case "7":
            $mode = "banner";
            break;
        case "":
            $mode = "all";
            break;
        case $choice:
            $procedure->clearScreen();
            $procedure->showMenu($backMenu, true);
        default:
            $procedure->clearScreen();
            cecho("Incorrect input", "red");
            echo "\n";
            setupProcedure($backMenu);
    }
    echo "\n";
    echo shell_exec("sh " . dirname(__FILE__) . "/tuning-primer.sh " . $mode) . "\n";
}
Example #2
0
/**
 * The Procedure for the update function
 * 
 * @param Menu $backMenu The Menu for return
 * 
 * @return void
 */
function updateProcedure(Menu $backMenu)
{
    $procedure = new Procedure();
    echo "Action to perform:\n\n";
    echo "[1] Show the update log\n";
    echo "[2] Perform the actual update\n";
    echo "--------------------------------\n";
    $choice = "0";
    $procedure->showReturnChoice($choice);
    $qt_action = $procedure->createQuestion("\nSelected action: ");
    $action = $procedure->askQuestion($qt_action);
    switch ($action) {
        case "1":
            $action = "info";
            break;
        case "2":
            $action = "real";
            break;
        case $choice:
            $procedure->clearScreen();
            $procedure->showMenu($backMenu, true);
        default:
            $procedure->clearScreen();
            cecho("Incorrect input", "red");
            echo "\n";
            setupProcedure($backMenu);
    }
    $qt_revision = $procedure->createQuestion("\nRevision number [default HEAD]: ", "HEAD");
    $revision = $procedure->askQuestion($qt_revision);
    echo "\n";
    update($action, $revision);
}