tag:blogger.com,1999:blog-19491754890965696572024-02-08T05:09:58.311-08:00SQL meets SharepointAnonymoushttp://www.blogger.com/profile/07874506954371978401noreply@blogger.comBlogger4125tag:blogger.com,1999:blog-1949175489096569657.post-48864405428895171572009-07-21T01:58:00.000-07:002009-07-21T01:58:42.339-07:00MOSS Tips and Solutions<a href="http://mossytips.blogspot.com/">MOSS Tips and Solutions</a>: "EXEC sp_resetstatus ‘DBname’;<br />ALTER DATABASE DBname SET EMERGENCY<br />DBCC checkdb(’DBname’)<br />ALTER DATABASE DBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE<br />DBCC CheckDB (’DBname’, REPAIR_ALLOW_DATA_LOSS)<br />ALTER DATABASE DBname SET MULTI_USER"Anonymoushttp://www.blogger.com/profile/07874506954371978401noreply@blogger.com0tag:blogger.com,1999:blog-1949175489096569657.post-13165334189649989412008-05-29T02:38:00.000-07:002008-05-29T02:38:50.082-07:00SO WIRD'S GEMACHT: Die korrekten SQL Server-Konfigurationseinstellungen ermitteln<a href="http://support.microsoft.com/kb/319942/">SO WIRD'S GEMACHT: Die korrekten SQL Server-Konfigurationseinstellungen ermitteln</a>Anonymoushttp://www.blogger.com/profile/07874506954371978401noreply@blogger.com0tag:blogger.com,1999:blog-1949175489096569657.post-33215264332845249882008-02-22T08:04:00.001-08:002008-08-28T06:13:28.918-07:00Datenbank teilweise offline<p>Seit SQL 2005 ist eine Datenbank bereits dann online, wenn die Primary Dateigruppe intakt ist. Was aber passiert, wenn eine der zusätzlich erstellten Dateigruppen defekt ist? Lösung gesucht... </p> <p>In der Praxis werden bei sehr grossen Datenbanken oftmals Dateigruppen erstellt, um eine physikalische Verteilung Daten/Tabellen zu erreichen. Beispielsweise konnte man Stammdaten auf HDD 1 legen, während die Bewegungsdaten auf HDD 2 lagen. Dafür war es notwendig Tabellen auf die dementsprechnenden Dateigruppen zu anzulegen. Jedoch steht unter SQL Server 2000 eine DB nicht zur Verfügung, wenn eine der Dateigruppen defekt ist.</p> <pre><br />-- Hinzufügen der Dateigruppe Stamm</pre><br /><br /><pre>ALTER DATABASE MeineDB ADD FILEGROUP [Stamm]<br />GO<br />ALTER Databse MeineDB<br />ADD FILE<br />( NAME = N'Stammdaten'FILENAME = N'E:\DATA\SQLDB\Stammdaten.ndf',<br />SIZE = 3072KB , FILEGROWTH = 1024KB ) TO FILEGROUP [Stamm]<br />GO<br /><br />-- Anlegen der Tabelle auf Dateigruppe Stamm </pre><br /><br /><pre>create table kunden<br /> (kdid int ....) on STAMM</pre><br /><br /><p>Nun ist aber diese Dateigruppe, sprich die Datei "stammdaten.ndf" defekt. Startet der SQL Server, steht die DB zunächst nicht zur Verfügung. Dieser Umstand ist aber unter SQL Server 2005 wie folgt zu beheben.</p><br /><br /><p>--defekte/fehlende Datei offline setzen und anschliessend die Datenbank wieder online schalten</p><br /><br /><pre>alter database meineDB<br />modify file (name = N'Stammdaten', OFFLINE)<br />go<br />alter database meineDB<br />set online </pre><br /><br /><p>Somit steht die Datenbank komplett zur Verfügung. Lediglich die betroffenden Tabellen der fehlenden Datei stehen nicht zur Verfügung.</p><br /><br /><p>Der "Trick" kann sogar noch ausgebaut werden. Falls für große Tabellen eine Partitionierung (horizontales Splitten einer Tabelle auf mehrere Dateigruppen) vorgenommen worden ist, würde sogar eine Tabelle teilweise zur Verfügung gestellt werden können.</p><br /><br /><h6>Bsp: Tabelle Umsatz...</h6><br /><br /><p>besteht aus 3 Dateigruppen: Umsatz2003, Umsatz2004 und Umsatz2005.<br /><br />Die Dateigruppe für Umsatz2004 steht nicht zur Verfügung und wurde offline gesetzt.</p><br /><br /><p>Als Ergebnis für select * from Umsatz erhalten wir dennoch Werte. Sogar update und Insert funktionieren tadellos bei den vorhanden Werten. </p><br /><br /><pre>--> Tab: Umsatz</pre><br /><br /><pre>Summe | Kunden | Jahr<br />---------------------------------<br />123 12 2003 -- Dategruppe Umsatz2003<br />234 33 2003 -- Dategruppe Umsatz2003<br />431 99 2005 -- Dategruppe Umsatz2005<br />234 112 2005 -- Dategruppe Umsatz2005</pre><br /><br /><p>(Zum Thema: "Wie partitioniere ich Tabelle horiontal" wird hier demnächst ein eigener Artikel erscheinen.)</p><br /><br /><p>Für den Restore der DB ist es allerdings von Nöten eine Sicherung der Dateigruppen zu haben und sowie eine aktuelle Sicherung des Transaktionsprotokolls.</p><p><br /></p><p>Weiteres dazu auch unter: http://www.sql-meets-sharepoint.de/<br /></p>Anonymoushttp://www.blogger.com/profile/07874506954371978401noreply@blogger.com0tag:blogger.com,1999:blog-1949175489096569657.post-621731805995460502008-02-20T04:59:00.001-08:002008-02-20T10:15:26.000-08:00SQL 2008 Februar CTP download<p>jetzt verfügbar</p> Anonymoushttp://www.blogger.com/profile/07874506954371978401noreply@blogger.com0