Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php mysql记录特定ip的所有mysql查询_Php_Mysql_Logging - Fatal编程技术网

使用php mysql记录特定ip的所有mysql查询

使用php mysql记录特定ip的所有mysql查询,php,mysql,logging,Php,Mysql,Logging,如何使用php-mysql扩展为特定ip启用mysql查询日志记录 我尝试设置系统变量,但没有任何效果: if($_SERVER['REMOTE_ADDR'] == '<some ip>') { mysql_query('SET log_output = "FILE"'); mysql_query('SET general_log_file = "/var/log/sql.log"'); mysql_query('SET general_log = "ON"'

如何使用
php-mysql
扩展为特定ip启用mysql查询日志记录

我尝试设置系统变量,但没有任何效果:

if($_SERVER['REMOTE_ADDR'] == '<some ip>') {
    mysql_query('SET log_output = "FILE"');
    mysql_query('SET general_log_file = "/var/log/sql.log"');
    mysql_query('SET general_log = "ON"');
}  
if($\u服务器['REMOTE\u ADDR']=''){
mysql_查询('SET log_output=“FILE”');
mysql_查询('SET general_log_file=“/var/log/sql.log”);
mysql_查询('SET general_log=“ON”);
}  

Project已经很老了,所以不要建议从
php mysql
切换,或者使用一些ORM/DBAL。

您需要使用
SET-GLOBAL-general\u-log=ON
来打开它,否则什么都不会发生(就像您所经历的那样)。检查此链接:-@RaviHirani-您确定您理解这个问题吗?这不是关于从IP进行日志记录,而是关于让MySQL启用通用日志记录所有查询(这独立于PHP)。上面的IP检查与实际问题无关。@RaviHirani,我已经检查了链接,我认为它会记录mysql客户端的IP,而不是web用户的IP。另外,对于我的项目来说,所有请求的常规日志记录也太繁重了。我认为通过
PHPMYSQL
我可以基于php条件启用会话的常规日志记录,我在回答中提到的smth。