php – CodeIgniter:所有$this- db- query()方法调用的SQL审计?
|
我正在使用CodeIgniter 2并希望审核所有$this-> db->查询($sql);调用. 我们所有的数据库调用都是通过query()方法调用的;没有活动记录使用.我需要记录$sql查询并将它们输入到自定义表中以进行审计记录.有没有人知道扩展核心系统数据库库审计查询的方法? 看起来这应该很容易,但我似乎无法找到一个简单的解决方案. CI论坛有几个关于旧版本的失败帖子. 最佳答案 这取决于您想要如何审核它们.如果您要查找每页,那么启用分析器就可以了.这显示了在该页面加载上运行的所有查询以及执行它们所花费的时间.请参阅探查器上的以下链接.http://codeigniter.com/user_guide/general/profiling.html 如果您希望在发生所有查询时将其记录下来,然后再读取日志文件,则必须扩展数据库类.如果是这种情况,请发表评论并进一步更新/扩展我的答案. 扩展以覆盖查询() 在/ application / core /中扩展MY_Loader.php并插入此函数
然后创建/application/core/MY_DB_mysql_driver.php 然后在里面你可以覆盖query()
显然,将文件名中的mysql替换为您正在使用/尝试扩展的数据库驱动程序. 这也适用于Active Record,因为所有get()方法都会从驱动程序调用query()来运行查询. (编辑:日照站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- mysql – SQL数据库设计,递归父子关系?
- PHP中的ip2long()是否等于MySQL中的INET_ATON()函
- php – mysql_fetch_array while循环.它是如何工
- MYSQL数据库mysql 5.7安装 MySQL 服务无法启动但
- java – 使用select deadlock的嵌套更新
- mysql – 设计一个关系数据库,并有一种迫在眉睫的
- python – pymssql.OperationalError:DB-Lib错误
- MySql EntityFrameworkCore System.TypeLoadExce
- mysql – ActiveRecord在Ruby 1.9.2-rc1下以ASCI
- c# – 身份实体框架库 – 更新数据库[MySQL]
