35 lines
1.5 KiB
Plaintext
35 lines
1.5 KiB
Plaintext
---
|
|
page_title: Manipulating State - Terraform CLI
|
|
description: >-
|
|
State data tracks which real-world object corresponds to each resource.
|
|
Inspect state, move or import resources, and more.
|
|
---
|
|
|
|
# Manipulating Terraform State
|
|
|
|
> **Hands-on:** Try the [Manage Resources in Terraform State](https://learn.hashicorp.com/tutorials/terraform/state-cli?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) tutorial on HashiCorp Learn.
|
|
|
|
Terraform uses [state data](/language/state) to remember which
|
|
real-world object corresponds to each resource in the configuration;
|
|
this allows it to modify an existing object when its resource declaration
|
|
changes.
|
|
|
|
Terraform updates state automatically during plans and applies. However, it's
|
|
sometimes necessary to make deliberate adjustments to Terraform's state data,
|
|
usually to compensate for changes to the configuration or the real managed
|
|
infrastructure.
|
|
|
|
Terraform CLI supports several workflows for interacting with state:
|
|
|
|
- [Inspecting State](/cli/state/inspect)
|
|
- [Forcing Re-creation](/cli/state/taint)
|
|
- [Moving Resources](/cli/state/move)
|
|
- Importing Pre-existing Resources (documented in the
|
|
[Importing Infrastructure](/cli/import) section)
|
|
- [Disaster Recovery](/cli/state/recover)
|
|
|
|
~> **Important:** Modifying state data outside a normal plan or apply can cause
|
|
Terraform to lose track of managed resources, which might waste money, annoy
|
|
your colleagues, or even compromise the security of your operations. Make sure
|
|
to keep backups of your state data when modifying state out-of-band.
|