diff --git a/dm/pkg/schema/tracker.go b/dm/pkg/schema/tracker.go index 55e0e5fcf7..9ea536a5ee 100644 --- a/dm/pkg/schema/tracker.go +++ b/dm/pkg/schema/tracker.go @@ -853,14 +853,15 @@ func getColumnsByNames(ti *model.TableInfo, names []ast.CIStr) ([]*model.ColumnI // initDownStreamTrackerParser init downstream tracker parser by default sql_mode. func (dt *downstreamTracker) initDownStreamSQLModeAndParser(tctx *tcontext.Context) error { - setSQLMode := fmt.Sprintf("SET SESSION SQL_MODE = '%s'", mysql.DefaultSQLMode) + var DefaultSQLMode = "ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION" + setSQLMode := fmt.Sprintf("SET SESSION SQL_MODE = '%s'", DefaultSQLMode) _, err := dt.downstreamConn.ExecuteSQL(tctx, nil, []string{setSQLMode}) if err != nil { - return dmterror.ErrSchemaTrackerCannotSetDownstreamSQLMode.Delegate(err, mysql.DefaultSQLMode) + return dmterror.ErrSchemaTrackerCannotSetDownstreamSQLMode.Delegate(err, DefaultSQLMode) } - stmtParser, err := conn.GetParserFromSQLModeStr(mysql.DefaultSQLMode) + stmtParser, err := conn.GetParserFromSQLModeStr(DefaultSQLMode) if err != nil { - return dmterror.ErrSchemaTrackerCannotInitDownstreamParser.Delegate(err, mysql.DefaultSQLMode) + return dmterror.ErrSchemaTrackerCannotInitDownstreamParser.Delegate(err, DefaultSQLMode) } dt.stmtParser = stmtParser return nil