把以下php文件 放到任意可以运行的环境 打开即可设置

<?php
/*********************需要用root帐号登录************************/

$con = mysqli_connect('localhost','root','root') or die('mysql连接失败!');



/*****************************************************************************************/
;?>

<style>
table{border-spacing:0px;border-collapse: collapse ;}
td,th{border:1px solid #efefef;}
tr:nth-child(odd){background-color:#efefef;}tr:hover{background-color:#ffffdd;}
.nav {background-color:#35AADC;}
.nav a{display:inline-block;padding:10px;color:#FFFFFF;text-decoration:none;}
.caozuo a{text-decoration:none;color:Blue;margin-right:10px;}
.nav a:hover{
background-color:#2295c6;
}
#long_query_time{display:inline-block;}
#long_query_time #time{height:30px;width:70px;}
</style>

<div class="nav">
	<a href="?">首页</a>
	<a href="?type=sql_log">日志</a>
</div>
<?php

mysqli_query($con,'set names utf8') or die('设置网页编码失败!');

function getSize($size) {
	if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 .' GB';
	} elseif ($size >= 1048576) {$size = round($size / 1048576 * 100) / 100 . ' MB';
	} elseif ($size >= 1024) {$size = round($size / 1024 * 100) / 100 . ' KB';
	} else {$size = $size . ' 字节';}
	return $size;
}
$type="index";
if(isset($_GET['type'])){$type=$_GET['type'];}
?>

<?php

if($type=="sql_log"){
	$sql="select * from mysql.general_log where command_type='Query' limit 100";
	$result=mysqli_query($con,$sql);
	if($result){
		echo "<table>
		<tr>
			<th>序号</th>
			<th style='min-width:170px;'>时间</th>
			<th>thread_id</th>
			<th>sql语句</th>
		</tr>";
		$i=1;
		while($row = mysqli_fetch_assoc($result)) {
			if(substr($row['user_host'],0,4)!='root'){//过滤掉root帐号的操作
				echo "<tr>";
					echo "<td>{$i}</td>";$i++;
					echo "<td>{$row['event_time']}</td>";
					//echo "<td>{$row['user_host']}</td>";
					echo "<td style='color:#cacaca;'>{$row['thread_id']}</td>";
					echo "<td><textarea style='width:1000px;height:40px;'>{$row['argument']}</textarea></td>";
				echo "</tr>";
			}
		}
		echo "</table>";
		mysqli_real_query($con,"TRUNCATE mysql.general_log"); //显示完后清空日志
	}
}
if($_GET['caozuo']=="reset master"){
	if(!mysqli_real_query($con,"reset master")){echo $sql."<br>执行失败";}
}

;?>


<?php if($type=="index"){?>

	<?php
	if($_GET['caozuo']=="set_global_general_log_on"){ // 普通查询日志开启
		$sql="set global general_log=on;";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if($_GET['caozuo']=="set_global_general_log_off"){ //普通查询日志 关闭
		$sql="set global general_log=off;";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if($_GET['caozuo']=="set_global_log_output_file"){ //日志输出方式为 文件
		$sql="set global log_output='file'";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if($_GET['caozuo']=="set_global_log_output_table"){ //日志输出方式为 table
		$sql="set global log_output='table'";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if($_GET['caozuo']=="slow_query_log_on"){ //日志输出方式为 table
		$sql="set global slow_query_log=ON";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if($_GET['caozuo']=="slow_query_log_off"){ //日志输出方式为 table
		$sql="set global slow_query_log=off";
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}
	}
	if(isset($_GET['long_query_time'])){ //设置慢查询时间值
		$sql="SET GLOBAL long_query_time=".$_GET['long_query_time'];
		if(!mysqli_real_query($con,$sql)){
			echo $sql."<br>执行失败";
		}else{
			echo "<script type='text/javascript'>window.location.href='?'</script>";
		}
	}

	?>

				<table>
					<tr>
						<th>二进制日志文件名</th>
						<th>文件大小(字节)</th>
						<th>文件大小</th>
						<th class="caozuo"><a href="?caozuo=reset master">全部删除</a></th>
					</tr>
					<?php
					$sql="show binary logs"; //查看binlog文件列表
					//$sql="show master status";
					$result=mysqli_query($con,$sql);
					if($result){
						while($row = mysqli_fetch_assoc($result)) {
							echo "<tr>";
							echo "<td>{$row['Log_name']}</td>";
							echo "<td>{$row['File_size']}</td>";
							echo "<td>".getSize($row['File_size'])."</td>";
							echo "</tr>";
						}
					}
					mysqli_free_result($result);/*释放记录集*/
					;?>

				</table>
				<br>

				<table>
					<tr>
						<th>Variable_name(二进制日志配置信息)</th>
						<th>Value

						</th>
					</tr>
					<?php
					$sql="show variables like 'log_bin%'";
					$result=mysqli_query($con,$sql);
					if($result){
						while($row = mysqli_fetch_assoc($result)) {
							echo "<tr>";
							echo "<td>{$row['Variable_name']}</td>";
							echo "<td>{$row['Value']}</td>";
							echo "</tr>";
						}
						mysqli_free_result($result);/*释放记录集*/
					}

					;?>

				</table>
				<br>


				<table>
					<tr>
						<th>MySQL查询日志 是否开启/路径</th>
						<th>


						</th>
						<th>说明</th>
						<th>操作</th>
					</tr>
			<?php
			$caozuo1="<a href='?caozuo=set_global_general_log_on'>开启</a><a href='?caozuo=set_global_general_log_off'>关闭</a>"; // 查询日志开启与关闭
			$caozuo2="<a href='?caozuo=set_global_log_output_file'>改为File</a><a href='?caozuo=set_global_log_output_table'>改为Table</a>"; //查询日志输出方式
			$caozuo3="<a href='?caozuo=slow_query_log_on'>开启</a><a href='?caozuo=slow_query_log_off'>关闭</a>";  //慢查询日志的开启与关闭
			$caozuo4.="<form id='long_query_time' method='get'><input id='time' type='text' name='long_query_time' value='0.000001'>秒<input type='submit' value='保存'></form>";

			$sql="show variables where Variable_name like '%general_log%' or Variable_name like 'log_output%' or Variable_name like 'slow_query%' or Variable_name='long_query_time'";
			$result=mysqli_query($con,$sql);
			if($result){
				while($row = mysqli_fetch_assoc($result)) {$caozuo="";$shuoming="";
					if($row['Variable_name']=='general_log'){$shuoming="查询日志开启状态";$caozuo=$caozuo1;}
					if($row['Variable_name']=='general_log_file'){$shuoming="日志路径";}
					if($row['Variable_name']=='log_output'){$shuoming="日志输出方式";$caozuo=$caozuo2;}
					if($row['Variable_name']=='slow_query_log'){$shuoming="慢查询日志开启状态";$caozuo=$caozuo3;}
					if($row['Variable_name']=='slow_query_log_file'){$shuoming="慢查询日志路径";}
					if($row['Variable_name']=='long_query_time'){$shuoming="时间值,单位(秒)";$caozuo=$caozuo4;}
					echo "<tr>";
					echo "<td>{$row['Variable_name']}</td>";
					echo "<td>{$row['Value']}</td>";
					echo "<td>{$shuoming}</td>";
					echo "<td class='caozuo'>{$caozuo}</td>";
					echo "</tr>";
				}
				mysqli_free_result($result);/*释放记录集*/
			}
			?>
				</table>
<br>
<h4>说明</h4>
<p style="color:red;">
查看日志 需要把general_log开启,并把log_output设置为 Table 才可以查看!
</p>
<p style="color:red;">
	每次刷新 显示完会自动清空查询日志表
</p>
<?php }?>


相关推荐

mysql清理二进制日志语句 mysql删除mysql-bin. 文件

这些都是二进制日志文件,删除这些日志 可以执行sql语句:(删除指定时间以前的日志)PURGE MASTER LOGS BEFORE '2022-06-01 15:10:26';查看当

mysql8.0永久关闭二进制日志

打开 mysql安装目录找到my.inimysql8.0默认是开启的。在最后面加上#禁用二进制日志 skip-log-bin重启mysql服务 即可

sqlite mysql 行数据:插入查询结果 insert select 联合使用语句

插入一个字段:insert into 表名称 (字段名) select 字段名 from 表名称 where id=39

mysql日志信息与设置,​ibdata1,mysql-bin

查看 sql查询记录 日志是否开启SHOW GLOBAL VARIABLES LIKE '%general_log%';二进制日志 是否开启SHOW GLOBAL VARIABLES

宝塔面板Nginx日志文件格式修改为自定义格式 log_format详解

第一步:设置log_format打开/www/server/nginx/conf/nginx.conf 在里面添加:log_format zbloglog '$remote_addr [$ti

网站日志文件 .log的换行是怎么区分的

当我们用记事本打开 .log文件的时候,你会发现乱成一团但是当你用excel打开这个文件时,你会发现他一行一行的(editplus打开也会显示一行一行的)这是为什么呢?如果用软件来处理这些文本.应该如

mysql查询字段忽略大小写

//问题:mysql的字符集改成严格区分大小写后,模糊搜索的时候不能忽略大小写。//解决方案:把数据库字段转为小写,like后的参数也都转为小写 SELECT *FROM 表名 LOWER(字段

mysql视图:view(优化查询速度必备)

用法:创建的视图create view 视图表名称 as 查询语句;例如:create view 视图表名称 as select * from class where id>2;select *

mysql 查询速度优化性能优化总结[转载]

基础概念简述锁数据库通过锁机制来解决并发场景 — 共享锁(读锁)和排他锁(写锁)。读锁是不阻塞的,多个客户端可以在同一时刻读取同一个资源;写锁是排他的,并且会阻塞其他的读锁和写锁。简单提下乐观锁和悲观

mysql sqlite 删除旧数据 只保留最新的100条

完整语句:delete from _sql执行记录 where id in (select id from _sql执行记录 order by id desc limit 100,100000)del