Is there a way to tell optimizer not to use index for reads? Of course I can just drop and recreate or disable and rebuild it.
But for large tables it can take time, and for critical tables it can cause issues.
Is there any &quot;more sophisticated&quot; way to tell sql to keep index data(+ handle updates\inserts) without using it?
So if needed it can be &quot;enabled&quot; immediately?
Other than using query hints to force different indexes, or using Query Store to force plans that don't use the index, no.  There's no way to &quot;hide&quot; an enabled index from the query optimizer.