﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Veritabanını Suspect Moddan Kurtarmak &#8211; SQL Server Eğitimleri</title>
	<atom:link href="https://sqlserveregitimleri.com/etiket/veritabanini-suspect-moddan-kurtarmak/feed" rel="self" type="application/rss+xml" />
	<link>https://sqlserveregitimleri.com</link>
	<description>SQL Server ile ilgili her şey</description>
	<lastBuildDate>Mon, 13 Feb 2023 06:05:25 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>
	<item>
		<title>SQL Server&#8217;da Veritabanını Suspect Moddan Kurtarmak</title>
		<link>https://sqlserveregitimleri.com/sql-serverda-veritabanini-suspect-moddan-kurtarmak</link>
		
		<dc:creator><![CDATA[Yavuz Selim Kart]]></dc:creator>
		<pubDate>Sat, 11 Feb 2023 14:08:09 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQL Server Suspect Çözümü]]></category>
		<category><![CDATA[SQL Server'da Veritabanını Suspect Moddan Kurtarmak]]></category>
		<category><![CDATA[Veritabanını Suspect Moddan Kurtarmak]]></category>
		<guid isPermaLink="false">https://sqlserveregitimleri.com/?p=15146</guid>

					<description><![CDATA[Herkese merhaba, Bu yazıda SQL Server’da veritabanını Suspect moddan kurtarmak ile ilgili bilgi vermeye çalışacağım. SQL Server&#8217;da bazı durumlarda veritabanınız Suspect modda olabilir. SQL Server...]]></description>
										<content:encoded><![CDATA[<p>Herkese merhaba,</p>
<p>Bu yazıda SQL Server’da veritabanını <strong>Suspect</strong> moddan kurtarmak ile ilgili bilgi vermeye çalışacağım.</p>
<p>SQL Server&#8217;da bazı durumlarda veritabanınız <strong>Suspect </strong>modda olabilir.</p>
<p>SQL Server sunucusu, dosyaları zarar gördüğünde ve veritabanı hasarlı dosyayı onaramadığından dolayı veritabanı suspect moda geçer. Böyle bir durumda veritabanına bağlanmak, veritabanından veri okumak ve yazmak için bağlanamazsınız.</p>
<p>SQL Server veritabanı<strong> Suspect</strong> moda başka hangi durumlarda düşer?</p>
<ol>
<li>Corrupt olmuş MDF, NDF veya LDF dosyaları.</li>
<li>Veritabanının erişilemeyen veri dosyaları.</li>
<li>Sistemin aniden kapanması veya yanlış bir şekilde kapatılması.</li>
<li>Rollback ve roll forward işlemlerinin tamamlanamaması.</li>
<li>Storage’daki disk alanının çok düşük kalması.</li>
<li>Sistem sorunları.</li>
<li>Ani elektrik kesintileri.</li>
<li>Donanım arızası.</li>
</ol>
<p><strong>Bu Durumda Ne Yapmalıyız?</strong></p>
<p>1. Suspect modu sıfırlamak için.</p>
<pre class="line-numbers"><code class="language-sql">EXEC SP_RESETSTATUS 'VeritabanıAdi';</code></pre>
<p>2. Veritabanı bakımının güvenli bir şekilde gerçekleştirmek veya sorun gidermek amacıyla veritabanını EMERGENCY moda alırız.</p>
<pre class="line-numbers"><code class="language-sql">ALTER DATABASE VeritabanıAdi SET EMERGENCY</code></pre>
<p>3.Veritabanında oluşan mantıksal ve fiziksel hataların tespit edilmesi ve gerekirse onarılması için <strong>DBCC CHECKDB</strong> yapılmalıdır. Burada yapılacak kontrolün daha hızlı yapılabilmesi için kontrolün sadece fiziksel yapılması seçeneğiyle ilerleyebiliriz. Büyük veritabanları için PHYSICAL_ONLY seçeneği tercih edilebilir.</p>
<pre class="line-numbers"><code class="language-sql">DBCC CHECKDB ('VeritabanıAdi')

--ya da

DBCC CHECKDB ('VeritabanıAdi') WITH PHYSICAL_ONLY;</code></pre>
<p>4.Veritabanını <strong>SINGLE_USER</strong> modunda <strong>ROLLBACK TRANSACTION</strong>’a getiriyoruz. Bu komutla tek bir kullanıcının erişiminde veritabanı üzerindeki sorguların işlemlerinin bitmesini beklemeden direkt olarak <strong>ROLLBACK </strong>yaparak sessionlarını sonlandırmasını sağlarız.</p>
<pre class="line-numbers"><code class="language-sql">ALTER DATABASE VeritabanıAdi SET SINGLE_USER WITH ROLLBACK IMMEDIATE</code></pre>
<p>5.Suspect moda düşmüş veritabanının Full Backup&#8217;ını alın. Bir sonraki işlem olası veri kaybı sorunlarını göze alan bir işlem olduğu için bu Backup&#8217;a ihtiyacımız olabilir.</p>
<pre class="line-numbers"><code class="language-sql">BACKUP DATABASE [VeritabanıAdi]
TO  DISK = N'D:\BackupPath\VeritabanıAdiYedek.bak'
WITH COPY_ONLY,
     NOFORMAT,
     NOINIT,
     NAME = N'VeritabanıAdiYedek-Full Database BACKUP',
     SKIP,
     NOREWIND,
     NOUNLOAD,
     STATS = 10;
GO</code></pre>
<p>6.Veri kaybına izin veren aşağıdaki komutla bütün hataları düzeltmesini hedeflemekteyiz.</p>
<pre class="line-numbers"><code class="language-sql">DBCC CHECKDB ('VeritabanıAdi', REPAIR_ALLOW_DATA_LOSS)</code></pre>
<p>7.Yukarıdaki komut başarılı bir şekilde yürütüldüğünde veritabanını <strong>MULTI_USER</strong> moduna getirin.</p>
<pre class="line-numbers"><code class="language-sql">ALTER DATABASE VeritabanıAdi SET MULTI_USER</code></pre>
<p>Yukarıdaki işlemleri gerçekleştirebilmeniz için sysadmin yetkisine sahip olmanız gerekmektedir.</p>
<p>Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.</p>
<div class='epvc-post-count'><span class='epvc-eye'></span>  <span class="epvc-count"> 201</span><span class='epvc-label'> Kez Okundu</span></div>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
