mysqlbinlog 无法查看日志?
1、查看日志内容mysqlbinlog –no-defaults mysql-bin.00001;2、删除binmysql> purge binary logs to 'ablelee.000003';Query OK, 0 rows affected (0.16 sec)3、显示所有日志mysql> show binary logs;4、关闭 bin日志找到配置文件my.cnf,对于linux,一般默认在/etc目录下,打开此文件,使用井号(#)注释掉如下两个配置项目即可。log-bin=mysql-binbinlog_format=mixed。
如何查询mysql的执行记录?
-- 打开sql 执行记录功能set global log_output='TABLE'
; -- 输出到表set global log=ON; -- 打开所有命令执行记录功能general_log, 所有语句: 成功和未成功的.set global log_slow_queries=ON; -- 打开慢查询 sql 记录slow_log, 执行成功的: 慢查询语句和未使用索引的语句set global long_query_time=0.1; -- 慢查询时间限制(秒)set global log_queries_not_using_indexes=ON; -- 记录未使用索引的sql 语句-- 查询sql 执行记录select * from mysql.slow_log order by 1; -- 执行成功的:慢查询语句,和未使用索引的语句select * from mysql.general_log order by 1; -- 所有语句: 成功和未成功的.-- 关闭sql 执行记录
要查询MySQL的执行记录,可以通过查看MySQL的查询日志或者使用SHOW PROCESSLIST命令来获取正在运行的查询。
另外,还可以使用MySQL的慢查询日志来查找执行时间较长的查询。
可以通过修改MySQL的配置文件来启用查询日志和慢查询日志的记录,并且设置相应的记录级别和路径。
通过这些记录,可以查看MySQL的执行记录,了解查询的情况和性能表现,帮助优化和调整数据库的运行。
如何在MySql中记录SQL日志(例如SqlServerProfiler)?
这个是一个典型的SQL on Hadoop使用场景,我在PPT里面也提到了解决方案。一般来说就是通过Sqoop任务把MySQL里面的表格导入HDFS上,然后在HDFS上和log进行各种查询操作。可以使用mapreduce也可以使用Hive,推荐使用Hive,因为你从MySQL里面导入的数据是结构化的。