【Mysql】数据库表字段莫名其妙被修改怎么办-binlog

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【Mysql】数据库表字段莫名其妙被修改怎么办-binlog相关的知识,希望对你有一定的参考价值。

参考技术A 查看binlog开关是否开启:

show variables like 'log_bin'

查看binlog位置

su - mysql

which mysqlbinlog

查看binlog 日志内容:

mysqlbinlog --no-defaults --database=mydb --start-datetime="2020-07-01 20:50:00" --stop-datetime="2020-08-01 21:10:00" mysql-bin.000067 -v >/mydata/mysql_5.7_3306_new/log/mysqlbinlogdd.txt

注:-v 参数很关键,目的是导出的binlog里显示sql

通过查看导出的文件/mysqlbinlogdd.txt,定位到对应操作时间的语句update语句:

可以通过线程id定位: Query thread_id=1010981

MYSQL怎么将表中的A字段值更新B字段值?求sql语句

如题,就是将A字段所有值赋予给B字段,求sql语句

参考技术A UPDATE s1 SET a=(SELECT b FROM s2 WHERE id=1) WHERE id=1
这样可以,但是你说同一张表中将a字段的值update给b字段这是不行的。本回答被提问者和网友采纳
参考技术B UPDATE A表 AS a,B 表 AS b SET b表.被赋值字段 = A表.赋值字段 WHERE a表.`id` = b表.`a表对应_id` 参考技术C --请修改table_name 名称 
update table_name set B = A

以上是关于【Mysql】数据库表字段莫名其妙被修改怎么办-binlog的主要内容,如果未能解决你的问题,请参考以下文章

mysql多表关联查询字段为空

mysql批量修改字段动态内容的sql语句怎么写

mysql 两张表的字段对应模糊查找

mysql数据库表修改某一列的类型

mysql数据库表修改某一列的类型

请教如何mysql命令,把b字段值复制到a字段内容前面,谢谢