Next Mon will turn to Winter Trading Schedule, for Hong Kong time should be 22:30-05:00.
How should I change the database setting and how to set backfill in order to prevent the old database data shift an hour and prevent the backfill data overwrite my old data?
That depends on data source you are using. For example eSignal internally always uses UTC (Universal Time) for all timestamps, so you don't need to do anything really, the only thing you might want to change is Time Shift that applies time adjustment on the fly (for the display) without affecting underlying data in the database.
Similar situation is for IQFeed, but they use US Eastern Time (New York) internally.
As I wrote "Time shift" setting does not modify anything in the database, it merely adds or subtracts given number of hours on-the-fly for the display.