%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /scripts/
Upload File :
Create Path :
Current File : //scripts/disable_sqloptimizer

#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/disable_sqloptimizer            Copyright 2022 cPanel, L.L.C.
#                                                           All rights reserved.
# copyright@cpanel.net                                         http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited

use warnings;
use strict;

use Cpanel::SafeRun::Errors          ();
use Cpanel::MysqlUtils::SlowQueryLog ();
use Cpanel::Config::CpConfGuard      ();
use Cpanel::TempFile                 ();

unsetupsqloptimizercrontab();

Cpanel::MysqlUtils::SlowQueryLog::disable();

my $cpconf = Cpanel::Config::CpConfGuard->new();
if ( $cpconf->{'data'}->{'sqloptimizer'} ) {
    $cpconf->{'data'}->{'sqloptimizer'} = 0;
    $cpconf->save();
}

sub unsetupsqloptimizercrontab {
    my $has_sqloptimizer = 0;
    my @CT               = grep( !/^#/, split( /\n/, Cpanel::SafeRun::Errors::saferunnoerror( 'crontab', '-l' ) ) );
    if ( grep( /sqloptimizer/, @CT ) ) { $has_sqloptimizer = 1; }
    if ($has_sqloptimizer) {
        @CT = grep( !/sqloptimizer/, @CT );
        my $tmp_obj      = Cpanel::TempFile->new();
        my $tmp_filename = $tmp_obj->file();
        if ( $tmp_filename && open( my $cr_fh, ">", $tmp_filename ) ) {
            print {$cr_fh} join( "\n", @CT ) . "\n";
            close($cr_fh);
            system 'crontab', $tmp_filename;
        }
        else {
            die "Unable to write crontab temporary file";
        }
    }
    return 1;
}

Zerion Mini Shell 1.0