Initial import
This commit is contained in:
46
application/controllers/tools/Replication.php
Normal file
46
application/controllers/tools/Replication.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
class Replication extends MY_Controller
|
||||
{
|
||||
function __construct() {
|
||||
parent::__construct();
|
||||
$this->db = $this->load->database("onedev", true);
|
||||
}
|
||||
function index() {
|
||||
echo "Replication API";
|
||||
}
|
||||
function slave() {
|
||||
$sql = "show slave status";
|
||||
$qry = $this->db->query($sql);
|
||||
if (! $qry) {
|
||||
echo json_encode( array("status" => "ERR" , "message" => print_r($this->db->error(),true) ) );
|
||||
exit;
|
||||
}
|
||||
$rows = $qry->result_array();
|
||||
$slave = array();
|
||||
$slave["status"] = "Not Running";
|
||||
if(count($rows) == 0 ) {
|
||||
echo json_encode($slave);
|
||||
exit;
|
||||
}
|
||||
$r = $rows[0];
|
||||
$slave["status"] = "Running";
|
||||
$slave["MasterLogFile"] = $r["Master_Log_File"];
|
||||
$slave["ReadPosition"] = $r["Read_Master_Log_Pos"];
|
||||
$slave["Behind"] = $r["Seconds_Behind_Master"];
|
||||
$slave["Table"] = explode(",", $r["Replicate_Do_Table"]);
|
||||
echo json_encode($slave);
|
||||
}
|
||||
function post($url,$data) {
|
||||
$ch = curl_init($url);
|
||||
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
||||
//curl_setopt($ch, CURLOPT_VERBOSE, true);
|
||||
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
|
||||
'Content-Type: application/json',
|
||||
'Content-Length: ' . strlen($data))
|
||||
);
|
||||
$result = curl_exec($ch);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user