<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Upgrade Grafana on Grafana Labs</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/</link><description>Recent content in Upgrade Grafana on Grafana Labs</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="/docs/grafana/v12.4/upgrade-guide/index.xml" rel="self" type="application/rss+xml"/><item><title>Strategies for upgrading your self-managed Grafana instance</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/when-to-upgrade/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/when-to-upgrade/</guid><content><![CDATA[&lt;h1 id=&#34;strategies-for-upgrading-your-self-managed-grafana-instance&#34;&gt;Strategies for upgrading your self-managed Grafana instance&lt;/h1&gt;
&lt;p&gt;At Grafana Labs, we believe in shipping features early and often, and in recent years we’ve increased our commitment to that philosophy.&lt;/p&gt;
&lt;p&gt;We no longer wait for the yearly major release to give you access to the next big improvement. Instead, we regularly make new features, bug fixes, and security patches available to our self-managing users (&lt;a href=&#34;/oss/grafana/&#34;&gt;Grafana OSS&lt;/a&gt; and &lt;a href=&#34;/products/enterprise/&#34;&gt;Grafana Enterprise&lt;/a&gt;) throughout the year.&lt;/p&gt;
&lt;p&gt;Having a dependable release process provides users like you with the best Grafana experience possible, and it provides the flexibility to upgrade in a manner that works best for you and your organization.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Grafana Cloud follows a different release cadence than Grafana OSS and Enterprise. In Cloud, Grafana uses Rolling release channels. To learn more about release channels, refer to &lt;a href=&#34;/docs/rolling-release/&#34;&gt;Rolling release channels for Grafana Cloud&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h2 id=&#34;what-to-expect-from-each-release-type&#34;&gt;What to expect from each release type&lt;/h2&gt;
&lt;p&gt;We split Grafana OSS and Grafana Enterprise releases into three main categories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Minor release (every other month)&lt;/strong&gt;: These releases can include new features, deprecation notices, notices about upcoming breaking changes, previously announced breaking changes, bug fixes, and security vulnerability patches.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Major release (once a year, in April/May)&lt;/strong&gt;: These are like a minor release, but accompanied by &lt;a href=&#34;/events/grafanacon/&#34;&gt;GrafanaCON&lt;/a&gt; and a comprehensive upgrade guide for users who like to upgrade only once a year.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Patching release (every month)&lt;/strong&gt;: These include bug fixes for currently supported versions, as well as any security vulnerability patches.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can choose your cadence: For frequent self-managed updates, you should follow the minor release (for example, upgrade 11.1 to 11.2), which also gives you access to the latest features. If you need a longer period to review our new releases, you should follow the major releases. Both strategies get patching releases with security fixes (high severity security fixes also result in ad-hoc patch releases). We’ll get into additional guidance on upgrade cadences later in this guide.&lt;/p&gt;
&lt;h2 id=&#34;how-to-find-the-specifics-for-a-release&#34;&gt;How to find the specifics for a release&lt;/h2&gt;
&lt;p&gt;We love sharing all our great features with you so you can leverage Grafana to its fullest. We also understand that complete release documentation allows you to upgrade with confidence.
Whether it’s knowing that a bug has been fixed, seeing that a security vulnerability is patched, or understanding how to mitigate the impact of breaking changes, proper documentation allows you to make informed decisions about when to upgrade your local Grafana instances.&lt;/p&gt;
&lt;p&gt;We provide release documentation in multiple places to address different needs:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/docs/grafana/latest/whatsnew/?pg=blog&amp;amp;plcmt=body-txt&#34;&gt;&lt;strong&gt;What’s new&lt;/strong&gt;&lt;/a&gt; outlines new features debuting in each major and minor release.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/docs/grafana/latest/breaking-changes/?pg=blog&amp;amp;plcmt=body-txt&#34;&gt;&lt;strong&gt;Breaking changes&lt;/strong&gt;&lt;/a&gt; notify you of updates included in major releases that could impact you and provide mitigation recommendations when needed.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/docs/grafana/latest/upgrade-guide/?pg=blog&amp;amp;plcmt=body-txt&#34;&gt;&lt;strong&gt;Upgrade guides&lt;/strong&gt;&lt;/a&gt; instruct you on how to upgrade to a newer minor or major version.&lt;/li&gt;
&lt;li&gt;And finally, a &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;strong&gt;changelog&lt;/strong&gt;&lt;/a&gt; is generated for every release (major, minor, patching, security) and outlines all changes included in that release.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;when-to-expect-releases&#34;&gt;When to expect releases&lt;/h2&gt;
&lt;p&gt;Grafana currently follows a monthly release schedule. Below are the planned releases for the end of 2025 and the first part of 2026. However, these dates may be subject to change:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;&lt;strong&gt;Release date&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Grafana versions&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Release type&lt;/strong&gt;&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Aug. 12, 2025&lt;/td&gt;
              &lt;td&gt;Supported versions&lt;/td&gt;
              &lt;td&gt;Patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Sept. 23, 2025&lt;/td&gt;
              &lt;td&gt;12.2 &amp;amp; Supported versions&lt;/td&gt;
              &lt;td&gt;Minor &amp;amp; patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Oct. 21, 2025&lt;/td&gt;
              &lt;td&gt;Supported versions&lt;/td&gt;
              &lt;td&gt;Patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Nov. 18, 2025&lt;/td&gt;
              &lt;td&gt;12.3 &amp;amp; Supported versions&lt;/td&gt;
              &lt;td&gt;Minor &amp;amp; patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Dec. 16, 2025&lt;/td&gt;
              &lt;td&gt;Supported versions&lt;/td&gt;
              &lt;td&gt;Patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Jan. 13, 2026&lt;/td&gt;
              &lt;td&gt;Supported versions&lt;/td&gt;
              &lt;td&gt;Patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Feb. 24, 2026&lt;/td&gt;
              &lt;td&gt;12.4 &amp;amp; Supported versions&lt;/td&gt;
              &lt;td&gt;Minor &amp;amp; patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Mar. 24, 2026&lt;/td&gt;
              &lt;td&gt;Supported versions&lt;/td&gt;
              &lt;td&gt;Patching&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;TBD&lt;/td&gt;
              &lt;td&gt;Grafana 13&lt;/td&gt;
              &lt;td&gt;Major&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;a-few-important-notes&#34;&gt;A few important notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The schedule above outlines how we plan release dates. However, unforeseen events and circumstances may cause dates to change.&lt;/li&gt;
&lt;li&gt;High severity security and feature degradation incidents will result in ad-hoc releases that are not scheduled ahead of time.&lt;/li&gt;
&lt;li&gt;Patching releases are for all supported minor versions of Grafana. Each supported minor version receives patch releases with bug fixes and security patches until its end of life.&lt;/li&gt;
&lt;li&gt;Release freezes: Each year Grafana implements two release freezes to accommodate for the holiday season. During these times, no scheduled releases will be executed. However, this does not apply to changes that may be required during the course of an operational or security incident.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;grafana-security-releases-improved-version-naming-convention&#34;&gt;Grafana security releases: improved version naming convention&lt;/h2&gt;
&lt;p&gt;We&amp;rsquo;ve enhanced our naming convention for security release versions to make it easier to clearly identify our security releases from our standard patching releases.&lt;/p&gt;
&lt;p&gt;In the past, critical vulnerabilities triggered unscheduled releases that incremented the patch version (e.g., 10.3.0 to 10.3.1). However, we found that the naming convention for these releases didn&amp;rsquo;t clearly communicate the nature of the update. For example, if there was a version change from 11.3.0 to 11.3.1, there was no indication whether it was a security fix, a bug fix, or a minor feature update. This lack of clarity led to confusion about the urgency and nature of the update. &lt;br&gt;&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Docker does not allow the plus sign (&lt;code&gt;&#43;&lt;/code&gt;) in image tag names. A plus sign (&lt;code&gt;&#43;&lt;/code&gt;) will be a rendered as a dash (&lt;code&gt;-&lt;/code&gt;) in the docker tag.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;Our new approach directly addresses this issue. Going forward, security releases will be appended with &amp;ldquo;&#43;security&amp;rdquo; to indicate that the release is the indicated version PLUS the security fix.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For example&lt;/strong&gt;: A release named &amp;ldquo;11.2.3&#43;security-01&amp;rdquo; would consist of what was released in 11.2.3 PLUS the indicated security fix. Once released, the security fix will also then be automatically included in all future releases of the impacted version.&lt;/p&gt;
&lt;p&gt;This naming convention should make it easier to identify security updates and the Grafana version they&amp;rsquo;re based on, allowing for a better understanding of the importance and urgency of each release.&lt;/p&gt;
&lt;h2 id=&#34;what-to-know-about-version-support&#34;&gt;What to know about version support&lt;/h2&gt;
&lt;p&gt;Self-managed Grafana users have control over when they upgrade to a new version of Grafana. To help you make an informed decision about whether it’s time to upgrade, it’s important that you understand the level of support provided for your current version.&lt;/p&gt;
&lt;p&gt;For self-managed Grafana (both Enterprise and OSS), the support for versions follows these rules:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Each minor release is supported for 9 months after its release date&lt;/li&gt;
&lt;li&gt;The last minor release of a major version receives extended support for 15 months after its release date&lt;/li&gt;
&lt;li&gt;Support levels change as new versions are released:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full Support&lt;/strong&gt;: The current major version receives new features through new minor releases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Patch Support&lt;/strong&gt;: Individual minor versions receive patch releases (bug fixes and security patches) until end of life&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Not Supported&lt;/strong&gt;: Versions beyond their support period receive no updates&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is an overview of version support through 2026:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;&lt;strong&gt;Version&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Release date&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Support end date&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Support level&lt;/strong&gt;&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;11.3.x&lt;/td&gt;
              &lt;td&gt;October 22, 2024&lt;/td&gt;
              &lt;td&gt;July 22, 2025&lt;/td&gt;
              &lt;td&gt;Not Supported&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;11.4.x&lt;/td&gt;
              &lt;td&gt;December 5, 2024&lt;/td&gt;
              &lt;td&gt;September 5, 2025&lt;/td&gt;
              &lt;td&gt;Not Supported&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;11.5.x&lt;/td&gt;
              &lt;td&gt;January 28, 2025&lt;/td&gt;
              &lt;td&gt;October 28, 2025&lt;/td&gt;
              &lt;td&gt;Not Supported&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;11.6.x (Last minor of 11)&lt;/td&gt;
              &lt;td&gt;March 25, 2025&lt;/td&gt;
              &lt;td&gt;June 25, 2026&lt;/td&gt;
              &lt;td&gt;Patch Support&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;12.0.x&lt;/td&gt;
              &lt;td&gt;May 5, 2025&lt;/td&gt;
              &lt;td&gt;February 5, 2026&lt;/td&gt;
              &lt;td&gt;Not Supported&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;12.1.x&lt;/td&gt;
              &lt;td&gt;July 22, 2025&lt;/td&gt;
              &lt;td&gt;April 22, 2026&lt;/td&gt;
              &lt;td&gt;Patch Support&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;12.2.x&lt;/td&gt;
              &lt;td&gt;September 23, 2025&lt;/td&gt;
              &lt;td&gt;June 23, 2026&lt;/td&gt;
              &lt;td&gt;Patch Support&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;12.3.x&lt;/td&gt;
              &lt;td&gt;November 19, 2025&lt;/td&gt;
              &lt;td&gt;August 19, 2026&lt;/td&gt;
              &lt;td&gt;Patch Support&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;12.4.x (Last minor of 12)&lt;/td&gt;
              &lt;td&gt;February 24, 2026&lt;/td&gt;
              &lt;td&gt;May 24, 2027&lt;/td&gt;
              &lt;td&gt;Patch Support&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;13.0.0&lt;/td&gt;
              &lt;td&gt;TBD&lt;/td&gt;
              &lt;td&gt;TBD&lt;/td&gt;
              &lt;td&gt;Yet to be released&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;how-are-these-versions-supported&#34;&gt;How are these versions supported?&lt;/h2&gt;
&lt;p&gt;Self-managed Grafana follows semantic-like versioning (MAJOR.MINOR.PATCH). Here&amp;rsquo;s how different types of releases work:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Major releases&lt;/strong&gt; (e.g., 12.0.0, 13.0.0):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Awesome new features as well as significant architectural improvements and modernizations&lt;/li&gt;
&lt;li&gt;May include breaking changes that require migration steps&lt;/li&gt;
&lt;li&gt;Released once per year&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Minor releases&lt;/strong&gt; (e.g., 12.3.0, 12.4.0):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Contain new features and enhancements&lt;/li&gt;
&lt;li&gt;Include bug fixes and security patches&lt;/li&gt;
&lt;li&gt;Released every other month&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Patch releases&lt;/strong&gt; (e.g., 12.3.1, 12.3.2):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Only&lt;/strong&gt; contain bug fixes and security patches&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No new features&lt;/strong&gt; - these wait until the next minor release&lt;/li&gt;
&lt;li&gt;Released monthly&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Support levels by version:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Full Support&lt;/strong&gt; (current major version):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Gets new minor releases with new features approximately every other month&lt;/li&gt;
&lt;li&gt;All minor versions within the major receive patch releases until end of life&lt;/li&gt;
&lt;li&gt;Example: Major 12.x gets new features via 12.1.0, 12.2.0, 12.3.0, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Patch Support&lt;/strong&gt; (individual minor versions):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Each minor version receives patch releases (bug fixes and security patches) until end of life&lt;/li&gt;
&lt;li&gt;No new features - these only come with new minor releases&lt;/li&gt;
&lt;li&gt;Example: 12.3.x gets 12.3.1, 12.3.2, etc. with fixes only&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Not Supported&lt;/strong&gt;: Versions beyond their support period receive no updates and should be upgraded.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;: When 12.3.0 is released, it includes new features. Subsequent releases like 12.3.1 and 12.3.2 only include bug fixes and security updates. All new features developed after 12.3.0 wait until 12.4.0 is released.&lt;/p&gt;
&lt;h3 id=&#34;what-is-a-critical-feature-degradation&#34;&gt;What is a critical feature degradation?&lt;/h3&gt;
&lt;p&gt;A critical feature degradation usually meets one of the following criteria:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Major functionality is universally unavailable (for example, cannot create dashboards, unable to authenticate).&lt;/li&gt;
&lt;li&gt;Major (critical) impact to a significant amount of customers.&lt;/li&gt;
&lt;li&gt;Major escalated incident for one or many customers.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;self-managing-upgrade-strategies&#34;&gt;Self-managing upgrade strategies&lt;/h2&gt;
&lt;p&gt;Based on your needs, choose your ideal upgrade strategy. Here’s what that might look like in practice:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;&lt;strong&gt;Strategy/cadence&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Advantages/disadvantages&lt;/strong&gt;&lt;/th&gt;
              &lt;th&gt;&lt;strong&gt;Example upgrade procedure&lt;/strong&gt;&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Minor / bi-monthly (11.1 to 11.2)&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Our recommended strategy. It combines up-to-date, secure releases with access to latest features as soon as they&amp;rsquo;re released. &lt;ul&gt;&lt;li&gt;Small changelog to review&lt;/li&gt;&lt;li&gt;Highest compatibility with actively maintained plugins&lt;/li&gt;&lt;li&gt;Easy migration to &lt;a href=&#34;/products/cloud&#34;&gt;Grafana Cloud&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
              &lt;td&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;January 2025&lt;/strong&gt;: You review the 11.5 changelog and deploy the release to testing&lt;/li&gt;&lt;li&gt;&lt;strong&gt;February 2025&lt;/strong&gt;: You deploy 11.5 to production&lt;/li&gt;&lt;li&gt;&lt;strong&gt;March 2025&lt;/strong&gt;: 11.6 is released&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Major / yearly (10.0 to 11.0)&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Yearly upgrade path that still gives access to up-to-date features presented at GrafanaCON.&lt;ul&gt;&lt;li&gt;Big changelog to review&lt;/li&gt;&lt;li&gt;High compatibility with plugins&lt;/li&gt;&lt;li&gt;Relatively easy migration to &lt;a href=&#34;/products/cloud&#34;&gt;Grafana Cloud&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
              &lt;td&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;May 2024&lt;/strong&gt;: 11.0 is released, you start a big changelog review&lt;/li&gt;&lt;li&gt;&lt;strong&gt;June 2024&lt;/strong&gt;: You deploy 11.0 to testing&lt;/li&gt;&lt;li&gt;&lt;strong&gt;July 2024&lt;/strong&gt;: You deploy 11.0 to production&lt;/li&gt;&lt;li&gt;&lt;strong&gt;May 2025&lt;/strong&gt;: 12.0 is released&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Previous major / yearly (10.4 to 11.6)&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Release with extended support timeline&lt;ul&gt;&lt;li&gt;Limited compatibility with actively developed plugins&lt;/li&gt;&lt;li&gt;Big changelog to review&lt;/li&gt;&lt;li&gt;Migrations to Grafana Cloud might require professional support&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
              &lt;td&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;May 2025&lt;/strong&gt;: 12.0 is released, marking the previous minor (11.6.x) with extended support, you start a big changelog review (10.4.x to 11.6.x)&lt;/li&gt;&lt;li&gt;&lt;strong&gt;June 2025&lt;/strong&gt;: You deploy 11.6.x to testing&lt;/li&gt;&lt;li&gt;&lt;strong&gt;July 2025&lt;/strong&gt;: You deploy 11.6.x to production&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;Follow the “minor” strategy for the most flexibility, as you can also occasionally lengthen the cadence to a full quarter and still rely on your currently deployed minor release being supported with security fixes.&lt;/p&gt;
&lt;h2 id=&#34;how-the-grafana-team-catches-bugs-and-breaks-during-the-release-process&#34;&gt;How the Grafana team catches bugs and breaks during the release process&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Each team writes automated tests for their code and we run &lt;a href=&#34;https://github.com/grafana/grafana/blob/HEAD/contribute/developer-guide.md#test-grafana&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;automated tests&lt;/a&gt; which include unit tests, integration tests, end-to-end tests, and load tests. For plugins specifically, we test the frontend and backend parts of a data source (unit), integrating a data source with a matrix of Grafana versions (E2E), and the contract between the data source and the API it consumes (integration).&lt;/li&gt;
&lt;li&gt;We perform manual acceptance and smoke testing internally for new features by deploying to our internal observability stack. After that, we progressively roll out in Grafana Cloud, and then cut an OSS and Enterprise release. Each stage catches bugs.&lt;/li&gt;
&lt;li&gt;We ship new features in Experimental or Private Preview &lt;a href=&#34;/docs/release-life-cycle/&#34;&gt;release stages&lt;/a&gt;, behind feature toggles. This helps us improve the feature during development. If you are interested in gaining early access to features (including in your development or test environments), please let us know.&lt;/li&gt;
&lt;li&gt;We scan Grafana, all plugins and their dependencies continuously for security vulnerabilities.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;minimize-the-likelihood-of-bugs-and-problems-during-upgrade&#34;&gt;Minimize the likelihood of bugs and problems during upgrade&lt;/h2&gt;
&lt;p&gt;Despite thorough testing, you can experience problems when upgrading:&lt;/p&gt;
&lt;h3 id=&#34;bugs&#34;&gt;Bugs&lt;/h3&gt;
&lt;p&gt;Bugs are unexpected side effects of code changes in the release, which cause problems. Some bugs occur for all users, and we usually catch these in the early stages of testing. Others occur in a small number of Grafana instances with specific configuration or unusual use cases; for example a specific authentication setup or a combination of feature toggles. Grafana plugins also interact with external services via API to query data, and sometimes these APIs change without notice, causing issues for your dashboards that depend on these datasources. Grafana Labs has monitoring in place to regularly test these APIs, but at times they break in unexpected ways.&lt;/p&gt;
&lt;p&gt;Reduce the risk of bugs by staying current and rolling out upgrades across dev or test environments before production. A Grafana Enterprise license entitles you to an additional dev and test instance for this purpose, available through your account team, and in Grafana Cloud you can create dev and test stacks that upgrade before production by using &lt;a href=&#34;/docs/rolling-release/&#34;&gt;rolling release channels&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Back up your database on a regular basis, and especially before you upgrade.&lt;/li&gt;
&lt;li&gt;Roll back and report issues if you experience problems in dev or test.&lt;/li&gt;
&lt;li&gt;In Cloud, run a dev or test stack on the &lt;code&gt;fast&lt;/code&gt; channel, and run your production stack on &lt;code&gt;steady&lt;/code&gt; or &lt;code&gt;slow&lt;/code&gt;. To change your release channel, open a support ticket.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;known-breaking-changes&#34;&gt;Known breaking changes&lt;/h3&gt;
&lt;p&gt;As a rule we always seek backward compatibility and migration, and reserve breaking changes for Grafana’s once-yearly major release. However occasionally small breaking changes (like updates to API payloads) will ship in minor releases. These are announced in &lt;a href=&#34;/docs/grafana/latest/upgrade-guide/&#34;&gt;upgrade guides&lt;/a&gt;, &lt;a href=&#34;/docs/grafana-cloud/whats-new/&#34;&gt;What’s New&lt;/a&gt;, and our &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;changelog&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Always read the &lt;a href=&#34;/docs/grafana/latest/upgrade-guide/&#34;&gt;upgrade guide&lt;/a&gt; and &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;changelog&lt;/a&gt; prior to upgrading to learn about and account for breaking changes.&lt;/p&gt;
&lt;h3 id=&#34;plugin-incompatibility&#34;&gt;Plugin incompatibility&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Grafana core&lt;/strong&gt; ships as a single binary and consists of Dashboards, Alerts, Explore, Authentication and Authorization, Reporting, some core data sources, and other components. However, almost everyone who uses Grafana also uses &lt;strong&gt;plugins&lt;/strong&gt;: panels, data sources, and applications that are released independently of Grafana. Every plugin version lists its Grafana version dependencies (you can see them at &lt;a href=&#34;/grafana/plugins/&#34;&gt;https://grafana.com/grafana/plugins/&lt;/a&gt;) but different versions of different plugins can also interact with each other - for example you might visualize data from a data source in a panel in Grafana, all three of which are versioned independently of each other. That can create issues that are hard to catch in testing.&lt;/p&gt;
&lt;p&gt;To minimize the likelihood of plugin incompatibility issues, run the latest available version of plugins and update them regularly. Always &lt;a href=&#34;/docs/grafana/latest/administration/plugin-management/#update-a-plugin&#34;&gt;update plugins&lt;/a&gt; before updating Grafana. Plugins also follow Semver patterns, so review the plugin’s changelog for breaking changes before upgrading to a new major version of that plugin.&lt;/p&gt;
]]></content><description>&lt;h1 id="strategies-for-upgrading-your-self-managed-grafana-instance">Strategies for upgrading your self-managed Grafana instance&lt;/h1>
&lt;p>At Grafana Labs, we believe in shipping features early and often, and in recent years we’ve increased our commitment to that philosophy.&lt;/p></description></item><item><title>Upgrade to Grafana v12.4</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.4/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.4/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v124&#34;&gt;Upgrade to Grafana v12.4&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro_2.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline all these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New&lt;/a&gt; document.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
]]></content><description>&lt;h1 id="upgrade-to-grafana-v124">Upgrade to Grafana v12.4&lt;/h1>
&lt;div data-shared="upgrade/intro_2.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v12.3</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.3/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.3/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v123&#34;&gt;Upgrade to Grafana v12.3&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro_2.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline all these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New&lt;/a&gt; document.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;annotation-table-migration&#34;&gt;Annotation table migration&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Plan for increased disk usage when upgrading from Grafana v11.x&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Upgrading from Grafana v11.x to Grafana v12.x triggers a full-table rewrite of the &lt;code&gt;annotation&lt;/code&gt; table. The migration populates the new &lt;code&gt;dashboard_uid&lt;/code&gt; column, which causes the database to rewrite the entire table and rebuild its indexes.&lt;/p&gt;
&lt;p&gt;Environments with large annotation datasets can experience significant temporary disk usage increase, which may lead to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rapid disk consumption on the database data volume&lt;/li&gt;
&lt;li&gt;Database migration failures (for example, &amp;ldquo;could not extend file: No space left on device&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Grafana startup failures&lt;/li&gt;
&lt;li&gt;Extended downtime during the upgrade process&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;re affected if you&amp;rsquo;re upgrading from Grafana v11.x to v12.x and you have a large &lt;code&gt;annotation&lt;/code&gt; table in your database.&lt;/p&gt;
&lt;p&gt;To check your annotation table size, connect to your database and check the table size.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    pg_size_pretty(pg_relation_size(&amp;#39;annotation&amp;#39;))       AS table_size,
    pg_size_pretty(pg_indexes_size(&amp;#39;annotation&amp;#39;))        AS indexes_size,
    pg_size_pretty(pg_total_relation_size(&amp;#39;annotation&amp;#39;)) AS total_size;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    ROUND(data_length / 1024 / 1024, 2) AS table_size_mb,
    ROUND(index_length / 1024 / 1024, 2) AS indexes_size_mb,
    ROUND((data_length &amp;#43; index_length) / 1024 / 1024, 2) AS total_size_mb
FROM information_schema.tables
WHERE table_schema = DATABASE()
    AND table_name = &amp;#39;annotation&amp;#39;;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, check the database file size directly, as SQLite stores all tables in a single file. You can run the following command from your terminal:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;ls -lh &amp;lt;PATH/TO/GRAFANA.DB&amp;gt;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If your total size is several gigabytes or more, you should plan accordingly before upgrading.&lt;/p&gt;
&lt;h4 id=&#34;what-should-i-do-before-upgrading&#34;&gt;What should I do before upgrading?&lt;/h4&gt;
&lt;p&gt;Before you upgrade, take the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Verify available disk space&lt;/strong&gt;: Ensure you have at least 2-3 times the current &lt;code&gt;annotation&lt;/code&gt; table size available as free disk space on your database data volume.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Review your annotation data&lt;/strong&gt;: Consider whether you need to retain all historical annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Clean up old annotations (optional)&lt;/strong&gt;: If you have annotations you don&amp;rsquo;t need, remove them before upgrading.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Back up your database&lt;/strong&gt;: Always back up your Grafana database before performing an upgrade. For more information, refer to &lt;a href=&#34;#back-up-grafana&#34;&gt;Back up Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;what-should-i-do-after-upgrading&#34;&gt;What should I do after upgrading?&lt;/h4&gt;
&lt;p&gt;After successfully upgrading to Grafana v12.x, you can reclaim disk space by performing database maintenance operations during a maintenance window.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run a &lt;code&gt;VACUUM FULL&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM FULL annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run an &lt;code&gt;OPTIMIZE TABLE&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;OPTIMIZE TABLE annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, run a &lt;code&gt;VACUUM&lt;/code&gt; operation on the database:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;These operations require a lock on the table and may take significant time depending on the table size. Plan to run these during a low-traffic period.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v123">Upgrade to Grafana v12.3&lt;/h1>
&lt;div data-shared="upgrade/intro_2.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v12.2</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.2/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.2/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v122&#34;&gt;Upgrade to Grafana v12.2&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro_2.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline all these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New&lt;/a&gt; document.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;annotation-table-migration&#34;&gt;Annotation table migration&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Plan for increased disk usage when upgrading from Grafana v11.x&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Upgrading from Grafana v11.x to Grafana v12.x triggers a full-table rewrite of the &lt;code&gt;annotation&lt;/code&gt; table. The migration populates the new &lt;code&gt;dashboard_uid&lt;/code&gt; column, which causes the database to rewrite the entire table and rebuild its indexes.&lt;/p&gt;
&lt;p&gt;Environments with large annotation datasets can experience significant temporary disk usage increase, which may lead to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rapid disk consumption on the database data volume&lt;/li&gt;
&lt;li&gt;Database migration failures (for example, &amp;ldquo;could not extend file: No space left on device&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Grafana startup failures&lt;/li&gt;
&lt;li&gt;Extended downtime during the upgrade process&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;re affected if you&amp;rsquo;re upgrading from Grafana v11.x to v12.x and you have a large &lt;code&gt;annotation&lt;/code&gt; table in your database.&lt;/p&gt;
&lt;p&gt;To check your annotation table size, connect to your database and check the table size.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    pg_size_pretty(pg_relation_size(&amp;#39;annotation&amp;#39;))       AS table_size,
    pg_size_pretty(pg_indexes_size(&amp;#39;annotation&amp;#39;))        AS indexes_size,
    pg_size_pretty(pg_total_relation_size(&amp;#39;annotation&amp;#39;)) AS total_size;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    ROUND(data_length / 1024 / 1024, 2) AS table_size_mb,
    ROUND(index_length / 1024 / 1024, 2) AS indexes_size_mb,
    ROUND((data_length &amp;#43; index_length) / 1024 / 1024, 2) AS total_size_mb
FROM information_schema.tables
WHERE table_schema = DATABASE()
    AND table_name = &amp;#39;annotation&amp;#39;;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, check the database file size directly, as SQLite stores all tables in a single file. You can run the following command from your terminal:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;ls -lh &amp;lt;PATH/TO/GRAFANA.DB&amp;gt;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If your total size is several gigabytes or more, you should plan accordingly before upgrading.&lt;/p&gt;
&lt;h4 id=&#34;what-should-i-do-before-upgrading&#34;&gt;What should I do before upgrading?&lt;/h4&gt;
&lt;p&gt;Before you upgrade, take the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Verify available disk space&lt;/strong&gt;: Ensure you have at least 2-3 times the current &lt;code&gt;annotation&lt;/code&gt; table size available as free disk space on your database data volume.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Review your annotation data&lt;/strong&gt;: Consider whether you need to retain all historical annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Clean up old annotations (optional)&lt;/strong&gt;: If you have annotations you don&amp;rsquo;t need, remove them before upgrading.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Back up your database&lt;/strong&gt;: Always back up your Grafana database before performing an upgrade. For more information, refer to &lt;a href=&#34;#back-up-grafana&#34;&gt;Back up Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;what-should-i-do-after-upgrading&#34;&gt;What should I do after upgrading?&lt;/h4&gt;
&lt;p&gt;After successfully upgrading to Grafana v12.x, you can reclaim disk space by performing database maintenance operations during a maintenance window.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run a &lt;code&gt;VACUUM FULL&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM FULL annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run an &lt;code&gt;OPTIMIZE TABLE&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;OPTIMIZE TABLE annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, run a &lt;code&gt;VACUUM&lt;/code&gt; operation on the database:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;These operations require a lock on the table and may take significant time depending on the table size. Plan to run these during a low-traffic period.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v122">Upgrade to Grafana v12.2&lt;/h1>
&lt;div data-shared="upgrade/intro_2.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v12.1</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.1/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.1/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v121&#34;&gt;Upgrade to Grafana v12.1&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro_2.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline all these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New&lt;/a&gt; document.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;annotation-table-migration&#34;&gt;Annotation table migration&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Plan for increased disk usage when upgrading from Grafana v11.x&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Upgrading from Grafana v11.x to Grafana v12.x triggers a full-table rewrite of the &lt;code&gt;annotation&lt;/code&gt; table. The migration populates the new &lt;code&gt;dashboard_uid&lt;/code&gt; column, which causes the database to rewrite the entire table and rebuild its indexes.&lt;/p&gt;
&lt;p&gt;Environments with large annotation datasets can experience significant temporary disk usage increase, which may lead to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rapid disk consumption on the database data volume&lt;/li&gt;
&lt;li&gt;Database migration failures (for example, &amp;ldquo;could not extend file: No space left on device&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Grafana startup failures&lt;/li&gt;
&lt;li&gt;Extended downtime during the upgrade process&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;re affected if you&amp;rsquo;re upgrading from Grafana v11.x to v12.x and you have a large &lt;code&gt;annotation&lt;/code&gt; table in your database.&lt;/p&gt;
&lt;p&gt;To check your annotation table size, connect to your database and check the table size.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    pg_size_pretty(pg_relation_size(&amp;#39;annotation&amp;#39;))       AS table_size,
    pg_size_pretty(pg_indexes_size(&amp;#39;annotation&amp;#39;))        AS indexes_size,
    pg_size_pretty(pg_total_relation_size(&amp;#39;annotation&amp;#39;)) AS total_size;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    ROUND(data_length / 1024 / 1024, 2) AS table_size_mb,
    ROUND(index_length / 1024 / 1024, 2) AS indexes_size_mb,
    ROUND((data_length &amp;#43; index_length) / 1024 / 1024, 2) AS total_size_mb
FROM information_schema.tables
WHERE table_schema = DATABASE()
    AND table_name = &amp;#39;annotation&amp;#39;;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, check the database file size directly, as SQLite stores all tables in a single file. You can run the following command from your terminal:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;ls -lh &amp;lt;PATH/TO/GRAFANA.DB&amp;gt;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If your total size is several gigabytes or more, you should plan accordingly before upgrading.&lt;/p&gt;
&lt;h4 id=&#34;what-should-i-do-before-upgrading&#34;&gt;What should I do before upgrading?&lt;/h4&gt;
&lt;p&gt;Before you upgrade, take the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Verify available disk space&lt;/strong&gt;: Ensure you have at least 2-3 times the current &lt;code&gt;annotation&lt;/code&gt; table size available as free disk space on your database data volume.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Review your annotation data&lt;/strong&gt;: Consider whether you need to retain all historical annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Clean up old annotations (optional)&lt;/strong&gt;: If you have annotations you don&amp;rsquo;t need, remove them before upgrading.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Back up your database&lt;/strong&gt;: Always back up your Grafana database before performing an upgrade. For more information, refer to &lt;a href=&#34;#back-up-grafana&#34;&gt;Back up Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;what-should-i-do-after-upgrading&#34;&gt;What should I do after upgrading?&lt;/h4&gt;
&lt;p&gt;After successfully upgrading to Grafana v12.x, you can reclaim disk space by performing database maintenance operations during a maintenance window.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run a &lt;code&gt;VACUUM FULL&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM FULL annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run an &lt;code&gt;OPTIMIZE TABLE&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;OPTIMIZE TABLE annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, run a &lt;code&gt;VACUUM&lt;/code&gt; operation on the database:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;These operations require a lock on the table and may take significant time depending on the table size. Plan to run these during a low-traffic period.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v121">Upgrade to Grafana v12.1&lt;/h1>
&lt;div data-shared="upgrade/intro_2.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v12.0</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.0/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v12.0/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v120&#34;&gt;Upgrade to Grafana v12.0&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro_2.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline all these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New&lt;/a&gt; document.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;grafana-data-source-uid-format-enforcement&#34;&gt;Grafana data source UID format enforcement&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Ensure that your data source UIDs follow the correct standard&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ve had standard ways to define UIDs for Grafana objects for years (at least &lt;a href=&#34;https://github.com/grafana/grafana/issues/7883&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;since Grafana v5&lt;/a&gt;). While all of our internal code complies with this format, we haven&amp;rsquo;t strictly enforced this format in REST APIs and provisioning paths that allow the creation and update of data sources.&lt;/p&gt;
&lt;p&gt;In Grafana v11.1, we &lt;a href=&#34;https://github.com/grafana/grafana/pull/86598&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;introduced&lt;/a&gt; a warning that is sent to Grafana server logs every time a data source instance is created or updated using an invalid UID format.&lt;/p&gt;
&lt;p&gt;In Grafana v11.2, we &lt;a href=&#34;https://github.com/grafana/grafana/pull/89363/files&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;added&lt;/a&gt; a new feature flag called &lt;code&gt;failWrongDSUID&lt;/code&gt; that is turned off by default. When enabled, the REST APIs and provisioning reject any requests to create or update data source instances that have an incorrect UID.&lt;/p&gt;
&lt;p&gt;In Grafana v12.0, we&amp;rsquo;re turning the feature flag &lt;code&gt;failWrongDSUID&lt;/code&gt; on by default.&lt;/p&gt;
&lt;h4 id=&#34;correct-uid-format&#34;&gt;Correct UID format&lt;/h4&gt;
&lt;p&gt;You can find the exact regex definition &lt;a href=&#34;https://github.com/grafana/grafana/blob/c92f5169d1c83508beb777f71a93336179fe426e/pkg/util/shortid_generator.go#L32-L45&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;in the &lt;code&gt;grafana/grafana&lt;/code&gt; repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A data source UID can only contain:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Latin characters (&lt;code&gt;a-Z&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Numbers (&lt;code&gt;0-9&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Dash symbols (&lt;code&gt;-&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;You can fetch all your data sources using the &lt;code&gt;/api/datasources&lt;/code&gt; API. Review the &lt;code&gt;uid&lt;/code&gt; fields, comparing them to the correct format, as shown &lt;a href=&#34;/docs/grafana/latest/developers/http_api/data_source/#get-all-data-sources&#34;&gt;in the docs&lt;/a&gt;. The following script can help, but note that it&amp;rsquo;s missing authentication that you &lt;a href=&#34;/docs/grafana/latest/developers/http_api/#authenticating-api-requests&#34;&gt;have to add yourself&lt;/a&gt;:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;curl http://localhost:3000/api/datasources | jq &amp;#39;.[] | select((.uid | test(&amp;#34;^[a-zA-Z0-9\\-_]&amp;#43;$&amp;#34;) | not) or (.uid | length &amp;gt; 40)) | {id, uid, name, type}&amp;#39;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Alternatively, you can check the server logs for the &lt;code&gt;Invalid datasource uid&lt;/code&gt; &lt;a href=&#34;https://github.com/grafana/grafana/blob/68751ed3107c4d15d33f34b15183ee276611785c/pkg/services/datasources/service/store.go#L429&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;error&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;what-do-i-do-if-im-affected&#34;&gt;What do I do if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;ll need to create a new data source with the correct UID and update your dashboards and alert rules to use it.&lt;/p&gt;
&lt;h4 id=&#34;how-do-i-update-my-dashboards-to-use-the-new-or-updated-data-source&#34;&gt;How do I update my dashboards to use the new or updated data source?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Go to the dashboard using the data source and update it by selecting the new or updated data source from the picker below your panel.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;OR&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Update the dashboard&amp;rsquo;s JSON model directly using search and replace.&lt;/p&gt;
&lt;p&gt;Navigate to &lt;a href=&#34;/docs/grafana/latest/dashboards/build-dashboards/view-dashboard-json-model/&#34;&gt;dashboard json model&lt;/a&gt; and carefully replace all the instances of the old &lt;code&gt;uid&lt;/code&gt; with the newly created &lt;code&gt;uid&lt;/code&gt;.&lt;/p&gt;
&lt;figure
      class=&#34;figure-wrapper figure-wrapper__lightbox w-100p &#34;
      style=&#34;max-width: 2970px;&#34;
      itemprop=&#34;associatedMedia&#34;
      itemscope=&#34;&#34;
      itemtype=&#34;http://schema.org/ImageObject&#34;
    &gt;&lt;a
          class=&#34;lightbox-link&#34;
          href=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;
          itemprop=&#34;contentUrl&#34;
        &gt;&lt;div class=&#34;img-wrapper w-100p h-auto&#34;&gt;&lt;img
            class=&#34;lazyload &#34;
            data-src=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;data-srcset=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=320 320w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=550 550w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=750 750w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=900 900w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1040 1040w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1240 1240w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1920 1920w&#34;data-sizes=&#34;auto&#34;alt=&#34;Updating JSON Model of a Dashboard&#34;width=&#34;2970&#34;height=&#34;628&#34;/&gt;
          &lt;noscript&gt;
            &lt;img
              src=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;
              alt=&#34;Updating JSON Model of a Dashboard&#34;width=&#34;2970&#34;height=&#34;628&#34;/&gt;
          &lt;/noscript&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-update-my-alert-rules-to-use-the-new-or-updated-data-source&#34;&gt;How do I update my alert rules to use the new or updated data source?&lt;/h4&gt;
&lt;p&gt;Open the alert rule you want to adjust and search for the data source that is being used for the query/alert condition. From there, select the new data source from the drop-down list and save the alert rule.&lt;/p&gt;
&lt;h3 id=&#34;enforcing-stricter-version-compatibility-checks-in-plugin-cli-install-commands&#34;&gt;Enforcing stricter version compatibility checks in plugin CLI install commands&lt;/h3&gt;
&lt;p&gt;Since Grafana 10.2, the endpoint to check compatible versions when installing a plugin using &lt;code&gt;grafana cli plugins install&lt;/code&gt; changed, which led to Grafana dependency version no longer being taken into account. This might have led to some behavior where the CLI would install plugins that are not fully compatible based on the plugins definition of compatibility via &lt;code&gt;grafanaDependency&lt;/code&gt; property in the &lt;code&gt;plugin.json&lt;/code&gt; file.&lt;/p&gt;
&lt;h4 id=&#34;what-if-i-want-to-ignore-the-compatibility-check&#34;&gt;What if I want to ignore the compatibility check?&lt;/h4&gt;
&lt;p&gt;We &lt;em&gt;do not&lt;/em&gt; recommend installing plugins declared as incompatible. However, if you need to force install a plugin despite it being declared as incompatible, refer to the &lt;a href=&#34;/docs/grafana/latest/administration/plugin-management/#install-a-plugin-from-a-zip-file&#34;&gt;Installing a plugin from a ZIP&lt;/a&gt; guidance.&lt;/p&gt;
&lt;h3 id=&#34;annotation-table-migration&#34;&gt;Annotation table migration&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Plan for increased disk usage when upgrading from Grafana v11.x&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Upgrading from Grafana v11.x to Grafana v12.x triggers a full-table rewrite of the &lt;code&gt;annotation&lt;/code&gt; table. The migration populates the new &lt;code&gt;dashboard_uid&lt;/code&gt; column, which causes the database to rewrite the entire table and rebuild its indexes.&lt;/p&gt;
&lt;p&gt;Environments with large annotation datasets can experience significant temporary disk usage increase, which may lead to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rapid disk consumption on the database data volume&lt;/li&gt;
&lt;li&gt;Database migration failures (for example, &amp;ldquo;could not extend file: No space left on device&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Grafana startup failures&lt;/li&gt;
&lt;li&gt;Extended downtime during the upgrade process&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected-1&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;re affected if you&amp;rsquo;re upgrading from Grafana v11.x to v12.x and you have a large &lt;code&gt;annotation&lt;/code&gt; table in your database.&lt;/p&gt;
&lt;p&gt;To check your annotation table size, connect to your database and check the table size.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    pg_size_pretty(pg_relation_size(&amp;#39;annotation&amp;#39;))       AS table_size,
    pg_size_pretty(pg_indexes_size(&amp;#39;annotation&amp;#39;))        AS indexes_size,
    pg_size_pretty(pg_total_relation_size(&amp;#39;annotation&amp;#39;)) AS total_size;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run the following query:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
    ROUND(data_length / 1024 / 1024, 2) AS table_size_mb,
    ROUND(index_length / 1024 / 1024, 2) AS indexes_size_mb,
    ROUND((data_length &amp;#43; index_length) / 1024 / 1024, 2) AS total_size_mb
FROM information_schema.tables
WHERE table_schema = DATABASE()
    AND table_name = &amp;#39;annotation&amp;#39;;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, check the database file size directly, as SQLite stores all tables in a single file. You can run the following command from your terminal:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;ls -lh &amp;lt;PATH/TO/GRAFANA.DB&amp;gt;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If your total size is several gigabytes or more, you should plan accordingly before upgrading.&lt;/p&gt;
&lt;h4 id=&#34;what-should-i-do-before-upgrading&#34;&gt;What should I do before upgrading?&lt;/h4&gt;
&lt;p&gt;Before you upgrade, take the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Verify available disk space&lt;/strong&gt;: Ensure you have at least 2-3 times the current &lt;code&gt;annotation&lt;/code&gt; table size available as free disk space on your database data volume.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Review your annotation data&lt;/strong&gt;: Consider whether you need to retain all historical annotations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Clean up old annotations (optional)&lt;/strong&gt;: If you have annotations you don&amp;rsquo;t need, remove them before upgrading.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Back up your database&lt;/strong&gt;: Always back up your Grafana database before performing an upgrade. For more information, refer to &lt;a href=&#34;#back-up-grafana&#34;&gt;Back up Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;what-should-i-do-after-upgrading&#34;&gt;What should I do after upgrading?&lt;/h4&gt;
&lt;p&gt;After successfully upgrading to Grafana v12.x, you can reclaim disk space by performing database maintenance operations during a maintenance window.&lt;/p&gt;
&lt;p&gt;For PostgreSQL, run a &lt;code&gt;VACUUM FULL&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM FULL annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For MySQL, run an &lt;code&gt;OPTIMIZE TABLE&lt;/code&gt; operation on the &lt;code&gt;annotation&lt;/code&gt; table:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;OPTIMIZE TABLE annotation;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For SQLite, run a &lt;code&gt;VACUUM&lt;/code&gt; operation on the database:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;VACUUM;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;These operations require a lock on the table and may take significant time depending on the table size. Plan to run these during a low-traffic period.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v120">Upgrade to Grafana v12.0&lt;/h1>
&lt;div data-shared="upgrade/intro_2.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.6</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.6/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.6/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v116&#34;&gt;Upgrade to Grafana v11.6&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v116">Upgrade to Grafana v11.6&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.5</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.5/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.5/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v115&#34;&gt;Upgrade to Grafana v11.5&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v115">Upgrade to Grafana v11.5&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.4</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.4/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.4/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v114&#34;&gt;Upgrade to Grafana v11.4&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v114">Upgrade to Grafana v11.4&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.3</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.3/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.3/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v113&#34;&gt;Upgrade to Grafana v11.3&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v113">Upgrade to Grafana v11.3&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.2</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.2/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.2/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v112&#34;&gt;Upgrade to Grafana v11.2&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;grafana-data-source-uid-format-enforcement&#34;&gt;Grafana data source UID format enforcement&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Ensure that your data source UIDs follow the correct standard&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ve had a standard ways to define UIDs for Grafana objects for years (at least &lt;a href=&#34;https://github.com/grafana/grafana/issues/7883&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;since Grafana v5&lt;/a&gt;). While all of our internal code complies to this format, we didn&amp;rsquo;t yet have strict enforcement of this format in REST APIs and provisioning paths that allow the creation and update of data sources.&lt;/p&gt;
&lt;p&gt;In Grafana v11.1, we &lt;a href=&#34;https://github.com/grafana/grafana/pull/86598&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;introduced&lt;/a&gt; a warning that is sent to Grafana server logs every time a data source instance is being created or updated using an invalid UID format.&lt;/p&gt;
&lt;p&gt;In Grafana v11.2, we &lt;a href=&#34;https://github.com/grafana/grafana/pull/89363/files&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;added&lt;/a&gt; a new feature flag called &lt;code&gt;failWrongDSUID&lt;/code&gt; that is turned off by default. When enabled, the REST APIs and provisioning start rejecting any requests to create or update data source instances that have an incorrect UID.&lt;/p&gt;
&lt;p&gt;In Grafana v11.5, we&amp;rsquo;re going to turn feature flag &lt;code&gt;failWrongDSUID&lt;/code&gt; on by default, but there will still be an option to turn it off.&lt;/p&gt;
&lt;p&gt;In Grafana v12, this will be the default behavior and will not be configurable.&lt;/p&gt;
&lt;h4 id=&#34;correct-uid-format&#34;&gt;Correct UID format&lt;/h4&gt;
&lt;p&gt;You can find the exact regex definition &lt;a href=&#34;https://github.com/grafana/grafana/blob/c92f5169d1c83508beb777f71a93336179fe426e/pkg/util/shortid_generator.go#L32-L45&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;in the grafana repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A data source UID can only contain:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Latin characters (&lt;code&gt;a-Z&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Numbers (&lt;code&gt;0-9&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Dash symbols (&lt;code&gt;-&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-do-i-know-if-im-affected&#34;&gt;How do I know if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;You can fetch all your data sources using the &lt;code&gt;/api/datasources&lt;/code&gt; API. Review the &lt;code&gt;uid&lt;/code&gt; fields, comparing them to the correct format, as shown &lt;a href=&#34;/docs/grafana/latest/developers/http_api/data_source/#get-all-data-sources&#34;&gt;in the docs&lt;/a&gt;. Following is a script that can help, but note that it&amp;rsquo;s missing authentication that you &lt;a href=&#34;/docs/grafana/latest/developers/http_api/#authenticating-api-requests&#34;&gt;have to add yourself&lt;/a&gt;:&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;code-snippet code-snippet__mini&#34;&gt;&lt;div class=&#34;lang-toolbar__mini&#34;&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet code-snippet__border&#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;curl http://localhost:3000/api/datasources | jq &amp;#39;.[] | select((.uid | test(&amp;#34;^[a-zA-Z0-9\\-_]&amp;#43;$&amp;#34;) | not) or (.uid | length &amp;gt; 40)) | {id, uid, name, type}&amp;#39;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Alternatively, you can check the server logs for the &lt;code&gt;Invalid datasource uid&lt;/code&gt; &lt;a href=&#34;https://github.com/grafana/grafana/blob/68751ed3107c4d15d33f34b15183ee276611785c/pkg/services/datasources/service/store.go#L429&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;error&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;what-do-i-do-if-im-affected&#34;&gt;What do I do if I&amp;rsquo;m affected?&lt;/h4&gt;
&lt;p&gt;You&amp;rsquo;ll need to create a new data source with the correct UID and update your dashboards and alert rules to use it.&lt;/p&gt;
&lt;h4 id=&#34;how-do-i-update-my-dashboards-to-use-the-new-or-updated-data-source&#34;&gt;How do I update my dashboards to use the new or updated data source?&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Go to the dashboard using the data source and update it by selecting the new or updated data source from the picker below your panel.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update the dashboard&amp;rsquo;s JSON model directly using search and replace.&lt;/p&gt;
&lt;p&gt;Navigate to &lt;a href=&#34;/docs/grafana/latest/dashboards/build-dashboards/view-dashboard-json-model/&#34;&gt;dashboard json model&lt;/a&gt; and carefully replace all the instances of old &lt;code&gt;uid&lt;/code&gt; with the newly created &lt;code&gt;uid&lt;/code&gt;.&lt;/p&gt;
&lt;figure
       class=&#34;figure-wrapper figure-wrapper__lightbox w-100p &#34;
       style=&#34;max-width: 2970px;&#34;
       itemprop=&#34;associatedMedia&#34;
       itemscope=&#34;&#34;
       itemtype=&#34;http://schema.org/ImageObject&#34;
     &gt;&lt;a
           class=&#34;lightbox-link&#34;
           href=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;
           itemprop=&#34;contentUrl&#34;
         &gt;&lt;div class=&#34;img-wrapper w-100p h-auto&#34;&gt;&lt;img
             class=&#34;lazyload &#34;
             data-src=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;data-srcset=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=320 320w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=550 550w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=750 750w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=900 900w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1040 1040w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1240 1240w, /media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png?w=1920 1920w&#34;data-sizes=&#34;auto&#34;alt=&#34;Updating JSON Model of a Dashboard&#34;width=&#34;2970&#34;height=&#34;628&#34;/&gt;
           &lt;noscript&gt;
             &lt;img
               src=&#34;/media/docs/grafana/screenshot-grafana-11-datasource-uid-enforcement.png&#34;
               alt=&#34;Updating JSON Model of a Dashboard&#34;width=&#34;2970&#34;height=&#34;628&#34;/&gt;
           &lt;/noscript&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;how-do-i-update-my-alert-rules-to-use-the-new-or-updated-data-source&#34;&gt;How do I update my alert rules to use the new or updated data source?&lt;/h4&gt;
&lt;p&gt;Open the alert rule you want to adjust and search for the data source that is being used for the query/alert condition. From there, select the new data source from the drop-down list and save the alert rule.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v112">Upgrade to Grafana v11.2&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.1</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.1/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.1/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v111&#34;&gt;Upgrade to Grafana v11.1&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v111">Upgrade to Grafana v11.1&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v11.0</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.0/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v11.0/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v110&#34;&gt;Upgrade to Grafana v11.0&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v110">Upgrade to Grafana v11.0&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v10.4</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.4/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.4/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v104&#34;&gt;Upgrade to Grafana v10.4&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;legacy-alerting---grafana-alerting-dry-run-on-start&#34;&gt;Legacy alerting -&amp;gt; Grafana Alerting dry-run on start&lt;/h3&gt;
&lt;p&gt;If you haven&amp;rsquo;t already upgraded to Grafana Alerting from legacy Alerting, Grafana will initiate a dry-run of the upgrade every time the instance starts. This is in preparation for the removal of legacy Alerting in Grafana v11. The dry-run logs the results of the upgrade attempt and identifies any issues requiring attention before you can successfully execute the upgrade. No changes are made during the dry-run.&lt;/p&gt;
&lt;p&gt;You can disable this behavior using the feature flag &lt;code&gt;alertingUpgradeDryrunOnStart&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;toml&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-toml&#34;&gt;[feature_toggles]
alertingUpgradeDryrunOnStart=false&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;We strongly encourage you to review the &lt;a href=&#34;/docs/grafana/v10.4/alerting/set-up/migrating-alerts/&#34;&gt;upgrade guide&lt;/a&gt; and perform the necessary upgrade steps prior to v11.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

]]></content><description>&lt;h1 id="upgrade-to-grafana-v104">Upgrade to Grafana v10.4&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v10.3</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.3/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.3/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v103&#34;&gt;Upgrade to Grafana v10.3&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v103">Upgrade to Grafana v10.3&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v10.2</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.2/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.2/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v102&#34;&gt;Upgrade to Grafana v10.2&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;From Grafana v10.2 onwards, &lt;code&gt;/api/datasources/:id/&lt;/code&gt; is removed and replaced with &lt;code&gt;/api/access-control/datasources/:uid&lt;/code&gt;. For more information about the new API endpoints for the data source permission API, refer to the 
    &lt;a href=&#34;/docs/grafana/v12.4/developers/http_api/datasource_permissions/&#34;&gt;documentation&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v102">Upgrade to Grafana v10.2&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v10.1</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.1/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.1/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v101&#34;&gt;Upgrade to Grafana v10.1&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;oauth-role-mapping-enforcement&#34;&gt;OAuth role mapping enforcement&lt;/h3&gt;
&lt;p&gt;This change impacts &lt;code&gt;GitHub&lt;/code&gt; OAuth, &lt;code&gt;Gitlab&lt;/code&gt; OAuth, &lt;code&gt;Okta&lt;/code&gt; OAuth, and &lt;code&gt;Generic&lt;/code&gt; OAuth.&lt;/p&gt;
&lt;p&gt;Previously, if no organization role mapping was found for a user when they connected using OAuth, Grafana didn&amp;rsquo;t update the user’s organization role.&lt;/p&gt;
&lt;p&gt;With Grafana 10.1, on every login, if the &lt;code&gt;role_attribute_path&lt;/code&gt; property doesn&amp;rsquo;t return a role, then the user is assigned the role specified by the &lt;code&gt;auto_assign_org_role&lt;/code&gt; option or the default role for the organization, which is Viewer by default.&lt;/p&gt;
&lt;p&gt;To avoid overriding manually set roles, enable the &lt;code&gt;skip_org_role_sync&lt;/code&gt; option in the Grafana configuration for your OAuth provider before upgrading to Grafana 10.1 and before users log in for the first time on Grafana 10.1.&lt;/p&gt;
&lt;p&gt;Example for Generic OAuth2:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;ini&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-ini&#34;&gt;[auth.generic_oauth]
...
skip_org_role_sync = true&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v101">Upgrade to Grafana v10.1&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v10.0</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.0/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v10.0/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v100&#34;&gt;Upgrade to Grafana v10.0&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;role-based-access-control-changes&#34;&gt;Role-based access control changes&lt;/h3&gt;
&lt;!-- Vardan Torosyan --&gt;
&lt;p&gt;Role-based access control (RBAC) is now always enabled and we&amp;rsquo;ve removed the option to disable it.&lt;/p&gt;
&lt;p&gt;No action is required.&lt;/p&gt;
&lt;p&gt;However, if you decide to &lt;strong&gt;downgrade&lt;/strong&gt; for any reason and &lt;strong&gt;disable RBAC&lt;/strong&gt;, you&amp;rsquo;ll need to run through the following guide before upgrading again.&lt;/p&gt;
&lt;p&gt;The aforementioned sequence of actions (upgrade, downgrade, disable RBAC, upgrade again) causes legacy access control and role-based access control systems to be out of sync.
As a side effect, permissions for some Grafana resources, like dashboards, might be lost.
To prevent that from happening, before you upgrade Grafana back again, please take the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop Grafana.&lt;/li&gt;
&lt;li&gt;In your database, run the following SQL queries:&lt;/li&gt;
&lt;/ol&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;DELETE
FROM builtin_role
where role_id IN (SELECT id
                  FROM role
                  WHERE name LIKE &amp;#39;managed:%&amp;#39;);

DELETE
FROM team_role
where role_id IN (SELECT id
                  FROM role
                  WHERE name LIKE &amp;#39;managed:%&amp;#39;);

DELETE
FROM user_role
where role_id IN (SELECT id
                  FROM role
                  WHERE name LIKE &amp;#39;managed:%&amp;#39;);

DELETE
FROM permission
where role_id IN (SELECT id
                  FROM role
                  WHERE name LIKE &amp;#39;managed:%&amp;#39;);

DELETE
FROM role
WHERE name LIKE &amp;#39;managed:%&amp;#39;;

DELETE
FROM migration_log
WHERE migration_id IN (&amp;#39;teams permissions migration&amp;#39;,
                       &amp;#39;dashboard permissions&amp;#39;,
                       &amp;#39;dashboard permissions uid scopes&amp;#39;,
                       &amp;#39;data source permissions&amp;#39;,
                       &amp;#39;data source uid permissions&amp;#39;,
                       &amp;#39;managed permissions migration&amp;#39;,
                       &amp;#39;managed folder permissions alert actions repeated migration&amp;#39;,
                       &amp;#39;managed permissions migration enterprise&amp;#39;);&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;Start Grafana again.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;case-insensitive-usernames-and-email-addresses&#34;&gt;Case-insensitive usernames and email addresses&lt;/h3&gt;
&lt;!-- Vardan Torosyan --&gt;
&lt;p&gt;Usernames and email addresses are now treated as case-insensitive in Grafana. If you&amp;rsquo;re not using MySQL as a database, potential user identity conflicts may arise when users try to log in.
We recommend you resolve any potential conflicts in advance by using the &lt;a href=&#34;/blog/2022/12/12/guide-to-using-the-new-grafana-cli-user-identity-conflict-tool-in-grafana-9.3/&#34;&gt;Grafana CLI tool for managing user conflicts&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;dashboard-previews-removal&#34;&gt;Dashboard previews removal&lt;/h3&gt;
&lt;!-- Artur Wierzbicki --&gt;
&lt;p&gt;We&amp;rsquo;ve removed the Dashboard previews feature introduced behind a feature flag in Grafana version 9.0.&lt;/p&gt;
&lt;p&gt;No action is required.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;dashboardPreviews&lt;/code&gt; feature flag is no longer available and can be safely removed from the Grafana server configuration.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v100">Upgrade to Grafana v10.0&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.5</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.5/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.5/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v95&#34;&gt;Upgrade to Grafana v9.5&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;h3 id=&#34;influxdb-provisioning-change&#34;&gt;InfluxDB provisioning change&lt;/h3&gt;
&lt;p&gt;Beginning in v9.5, the InfluxDB data source deprecates the &lt;code&gt;database&lt;/code&gt; field in provisioning files.
The &lt;code&gt;dbName&lt;/code&gt; field under &lt;code&gt;jsonData&lt;/code&gt; must be used to store the database information.
For more information and examples, please refer to &lt;a href=&#34;../../datasources/influxdb/#provision-the-data-source&#34;&gt;InfluxDB Provisioning&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;dashboard-previews-deprecation-notice&#34;&gt;Dashboard previews deprecation notice&lt;/h3&gt;
&lt;p&gt;We are deprecating the dashboard previews feature and will remove it in Grafana v10. We&amp;rsquo;ve started exploring alternative ways of adding visual previews using the Scenes framework, and we&amp;rsquo;ll share more information about it in the future.&lt;/p&gt;
&lt;h3 id=&#34;migrate-your-api-keys-to-service-accounts&#34;&gt;Migrate your API keys to service accounts&lt;/h3&gt;
&lt;p&gt;We are upgrading Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/administration/service-accounts/migrate-api-keys/&#34;&gt;API keys&lt;/a&gt; to service accounts. Service accounts are a superset of API keys that include token rotation and compatibility with &lt;a href=&#34;../../administration/roles-and-permissions/access-control/&#34;&gt;Role-based access control&lt;/a&gt;. In a future release, we&amp;rsquo;ll automatically migrate all existing API keys to service accounts. All of your existing tokens will continue to work; they will simply be migrated to service accounts. You can preempt this change by migrating your existing API keys to service accounts using Grafana&amp;rsquo;s UI or API. Learn how to do this in the 
    &lt;a href=&#34;/docs/grafana/v12.4/administration/service-accounts/migrate-api-keys/&#34;&gt;API keys documentation&lt;/a&gt;.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v95">Upgrade to Grafana v9.5&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.4</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.4/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.4/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v94&#34;&gt;Upgrade to Grafana v9.4&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;The upgrade to Grafana v9.4 includes changes to the Grafana database for Grafana alerting that are not backward compatible. As a result, when you upgrade to Grafana v9.4, do not downgrade your Grafana instance to an earlier version. Doing so might cause issues with managing your Grafana alerts.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v94">Upgrade to Grafana v9.4&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.3</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.3/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.3/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v93&#34;&gt;Upgrade to Grafana v9.3&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;There are no additional upgrade steps to complete for this version of Grafana.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v93">Upgrade to Grafana v9.3&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.2</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.2/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.2/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v92&#34;&gt;Upgrade to Grafana v9.2&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;Beginning in v9.2, Grafana has a &lt;a href=&#34;../../setup-grafana/installation/#supported-databases&#34;&gt;supported database versions policy&lt;/a&gt;. As of this release, MySQL versions from 5.7, postgres versions from v10, and SQLite 3 are supported databases.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v92">Upgrade to Grafana v9.2&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.1</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.1/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.1/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v91&#34;&gt;Upgrade to Grafana v9.1&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;There are no additional upgrade steps to complete for this version of Grafana.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v91">Upgrade to Grafana v9.1&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v9.0</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.0/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v9.0/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v90&#34;&gt;Upgrade to Grafana v9.0&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;This section describes technical changes associated with this release of Grafana.&lt;/p&gt;
&lt;h3 id=&#34;role-based-access-control-changes-for-general-release&#34;&gt;Role-based access control: changes for general release&lt;/h3&gt;
&lt;p&gt;Fine-grained access control is now called &amp;ldquo;Role-based access control (RBAC)&amp;rdquo;. As part of the Grafana 9.0 release, the feature is generally available, and there are several breaking changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Built-in roles are now called basic roles. They now consist of permissions, not roles.&lt;/li&gt;
&lt;li&gt;The Terraform &lt;code&gt;builtin_role_assignment&lt;/code&gt; resource is deprecated. Please use &lt;a href=&#34;https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/role&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;grafana_role&lt;/a&gt; resource instead.&lt;/li&gt;
&lt;li&gt;Grafana provisioning has a new schema. Please refer to &lt;a href=&#34;/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-grafana-provisioning/&#34;&gt;Provisioning RBAC with Grafana&lt;/a&gt; to learn more about provisioning.&lt;/li&gt;
&lt;li&gt;Basic roles no longer support permission inheritance. Previously, when permissions of a Viewer basic role were modified, it was propagated to the Editor and Admin basic roles. With the Grafana 9.0 release, this is not the case anymore.&lt;/li&gt;
&lt;li&gt;Several role-based access control actions have been renamed. All database entries that use legacy action names will be migrated to use the new names, but provisioning files and scripts will have to be updated by the user. This change also means that if Grafana is downgraded from 9.0 to a lower version, some role-based access control permissions will not be resolved correctly.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;loki-logs-data-format-changed&#34;&gt;Loki: logs data format changed&lt;/h3&gt;
&lt;p&gt;In the Loki data source, the data format used to represent Loki logs-data has been changed to a more efficient format. (NOTE: this change applies to logs data only, it does not apply to numeric data)
The logs are represented by a single dataframe with a &amp;ldquo;labels&amp;rdquo; field added, instead of separate dataframes for every label combination. Displaying logs data in explore, or in a dashboard using the logs panel will continue to work without changes. But, when displaying logs data in other dashboard panels, for example in a table visualization, changes will be visible, and configurations might need to be adjusted. For example, if the &amp;ldquo;Labels to fields&amp;rdquo; transformation was used, it has to be replaced with an “Extract fields” transformation, where the “labels” field is chosen as the source.&lt;/p&gt;
&lt;h3 id=&#34;loki-nan-values-representation-changed-in-numeric-data&#34;&gt;Loki: NaN values representation changed in numeric data&lt;/h3&gt;
&lt;p&gt;In the Loki data source, when grafana receives numeric data from Loki, it may contain NaN (not a number) values. For consistency and performance reasons we changed how we represent such values in Grafana. In previous versions, the behavior was different between alerting queries and other queries (like dashboard queries or explore queries). Alerting queries kept NaN values unchanged, but other queries converted these values to “null”. Starting with grafana 9.0.0, we will always keep these values unchanged. In other words, queries in dashboards and explore will behave the same as alerting queries in this regard.&lt;/p&gt;
&lt;h3 id=&#34;elasticsearch-support-for-versions-after-their-end-of-life-was-removed&#34;&gt;Elasticsearch: Support for versions after their end of life was removed&lt;/h3&gt;
&lt;p&gt;Support for Elasticsearch versions that are after their end of life (based on &lt;a href=&#34;https://www.elastic.co/support/eol&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;https://www.elastic.co/support/eol&lt;/a&gt;) was removed. This means that versions older than Elasticsearch 7.10.0 will not be supported in Grafana 9.0.0.&lt;/p&gt;
&lt;h3 id=&#34;elasticsearch-support-for-browser-access-mode-removed&#34;&gt;Elasticsearch: Support for browser access mode removed&lt;/h3&gt;
&lt;p&gt;In the Elasticsearch data source, browser access mode was deprecated in grafana 7.4.0 and removed in 9.0.0. If you used this mode, please switch to server access mode on the data source configuration page.&lt;/p&gt;
&lt;h3 id=&#34;prometheus-nan-values-representation-changed-in-numeric-data&#34;&gt;Prometheus: NaN values representation changed in numeric data&lt;/h3&gt;
&lt;p&gt;In the Prometheus data source, when grafana receives numeric data from Prometheus, it may contain NaN (not a number) values. For consistency and performance reasons we changed how we represent such values in Grafana. In previous versions, the behavior was different between alerting queries and other queries (like dashboard queries or explore queries). Alerting queries kept NaN values unchanged, but other queries converted these values to “null”. Starting with grafana 9.0.0, we will always keep NaN values unchanged for all queries.&lt;/p&gt;
&lt;!-- ### InfluxDB: Support for browser access mode removed (should this stay??)

In the InfluxDB data source, browser access mode was deprecated in grafana 8.0.0 and we are removing this feature in 9.0.0. If you are using this mode, you need to [switch to server access mode](../../datasources/influxdb/##influxql-classic-influxdb-query) on the data source configuration page or you can do this via provisioning. --&gt;
&lt;h3 id=&#34;transformations-allow-more-complex-regex-expressions-in-rename-by-regex&#34;&gt;Transformations: Allow more complex regex expressions in rename by regex&lt;/h3&gt;
&lt;p&gt;The rename by regex transformation has been improved to allow global patterns of the form &lt;code&gt;/&amp;lt;stringToReplace&amp;gt;/g&lt;/code&gt;. Depending on the regex match used, this may cause some transformations to behave slightly differently. You can guarantee the same behavior as before by wrapping the match string in forward slashes (&lt;code&gt;/&lt;/code&gt;), for example, &lt;code&gt;(.*)&lt;/code&gt; would become &lt;code&gt;/(.*)/&lt;/code&gt;. (&lt;a href=&#34;https://github.com/grafana/grafana/pull/48179&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Github Issue #48179&lt;/a&gt;)&lt;/p&gt;
&lt;h3 id=&#34;clock-panel&#34;&gt;Clock Panel&lt;/h3&gt;
&lt;p&gt;We have updated &lt;a href=&#34;/grafana/plugins/grafana-clock-panel/&#34;&gt;clock panel&lt;/a&gt; to version &lt;code&gt;2.0.0&lt;/code&gt; to make it compatible with Grafana 9. The previous version &lt;code&gt;1.3.1&lt;/code&gt; will cause the Grafana 9 to &lt;a href=&#34;https://github.com/grafana/clock-panel/issues/106&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;crash&lt;/a&gt; when being used in a dashboard, we encourage you to update the panel before migrating to Grafana 9.&lt;/p&gt;
&lt;h3 id=&#34;polystat-panel&#34;&gt;Polystat Panel&lt;/h3&gt;
&lt;p&gt;We have updated &lt;a href=&#34;/grafana/plugins/grafana-polystat-panel/&#34;&gt;polystat panel&lt;/a&gt; to version &lt;code&gt;1.2.10&lt;/code&gt; to make it compatible with Grafana 9. The previous versions &lt;code&gt;1.2.8&lt;/code&gt; and below will render empty in Grafana 9. We encourage you to update the panel before or immediately after migrating to Grafana 9.&lt;/p&gt;
&lt;h3 id=&#34;envelope-encryption-enabled-by-default&#34;&gt;Envelope encryption enabled by default&lt;/h3&gt;
&lt;p&gt;Since v8.3 a new kind of encryption called &amp;ldquo;envelope encryption&amp;rdquo; was added, for those secrets stored in the Grafana
database (data source credentials, alerting notification channel credentials, oauth tokens, etc), behind a feature
toggle named &lt;code&gt;envelopeEncryption&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;In v9.0, &lt;code&gt;envelopeEncryption&lt;/code&gt; feature toggle has been replaced in favor of &lt;code&gt;disableEnvelopeEncryption&lt;/code&gt; and envelope encryption is
the encryption mechanism used by default.&lt;/p&gt;
&lt;p&gt;Therefore, any secret created or updated in Grafana v9.0 won&amp;rsquo;t be decryptable by any previous Grafana version unless the
feature toggle &lt;code&gt;envelopeEncryption&lt;/code&gt; is enabled in the previous version (only available since v8.3).
This needs to be considered in high availability setups, progressive rollouts or in case of need to roll back to a previous Grafana version for any reason.&lt;/p&gt;
&lt;p&gt;The recommendation here is to enable &lt;code&gt;envelopeEncryption&lt;/code&gt; for older versions, or alternatively enable &lt;code&gt;disableEnvelopeEncryption&lt;/code&gt;
before upgrading to v9.0. However, the latter is probably going to be removed in one of the next releases, so we hugely
encourage to move on with envelope encryption.&lt;/p&gt;
&lt;p&gt;Find &lt;a href=&#34;../../setup-grafana/configure-security/configure-database-encryption/&#34;&gt;here&lt;/a&gt; more details and some
possible workarounds in case you end up in an undesired situation.&lt;/p&gt;
&lt;h3 id=&#34;a-note-on-grafana-enterprise-licensing&#34;&gt;A note on Grafana Enterprise licensing&lt;/h3&gt;
&lt;p&gt;When we release Grafana 9.0 on June 14th, Grafana will no longer enforce viewers and editor-admins differently. That means that regardless of whether your Grafana Enterprise license is tiered or combined, instead of seeing this on the Stats &amp;amp; Licensing page:&lt;/p&gt;
&lt;figure
    class=&#34;figure-wrapper figure-wrapper__lightbox w-100p &#34;
    style=&#34;max-width: 500px;&#34;
    itemprop=&#34;associatedMedia&#34;
    itemscope=&#34;&#34;
    itemtype=&#34;http://schema.org/ImageObject&#34;
  &gt;&lt;a
        class=&#34;lightbox-link captioned&#34;
        href=&#34;/static/img/docs/enterprise/separate-licenses.png&#34;
        itemprop=&#34;contentUrl&#34;
      &gt;&lt;div class=&#34;img-wrapper w-100p h-auto&#34;&gt;&lt;img
          class=&#34;lazyload mb-0&#34;
          data-src=&#34;/static/img/docs/enterprise/separate-licenses.png&#34;data-srcset=&#34;/static/img/docs/enterprise/separate-licenses.png?w=320 320w, /static/img/docs/enterprise/separate-licenses.png?w=550 550w, /static/img/docs/enterprise/separate-licenses.png?w=750 750w, /static/img/docs/enterprise/separate-licenses.png?w=900 900w, /static/img/docs/enterprise/separate-licenses.png?w=1040 1040w, /static/img/docs/enterprise/separate-licenses.png?w=1240 1240w, /static/img/docs/enterprise/separate-licenses.png?w=1920 1920w&#34;data-sizes=&#34;auto&#34;alt=&#34;Separate license&#34;width=&#34;1600&#34;height=&#34;1246&#34;title=&#34;Separate license&#34;/&gt;
        &lt;noscript&gt;
          &lt;img
            src=&#34;/static/img/docs/enterprise/separate-licenses.png&#34;
            alt=&#34;Separate license&#34;width=&#34;1600&#34;height=&#34;1246&#34;title=&#34;Separate license&#34;/&gt;
        &lt;/noscript&gt;&lt;/div&gt;&lt;figcaption class=&#34;w-100p caption text-gray-13  &#34;&gt;Separate license&lt;/figcaption&gt;&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;You will see this:&lt;/p&gt;
&lt;figure
    class=&#34;figure-wrapper figure-wrapper__lightbox w-100p &#34;
    style=&#34;max-width: 500px;&#34;
    itemprop=&#34;associatedMedia&#34;
    itemscope=&#34;&#34;
    itemtype=&#34;http://schema.org/ImageObject&#34;
  &gt;&lt;a
        class=&#34;lightbox-link captioned&#34;
        href=&#34;/static/img/docs/enterprise/combined-licenses.png&#34;
        itemprop=&#34;contentUrl&#34;
      &gt;&lt;div class=&#34;img-wrapper w-100p h-auto&#34;&gt;&lt;img
          class=&#34;lazyload mb-0&#34;
          data-src=&#34;/static/img/docs/enterprise/combined-licenses.png&#34;data-srcset=&#34;/static/img/docs/enterprise/combined-licenses.png?w=320 320w, /static/img/docs/enterprise/combined-licenses.png?w=550 550w, /static/img/docs/enterprise/combined-licenses.png?w=750 750w, /static/img/docs/enterprise/combined-licenses.png?w=900 900w, /static/img/docs/enterprise/combined-licenses.png?w=1040 1040w, /static/img/docs/enterprise/combined-licenses.png?w=1240 1240w, /static/img/docs/enterprise/combined-licenses.png?w=1920 1920w&#34;data-sizes=&#34;auto&#34;alt=&#34;Combined license&#34;width=&#34;1600&#34;height=&#34;1035&#34;title=&#34;Combined license&#34;/&gt;
        &lt;noscript&gt;
          &lt;img
            src=&#34;/static/img/docs/enterprise/combined-licenses.png&#34;
            alt=&#34;Combined license&#34;width=&#34;1600&#34;height=&#34;1035&#34;title=&#34;Combined license&#34;/&gt;
        &lt;/noscript&gt;&lt;/div&gt;&lt;figcaption class=&#34;w-100p caption text-gray-13  &#34;&gt;Combined license&lt;/figcaption&gt;&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;It also means that Grafana will count all users the same, regardless of their role, including org roles (Viewer, Editor, Admin) and fine-grained roles (Dashboard Editor, Reports Editor, etc.). You won’t see a separate warning banner or see users locked out if you hit your limit of viewers or editor-admins, only your total combined limit of active users.&lt;/p&gt;
&lt;p&gt;For example, if you have a license for 10 active admins and 100 active viewers in your Grafana Enterprise license, then starting in v9.0 you will have a limit of 110 active users, and it doesn’t matter what roles those users have, they will all be counted and enforced the same.&lt;/p&gt;
&lt;p&gt;This is a more permissive policy than before.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v90">Upgrade to Grafana v9.0&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.5</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.5/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.5/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v85&#34;&gt;Upgrade to Grafana v8.5&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;This section describes technical changes associated with this release of Grafana.&lt;/p&gt;
&lt;h3 id=&#34;default-data-source&#34;&gt;Default data source&lt;/h3&gt;
&lt;p&gt;The concept of a &lt;code&gt;default&lt;/code&gt; data source existed in Grafana since the beginning. However, the meaning and behavior were not clear. The default data source was not just the starting data source for new panels but it was also saved using a special value (null). This made it possible to change the default data source to another and have that change impact all dashboards that used the default data source.&lt;/p&gt;
&lt;p&gt;This behavior was not very intuitive and creates issues for users who want to change the default without it impacting existing dashboards.
That is why we are changing the behavior in 8.5. From now on, the &lt;code&gt;default&lt;/code&gt; data source will not be a persisted property but just the starting data source for new panels and queries.
Existing dashboards that still have panels with a &lt;code&gt;datasource&lt;/code&gt; set to null will be migrated when the dashboard opens. The migration will set the data source property to the &lt;strong&gt;current&lt;/strong&gt; default data source.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v85">Upgrade to Grafana v8.5&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.4</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.4/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.4/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v84&#34;&gt;Upgrade to Grafana v8.4&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;There are no additional upgrade steps to complete for this version of Grafana.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v84">Upgrade to Grafana v8.4&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.3</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.3/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.3/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v83&#34;&gt;Upgrade to Grafana v8.3&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;This section describes technical changes associated with this release of Grafana.&lt;/p&gt;
&lt;h3 id=&#34;dashboard-references&#34;&gt;Dashboard references&lt;/h3&gt;
&lt;p&gt;In 8.3, Grafana dashboards now reference data sources using an object with &lt;code&gt;uid&lt;/code&gt; and &lt;code&gt;type&lt;/code&gt; properties instead of the data source name property. A schema migration is applied when existing dashboards open. If you provision dashboards to multiple Grafana instances, then we recommend that you also provision data sources. You can specify the &lt;code&gt;uid&lt;/code&gt; to be the same for data sources across your instances.
If you need to find the &lt;code&gt;uid&lt;/code&gt; for a data source created in the UI, check the URL of the data source settings page. The URL follows the pattern &lt;code&gt; /data source/edit/${uid}&lt;/code&gt;, meaning the last part is the &lt;code&gt;uid&lt;/code&gt;.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v83">Upgrade to Grafana v8.3&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.2</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.2/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.2/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v82&#34;&gt;Upgrade to Grafana v8.2&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;There are no additional upgrade steps to complete for this version of Grafana.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v82">Upgrade to Grafana v8.2&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.1</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.1/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.1/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v81&#34;&gt;Upgrade to Grafana v8.1&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;This section describes technical changes associated with this release of Grafana.&lt;/p&gt;
&lt;h3 id=&#34;use-of-unencrypted-passwords-for-data-sources-no-longer-supported&#34;&gt;Use of unencrypted passwords for data sources no longer supported&lt;/h3&gt;
&lt;p&gt;As of Grafana v8.1, we no longer support unencrypted storage of passwords and basic auth passwords.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Since Grafana v6.2, new or updated data sources store passwords and basic auth passwords encrypted. However, unencrypted passwords and basic auth passwords were also allowed.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;To migrate to encrypted storage, use a &lt;code&gt;grafana-cli&lt;/code&gt; command to migrate all of your data sources to use encrypted storage of secrets. See &lt;a href=&#34;../../cli/#migrate-data-and-encrypt-passwords&#34;&gt;migrate data and encrypt passwords&lt;/a&gt; for further instructions.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v81">Upgrade to Grafana v8.1&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item><item><title>Upgrade to Grafana v8.0</title><link>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.0/</link><pubDate>Fri, 03 Apr 2026 19:43:06 +0000</pubDate><guid>https://grafana.com/docs/grafana/v12.4/upgrade-guide/upgrade-v8.0/</guid><content><![CDATA[&lt;h1 id=&#34;upgrade-to-grafana-v80&#34;&gt;Upgrade to Grafana v8.0&lt;/h1&gt;


&lt;div data-shared=&#34;upgrade/intro.md&#34;&gt;
            &lt;p&gt;We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p&gt;
&lt;p&gt;In addition to common tasks you should complete for all versions of Grafana, there might be additional upgrade tasks to complete for a version.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;There might be breaking changes in some releases. We outline these changes in the 
    &lt;a href=&#34;/docs/grafana/v12.4/whatsnew/&#34;&gt;What&amp;rsquo;s New &lt;/a&gt; document for most releases or a separate 
    &lt;a href=&#34;/docs/grafana/v12.4/breaking-changes/&#34;&gt;Breaking changes&lt;/a&gt; document for releases with many breaking changes.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;For versions of Grafana prior to v9.2, we published additional information in the 
    &lt;a href=&#34;/docs/grafana/v12.4/release-notes/&#34;&gt;Release Notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When available, we list all changes with links to pull requests or issues in the &lt;a href=&#34;https://github.com/grafana/grafana/blob/main/CHANGELOG.md&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Changelog&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;When possible, we recommend that you test the Grafana upgrade process in a test or development environment.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;/div&gt;

        


&lt;div data-shared=&#34;back-up/back-up-grafana.md&#34;&gt;
            

&lt;h2 id=&#34;back-up-grafana&#34;&gt;Back up Grafana&lt;/h2&gt;
&lt;p&gt;This topic explains how to back up a local Grafana deployment, including configuration, plugin data, and the Grafana database.&lt;/p&gt;
&lt;h3 id=&#34;back-up-the-grafana-configuration-file&#34;&gt;Back up the Grafana configuration file&lt;/h3&gt;
&lt;p&gt;Copy Grafana configuration files that you might have modified in your Grafana deployment to a backup directory.&lt;/p&gt;
&lt;p&gt;The Grafana configuration files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default configuration: &lt;code&gt;$WORKING_DIR/defaults.ini&lt;/code&gt; (Don&amp;rsquo;t change this file)&lt;/li&gt;
&lt;li&gt;Custom configuration: &lt;code&gt;$WORKING_DIR/custom.ini&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;If you installed Grafana using the &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; packages, then your configuration file is located at
&lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;. This path is specified in the Grafana &lt;code&gt;init.d&lt;/code&gt; script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;back-up-plugin-data&#34;&gt;Back up plugin data&lt;/h3&gt;
&lt;p&gt;Installing plugins in Grafana creates a folder for each plugin with its associated files and data. Copy all files and folders recursively from this location to your backup repository.&lt;/p&gt;
&lt;p&gt;The Grafana plugin files are located in the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for plugins in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/plugins&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for plugins in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;. This path is specified in the Grafana init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;back-up-the-grafana-database&#34;&gt;Back up the Grafana database&lt;/h3&gt;
&lt;p&gt;We recommend that you back up your Grafana database so that you can roll back to a previous version, if required.&lt;/p&gt;
&lt;h4 id=&#34;sqlite&#34;&gt;SQLite&lt;/h4&gt;
&lt;p&gt;The default Grafana database is SQLite, which stores its data in a single file on disk. To back up this file, copy it to your backup repository.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;To ensure data integrity, shut down your Grafana service before backing up the SQLite database.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;The SQLite database file is located in one of the following directories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Default location for SQLite data in a binary or source installation: &lt;code&gt;$WORKING_DIR/data/grafana.db&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Default location for SQLite data in a &lt;code&gt;deb&lt;/code&gt; or &lt;code&gt;rpm&lt;/code&gt; package: &lt;code&gt;/var/lib/grafana/grafana.db&lt;/code&gt;. This path is specified in the Grafana
init.d script using &lt;code&gt;--config&lt;/code&gt; file parameter.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;mysql&#34;&gt;MySQL&lt;/h4&gt;
&lt;p&gt;To back up or restore a MySQL Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; mysqldump -u root -p[root_password] [grafana] &amp;gt; grafana_backup.sql

restore:
&amp;gt; mysql -u root -p grafana &amp;lt; grafana_backup.sql&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;postgres&#34;&gt;Postgres&lt;/h4&gt;
&lt;p&gt;To back up or restore a Postgres Grafana database, run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;backup:
&amp;gt; pg_dump grafana &amp;gt; grafana_backup

restore:
&amp;gt; psql grafana &amp;lt; grafana_backup&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

  &lt;/div&gt;

        


&lt;div data-shared=&#34;upgrade/upgrade-common-tasks.md&#34;&gt;
            &lt;h2 id=&#34;upgrade-grafana&#34;&gt;Upgrade Grafana&lt;/h2&gt;
&lt;p&gt;The following sections provide instructions for how to upgrade Grafana based on your installation method. For more information on where to find configuration files, refer to 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#configuration-file-location&#34;&gt;Configuration file location&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;debian&#34;&gt;Debian&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from a Debian package (&lt;code&gt;.deb&lt;/code&gt;), complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download?platform=linux&#34;&gt;Download&lt;/a&gt; the latest version of Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following &lt;code&gt;dpkg -i&lt;/code&gt; command.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;wget &amp;lt;debian package url&amp;gt;
sudo apt-get install -y adduser
sudo dpkg -i grafana_&amp;lt;version&amp;gt;_amd64.deb&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;apt-repository&#34;&gt;APT repository&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the Grafana Labs APT repository, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run the following commands:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo apt-get update
sudo apt-get upgrade&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Grafana automatically updates when you run &lt;code&gt;apt-get upgrade&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id=&#34;binary-tar-file&#34;&gt;Binary .tar file&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed from the binary &lt;code&gt;.tar.gz&lt;/code&gt; package, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt; or &lt;code&gt;grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the binary &lt;code&gt;.tar.gz&lt;/code&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the downloaded package and overwrite the existing files.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;rpm-or-yum&#34;&gt;RPM or YUM&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed using RPM or YUM complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/grafana.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Perform one of the following steps based on your installation.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you &lt;a href=&#34;/grafana/download&#34;&gt;downloaded an RPM package&lt;/a&gt; to install Grafana, then complete the steps documented in 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/installation/redhat-rhel-fedora/&#34;&gt;Install Grafana on Red Hat, RHEL, or Fedora&lt;/a&gt; or 
    &lt;a href=&#34;/docs/grafana/v12.4//setup-grafana/installation/suse-opensuse/&#34;&gt;Install Grafana on SUSE or openSUSE&lt;/a&gt; to upgrade Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you used the Grafana YUM repository, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo yum update grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you installed Grafana on openSUSE or SUSE, run the following command:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo zypper update&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana running in a Docker container, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Use Grafana 
    &lt;a href=&#34;/docs/grafana/v12.4/setup-grafana/configure-grafana/#override-configuration-with-environment-variables&#34;&gt;environment variables&lt;/a&gt; to save your custom configurations; this is the recommended method. Alternatively, you can view your configuration files manually by accessing the deployed container.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Run a commands similar to the following commands.&lt;/p&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This is an example. The parameters you enter depend on how you configured your Grafana container.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;


&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull grafana/grafana
docker stop my-grafana-container
docker rm my-grafana-container
docker run -d --name=my-grafana-container --restart=always -v /var/lib/grafana:/var/lib/grafana grafana/grafana&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;windows&#34;&gt;Windows&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Windows, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to a file named &lt;code&gt;&amp;lt;grafana_install_dir&amp;gt;/conf/custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Windows binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;mac&#34;&gt;Mac&lt;/h3&gt;
&lt;p&gt;To upgrade Grafana installed on Mac, complete the following steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;In your current installation of Grafana, save your custom configuration changes to the custom configuration file, &lt;code&gt;custom.ini&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This enables you to upgrade Grafana without the risk of losing your configuration changes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/grafana/download&#34;&gt;Download&lt;/a&gt; the Mac binary package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Extract the contents of the package to the location in which you installed Grafana.&lt;/p&gt;
&lt;p&gt;You can overwrite existing files and folders, when prompted.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;update-grafana-plugins&#34;&gt;Update Grafana plugins&lt;/h2&gt;
&lt;p&gt;After you upgrade Grafana, we recommend that you update all plugins because a new version of Grafana
can make older plugins stop working properly.&lt;/p&gt;
&lt;p&gt;Run the following command to update plugins:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;Bash&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;grafana cli plugins update-all&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

        
&lt;h2 id=&#34;technical-notes&#34;&gt;Technical notes&lt;/h2&gt;
&lt;p&gt;This section describes technical changes associated with this release of Grafana.&lt;/p&gt;
&lt;h3 id=&#34;plugins&#34;&gt;Plugins&lt;/h3&gt;
&lt;p&gt;Grafana now requires all plugins to be signed. If a plugin is not signed Grafana will not load/start it. This is an additional security measure to make sure plugin files and binaries haven&amp;rsquo;t been tampered with. All Grafana Labs authored plugins, including Enterprise plugins, are now signed. It&amp;rsquo;s possible to allow unsigned plugins using a configuration setting, but is something we strongly advise against doing. For more information about this setting, refer to &lt;a href=&#34;../../setup-grafana/configure-grafana/#allow_loading_unsigned_plugins&#34;&gt;allow loading unsigned plugins&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;grafana-live&#34;&gt;Grafana Live&lt;/h3&gt;
&lt;p&gt;Grafana now maintains persistent WebSocket connections for real-time messaging needs.&lt;/p&gt;
&lt;p&gt;When WebSocket connection is established, Grafana checks the request Origin header due to security reasons (for example, to prevent hijacking of WebSocket connection). If you have a properly defined public URL (&lt;code&gt;root_url&lt;/code&gt; server option) then the origin check should successfully pass for WebSocket requests originating from public URL pages. In case of an unsuccessful origin check, Grafana returns a 403 error. It&amp;rsquo;s also possible to add a list of additional origin patterns for the origin check.&lt;/p&gt;
&lt;p&gt;To handle many concurrent WebSocket connections you may need to tune your OS settings or infrastructure. Grafana Live is enabled by default and supports 100 concurrent WebSocket connections max to avoid possible problems with the file descriptor OS limit. As soon as your setup meets the requirements to scale the number of persistent connections this limit can be increased. You also have an option to disable Grafana Live.&lt;/p&gt;
&lt;p&gt;Refer to &lt;a href=&#34;../../setup-grafana/set-up-grafana-live/&#34;&gt;Grafana Live configuration&lt;/a&gt; documentation for more information.&lt;/p&gt;
&lt;h3 id=&#34;postgres-mysql-microsoft-sql-server-data-sources&#34;&gt;Postgres, MySQL, Microsoft SQL Server data sources&lt;/h3&gt;
&lt;p&gt;Grafana v8.0 changes the underlying data structure to &lt;a href=&#34;/developers/plugin-tools/key-concepts/data-frames&#34;&gt;data frames&lt;/a&gt; for the Postgres, MySQL, Microsoft SQL Server data sources. As a result, a &lt;em&gt;Time series&lt;/em&gt; query result gets returned in a &lt;a href=&#34;/developers/plugin-tools/key-concepts/data-frames#wide-format&#34;&gt;wide format&lt;/a&gt;. To make the visualizations work as they did before, you might have to do some manual migrations.&lt;/p&gt;
&lt;p&gt;For any existing panels/visualizations using a &lt;em&gt;Time series&lt;/em&gt; query, where the time column is only needed for filtering the time range, for example, using the bar gauge or pie chart panel, we recommend that you use a &lt;em&gt;Table query&lt;/em&gt; instead and exclude the time column as a field in the response.
Refer to this &lt;a href=&#34;https://github.com/grafana/grafana/issues/35534#issuecomment-861519658&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;issue comment&lt;/a&gt; for detailed instructions and workarounds.&lt;/p&gt;
&lt;h4 id=&#34;prefix-added-to-series-names&#34;&gt;Prefix added to series names&lt;/h4&gt;
&lt;p&gt;When you have a query where there&amp;rsquo;s a time value and a numeric value selected together with a string value that&amp;rsquo;s not named &lt;em&gt;metric&lt;/em&gt;, the graph panel renders series names as &lt;code&gt;value &amp;lt;hostname&amp;gt;&lt;/code&gt; rather than just &lt;code&gt;&amp;lt;hostname&amp;gt;&lt;/code&gt; which was the case before Grafana 8.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;SQL&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sql&#34;&gt;SELECT
  $__timeGroup(&amp;#34;createdAt&amp;#34;,&amp;#39;10m&amp;#39;),
  avg(value) as &amp;#34;value&amp;#34;,
  hostname
FROM grafana_metric
WHERE $__timeFilter(&amp;#34;createdAt&amp;#34;)
GROUP BY time, hostname
ORDER BY time&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;There are two possible workarounds to resolve this problem:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;In Grafana v8.0.3, use an alias of the string column selected as &lt;code&gt;metric&lt;/code&gt;. for example, &lt;code&gt;hostname as metric&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Use the &lt;a href=&#34;../../panels-visualizations/configure-standard-options/#display-name&#34;&gt;Standard field definitions&amp;rsquo; display name&lt;/a&gt; to format the alias. For the preceding example query, you would use &lt;code&gt;${__field.labels.hostname}&lt;/code&gt; option.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For more information, refer to the our relational databases documentation of &lt;a href=&#34;../../datasources/postgres/#time-series-queries&#34;&gt;Postgres&lt;/a&gt;, &lt;a href=&#34;../../datasources/mysql/#time-series-queries&#34;&gt;MySQL&lt;/a&gt;, &lt;a href=&#34;../../datasources/mssql/query-editor/#time-series-query-examples&#34;&gt;Microsoft SQL Server&lt;/a&gt;.&lt;/p&gt;
]]></content><description>&lt;h1 id="upgrade-to-grafana-v80">Upgrade to Grafana v8.0&lt;/h1>
&lt;div data-shared="upgrade/intro.md">
&lt;p>We recommend that you upgrade Grafana often to stay current with the latest fixes and enhancements.
Because Grafana upgrades are backward compatible, the upgrade process is straightforward, and dashboards and graphs will not change.&lt;/p></description></item></channel></rss>