Безопасно ли создавать индекс для существующей таблицы в oracle?
Как это:
CREATE INDEX table_sample_ix03 ON table_sample ( col4, col22 ) TABLESPACE data STORAGE ( INITIAL 10M NEXT 2M MINEXTENTS 1 MAXEXTENTS 100 PCTINCREASE 0 ) ;
Предложение ONLINE рекомендуется при создании индекса во время выполнения запросов DML к таблице.См. http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_5010.htm
Пример:
CREATE INDEX "MYINDEX" ON "MYTABLE" ("MYCOLUMN") ONLINE;
Да.Но если это возможно, вы должны делать это, пока никто не обновляет таблицу, потому что это может повлиять на производительность (это все равно безопасно, в любом случае, повреждение данных не будет).
Да.Почему бы и нет?
Я могу думать о возможных проблемах с производительностью только после выполнения команды.Если таблица очень большая, индексация может занять некоторое время, но в остальном все должно быть в порядке.