¸üÐÂʱ¼ä:2022Äê12ÔÂ08ÈÕ16ʱ49·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:
´íÎóÈÕÖ¾ÊÇ MySQL ÖÐ×îÖØÒªµÄÈÕÖ¾Ö®Ò»£¬Ëü¼Ç¼Á˵±mysqldÆô¶¯ºÍֹͣʱ£¬ÒÔ¼°·þÎñÆ÷ÔÚÔËÐйý³ÌÖз¢ÉúÈκÎÑÏÖØ´íÎóʱµÄÏà¹ØÐÅÏ¢¡£µ±Êý¾Ý¿â³öÏÖÈκιÊÕϵ¼ÖÂÎÞ·¨Õý³£Ê¹ÓÃʱ£¬½¨ÒéÊ×ÏȲ鿴´ËÈÕÖ¾¡£¸ÃÈÕÖ¾ÊÇĬÈÏ¿ªÆôµÄ£¬Ä¬ÈÏ´æ·ÅĿ¼ /var/log/£¬Ä¬ÈϵÄÈÕÖ¾ÎļþÃûΪ mysqld.log ¡£²é¿´ÈÕ־λÖãº

½éÉܶþ½øÖÆÈÕÖ¾(BINLOG)¼Ç¼ÁËËùÓÐµÄ DDL(Êý¾Ý¶¨ÒåÓïÑÔ)Óï¾äºÍ DML(Êý¾Ý²Ù×ÝÓïÑÔ)Óï¾ä£¬µ«²»°üÀ¨Êý¾Ý²éѯ(SELECT¡¢SHOW)Óï¾ä¡£×÷Ó㺢Ù. ÔÖÄÑʱµÄÊý¾Ý»Ö¸´;¢Ú. MySQLµÄÖ÷´Ó¸´ÖÆ¡£ÔÚMySQL8°æ±¾ÖУ¬Ä¬È϶þ½øÖÆÈÕÖ¾ÊÇ¿ªÆô×ŵģ¬Éæ¼°µ½µÄ²ÎÊýÈçÏ£º
show variables like '%log_bin%';

²ÎÊý˵Ã÷£º
log_bin_basename£ºµ±Ç°Êý¾Ý¿â·þÎñÆ÷µÄbinlogÈÕÖ¾µÄ»ù´¡Ãû³Æ(ǰ׺)£¬¾ßÌåµÄbinlogÎļþÃûÐèÒªÔÙ¸ÃbasenameµÄ»ù´¡ÉϼÓÉϱàºÅ(±àºÅ´Ó000001¿ªÊ¼)¡£
log_bin_index£ºbinlogµÄË÷ÒýÎļþ£¬ÀïÃæ¼Ç¼Á˵±Ç°·þÎñÆ÷¹ØÁªµÄbinlogÎļþÓÐÄÄЩ¡£
MySQL·þÎñÆ÷ÖÐÌṩÁ˶àÖÖ¸ñʽÀ´¼Ç¼¶þ½øÖÆÈÕÖ¾£¬¾ßÌå¸ñʽ¼°ÌصãÈçÏ£º

show variables like '%binlog_format%';

ÓÉÓÚÈÕÖ¾ÊÇÒÔ¶þ½øÖÆ·½Ê½´æ´¢µÄ£¬²»ÄÜÖ±½Ó¶ÁÈ¡£¬ÐèҪͨ¹ý¶þ½øÖÆÈÕÖ¾²éѯ¹¤¾ßmysqlbinlog À´²é¿´£¬¾ßÌåÓï·¨£º
mysqlbinlog [ ²ÎÊýÑ¡Ïî ] logfilename
²ÎÊýÑ¡Ï
-d Ö¸¶¨Êý¾Ý¿âÃû³Æ£¬Ö»ÁгöÖ¸¶¨µÄÊý¾Ý¿âÏà¹Ø²Ù×÷¡£
-o ºöÂÔµôÈÕÖ¾ÖеÄǰnÐÐÃüÁî¡£
-v ½«ÐÐʼþ(Êý¾Ý±ä¸ü)ÖØ¹¹ÎªSQLÓï¾ä
-vv ½«ÐÐʼþ(Êý¾Ý±ä¸ü)ÖØ¹¹ÎªSQLÓï¾ä£¬²¢Êä³ö×¢ÊÍÐÅÏ¢
¶ÔÓڱȽϷ±Ã¦µÄÒµÎñϵͳ£¬Ã¿ÌìÉú³ÉµÄbinlogÊý¾Ý¾Þ´ó£¬Èç¹û³¤Ê±¼ä²»Çå³ý£¬½«»áÕ¼ÓôóÁ¿´ÅÅ̿ռ䡣¿ÉÒÔͨ¹ýÒÔϼ¸ÖÖ·½Ê½ÇåÀíÈÕÖ¾£º

Ò²¿ÉÒÔÔÚmysqlµÄÅäÖÃÎļþÖÐÅäÖöþ½øÖÆÈÕÖ¾µÄ¹ýÆÚʱ¼ä£¬ÉèÖÃÁËÖ®ºó£¬¶þ½øÖÆÈÕÖ¾¹ýÆÚ»á×Ô¶¯É¾³ý¡£
show variables like '%binlog_expire_logs_seconds%';
²éѯÈÕÖ¾ÖмǼÁ˿ͻ§¶ËµÄËùÓвÙ×÷Óï¾ä£¬¶ø¶þ½øÖÆÈÕÖ¾²»°üº¬²éѯÊý¾ÝµÄSQLÓï¾ä¡£Ä¬ÈÏÇé¿öÏ£¬²éѯÈÕÖ¾ÊÇ먦ÆôµÄ¡£

Èç¹ûÐèÒª¿ªÆô²éѯÈÕÖ¾£¬¿ÉÒÔÐÞ¸ÄMySQLµÄÅäÖÃÎļþ /etc/my.cnf Îļþ£¬Ìí¼ÓÈçÏÂÄÚÈÝ£º
#¸ÃÑ¡ÏîÓÃÀ´¿ªÆô²éѯÈÕÖ¾ £¬ ¿Éѡֵ £º 0 »òÕß 1 £» 0 ´ú±í¹Ø±Õ£¬ 1 ´ú±í¿ªÆô general_log=1 #ÉèÖÃÈÕÖ¾µÄÎļþÃû £¬ Èç¹ûûÓÐÖ¸¶¨£¬ ĬÈϵÄÎļþÃûΪ host_name.log general_log_file=mysql_query.log
¿ªÆôÁ˲éѯÈÕÖ¾Ö®ºó£¬ÔÚMySQLµÄÊý¾Ý´æ·ÅĿ¼£¬Ò²¾ÍÊÇ /var/lib/mysql/ Ŀ¼Ï¾ͻá³öÏÖ mysql_query.log Îļþ¡£Ö®ºóËùÓеĿͻ§¶ËµÄÔöɾ¸Ä²é²Ù×÷¶¼»á¼Ç¼ÔÚ¸ÃÈÕÖ¾ÎļþÖ®ÖУ¬³¤Ê±¼äÔËÐк󣬸ÃÈÕÖ¾Îļþ½«»á·Ç³£´ó¡£
Âý²éѯÈÕÖ¾¼Ç¼ÁËËùÓÐÖ´ÐÐʱ¼ä³¬¹ý²ÎÊý long_query_time ÉèÖÃÖµ²¢ÇÒɨÃè¼Ç¼Êý²»Ð¡ÓÚ min_examined_row_limit µÄËùÓеÄSQLÓï¾äµÄÈÕÖ¾£¬Ä¬ÈÏ먦Æô¡£long_query_time ĬÈÏΪ 10 Ã룬×îСΪ 0£¬ ¾«¶È¿ÉÒÔµ½Î¢Ãë¡£Èç¹ûÐèÒª¿ªÆôÂý²éѯÈÕÖ¾£¬ÐèÒªÔÚMySQLµÄÅäÖÃÎļþ /etc/my.cnf ÖÐÅäÖÃÈçϲÎÊý£º
#Âý²éѯÈÕÖ¾ slow_query_log=1 #Ö´ÐÐʱ¼ä²ÎÊý long_query_time=2
ĬÈÏÇé¿öÏ£¬²»»á¼Ç¼¹ÜÀíÓï¾ä£¬Ò²²»»á¼Ç¼²»Ê¹ÓÃË÷Òý½øÐвéÕҵIJéѯ¡£¿ÉÒÔʹÓÃlog_slow_admin_statementsºÍ ¸ü¸Ä´ËÐÐΪ log_queries_not_using_indexes£¬ÈçÏÂËùÊö¡£
#¼Ç¼ִÐнÏÂýµÄ¹ÜÀíÓï¾ä log_slow_admin_statements =1 #¼Ç¼ִÐнÏÂýµÄδʹÓÃË÷ÒýµÄÓï¾ä log_queries_not_using_indexes = 1
×¢£ºÉÏÊöËùÓеIJÎÊýÅäÖÃÍê³ÉÖ®ºó£¬¶¼ÐèÒªÖØÐÂÆô¶¯MySQL·þÎñÆ÷²Å¿ÉÒÔÉúЧ¡£
±±¾©Ð£Çø