diff --git a/db/post_migrate/20230712020407_remove_temporary_index_from_system_note_metadata.rb b/db/post_migrate/20230712020407_remove_temporary_index_from_system_note_metadata.rb
new file mode 100644
index 0000000000000000000000000000000000000000..9000ef208d65ed7d9abd0f4f900d7655ec3af3a0
--- /dev/null
+++ b/db/post_migrate/20230712020407_remove_temporary_index_from_system_note_metadata.rb
@@ -0,0 +1,18 @@
+# frozen_string_literal: true
+
+class RemoveTemporaryIndexFromSystemNoteMetadata < Gitlab::Database::Migration[2.1]
+  disable_ddl_transaction!
+
+  INDEX_NAME = 'tmp_index_for_backfilling_resource_link_events'
+  CONDITION = "action='relate_to_parent' OR action='unrelate_from_parent'"
+
+  def up
+    remove_concurrent_index_by_name :system_note_metadata, INDEX_NAME
+  end
+
+  def down
+    add_concurrent_index :system_note_metadata, :id,
+      where: CONDITION,
+      name: INDEX_NAME
+  end
+end
diff --git a/db/schema_migrations/20230712020407 b/db/schema_migrations/20230712020407
new file mode 100644
index 0000000000000000000000000000000000000000..d31382ed737130c0b818618cce336353931e72ea
--- /dev/null
+++ b/db/schema_migrations/20230712020407
@@ -0,0 +1 @@
+3dc44ced12562d7846fcdc0ad956993705b13f0ecc2418d6ef1853337eea2fff
\ No newline at end of file
diff --git a/db/structure.sql b/db/structure.sql
index 0798515b5f423a0d73bc9ea14622e75e3f954317..9685a18a6a93015fbafda299dbd81d28da698db0 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -33725,8 +33725,6 @@ CREATE INDEX tmp_index_ci_job_artifacts_on_expire_at_where_locked_unknown ON ci_
 
 CREATE INDEX tmp_index_cis_vulnerability_reads_on_id ON vulnerability_reads USING btree (id) WHERE (report_type = 7);
 
-CREATE INDEX tmp_index_for_backfilling_resource_link_events ON system_note_metadata USING btree (id) WHERE (((action)::text = 'relate_to_parent'::text) OR ((action)::text = 'unrelate_from_parent'::text));
-
 CREATE INDEX tmp_index_for_null_member_namespace_id ON members USING btree (member_namespace_id) WHERE (member_namespace_id IS NULL);
 
 CREATE INDEX tmp_index_for_project_namespace_id_migration_on_routes ON routes USING btree (id) WHERE ((namespace_id IS NULL) AND ((source_type)::text = 'Project'::text));