Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!
SQL Express - Datenbankdump - Was ist zu sichern?
SQL Express - Datenbankdump - Was ist zu sichern?
Hallo,
bisher sichere ich die zwei Vmware-Datenbanken auf dem SQL Express.
Ist eigentlich die Master-DB auch mitzusichern? Dieses verwaltet ja Informationen zu allen DB´s, den Benutzern und Verbindungen.
Gruß
Mull
bisher sichere ich die zwei Vmware-Datenbanken auf dem SQL Express.
Ist eigentlich die Master-DB auch mitzusichern? Dieses verwaltet ja Informationen zu allen DB´s, den Benutzern und Verbindungen.
Gruß
Mull
Hi,
am besten planst du einen Wartungplan (im Management Studio unter Verwaltung/Wartungsplan) einen neuen anlegen. Dort die beiden Tasks Verlaufscleanup und Datenbank verkleinern reinpacken und konfigurieren.
1. Verlaufscleanup
- Verbindung zum DB Server konfigurien wenn es nicht lokal ist (Management und Datenbank auf selbem Server liegen)
- am besten alle 3 Optionen anhacken
- Zeitraum auszählen
2. Datenbank verkleinern
- Verbindung zum DB Server konfigurien wenn es nicht lokal ist (Management und Datenbank auf selbem Server liegen)
- Datenbanken auswählen (ich nehme hier immer alle!)
- Speicherplatz an OS zurückgeben auswählen, sonst siehst du nicht das die Dateien kleiner werden.
Zum schluss den Zeitplan für der Wartungplan einrichten und am besten direkt einmal laufen lassen.
Gruß Peter
am besten planst du einen Wartungplan (im Management Studio unter Verwaltung/Wartungsplan) einen neuen anlegen. Dort die beiden Tasks Verlaufscleanup und Datenbank verkleinern reinpacken und konfigurieren.
1. Verlaufscleanup
- Verbindung zum DB Server konfigurien wenn es nicht lokal ist (Management und Datenbank auf selbem Server liegen)
- am besten alle 3 Optionen anhacken
- Zeitraum auszählen
2. Datenbank verkleinern
- Verbindung zum DB Server konfigurien wenn es nicht lokal ist (Management und Datenbank auf selbem Server liegen)
- Datenbanken auswählen (ich nehme hier immer alle!)
- Speicherplatz an OS zurückgeben auswählen, sonst siehst du nicht das die Dateien kleiner werden.
Zum schluss den Zeitplan für der Wartungplan einrichten und am besten direkt einmal laufen lassen.
Gruß Peter
Hi,
ja du hast recht ich benutze eine SQL 2005 Server.Aber ein kleiner Tipp bei MS das Managment Studio vom Server runterladen das ist Free. Das auf deinem Desktop installieren, dann kannst du die Wartungspläne einfach einrichten.
Das mit der Express Version zu machen ist echter Fummelkram!
Gruß Peter
ja du hast recht ich benutze eine SQL 2005 Server.Aber ein kleiner Tipp bei MS das Managment Studio vom Server runterladen das ist Free. Das auf deinem Desktop installieren, dann kannst du die Wartungspläne einfach einrichten.
Das mit der Express Version zu machen ist echter Fummelkram!
Gruß Peter
Hi,
in der Testversion ist die dabei einfach nur die Management Tools installieren. Sorry da ich eine Version über den SQL Server auf meiner Kiste habe habe ich auch noch nie versucht ide einzeln runterzuladen. Ein Kollege hat mir nur den Tip gegeben, dass amn damit auch die Express Version super administrieren kann.
Gruß Peter
in der Testversion ist die dabei einfach nur die Management Tools installieren. Sorry da ich eine Version über den SQL Server auf meiner Kiste habe habe ich auch noch nie versucht ide einzeln runterzuladen. Ein Kollege hat mir nur den Tip gegeben, dass amn damit auch die Express Version super administrieren kann.
Gruß Peter
Hi,
ich konnte es noch nicht testen. Zudem ist heute mein neuer AMD Phenom Prozessor eingetroffen und ich sitze gerade an WS 6.5 mit ESX 3.5. Endlich krieg ich das mal zu Laufen.
Dann werde ich mich intensiv mit der Thematik MS SQL Express und Sicherung beschäftigen. Hab mir dazu auch schon Bücher usw. besorgt. Vielleicht kommt was gescheites dabei raus, dann schreib ich ein How-To und stells hier mal ein.
Gruß
Mull
ich konnte es noch nicht testen. Zudem ist heute mein neuer AMD Phenom Prozessor eingetroffen und ich sitze gerade an WS 6.5 mit ESX 3.5. Endlich krieg ich das mal zu Laufen.
Dann werde ich mich intensiv mit der Thematik MS SQL Express und Sicherung beschäftigen. Hab mir dazu auch schon Bücher usw. besorgt. Vielleicht kommt was gescheites dabei raus, dann schreib ich ein How-To und stells hier mal ein.
Gruß
Mull
Hi,
sorry ich war mit meinem Tipp wohletwas schnell.
Habe mir das ganze gestern mal angeschaut. Um sich auf der Kiste anzumelden muss man 2 Dinge machen.
1. die Remote Anmeldung am SQL 2005 Express freischalten
2. einen Benutzer zur Admin Gruppe hinzufügen.
Das geht alles über dieses "komisch" Konfigurationstool.
Dannach kann man sich mit der Kiste verbinden.
Ich musste dann aber feststellen das es die Planung für die Wartungspläne dann nicht gibt. Ich hatte keine SQL Express von einem VCenter sondern nur eine von einem HP Webjetadmin. Ich ich nehme jedoch an, dass das vom SQL Express identisch ist.
Da man also scheinbar keine Wartungpläne per klick GUI erstellen kann muss man das wohl per T-SQL machen. Ich schau mir das die nächsten Tage noch mal an und versuche ein Script zu posten.
Gruß Peter
sorry ich war mit meinem Tipp wohletwas schnell.
1. die Remote Anmeldung am SQL 2005 Express freischalten
2. einen Benutzer zur Admin Gruppe hinzufügen.
Das geht alles über dieses "komisch" Konfigurationstool.
Dannach kann man sich mit der Kiste verbinden.
Ich musste dann aber feststellen das es die Planung für die Wartungspläne dann nicht gibt. Ich hatte keine SQL Express von einem VCenter sondern nur eine von einem HP Webjetadmin. Ich ich nehme jedoch an, dass das vom SQL Express identisch ist.
Da man also scheinbar keine Wartungpläne per klick GUI erstellen kann muss man das wohl per T-SQL machen. Ich schau mir das die nächsten Tage noch mal an und versuche ein Script zu posten.
Gruß Peter
Hi Peter,
unten habe ich jetzt mal meine erste Version eines vollständigen Backup-Skriptes angefügt. Es werden alle Datenbanken außer die temdb gesichert. Es erfolgt jeweils eine Vollsicherung und anschließend die Sicherung der Transaktionsprotokolle.
Die vorherigen Sicherungen bleiben erhalten und werden nicht gelöscht. Hier bitte Vorsicht: Die Dateigröße der Sicherungen können schnell anwachsen.
Die Transaktionsprotokolle der "master"-DB werden nicht gesichert, dies ist auch lt. Microsoft nicht möglich.
Eine Rücksicherung auf dem Server habe ich getestet mit Erfolg. Durch das Backup der Transaktionsprotokolle verliert man auch keine Daten, die noch nicht "richtig" in die DB geschrieben worden sind.
Bei einer Rücksicherung auf einem neuen Server (Name und IP identisch) erhalte ich jedoch eine Fehlermeldung. Dies funktioniert noch nicht. Daran muss ich noch arbeiten.
Gruß
Mull
unten habe ich jetzt mal meine erste Version eines vollständigen Backup-Skriptes angefügt. Es werden alle Datenbanken außer die temdb gesichert. Es erfolgt jeweils eine Vollsicherung und anschließend die Sicherung der Transaktionsprotokolle.
Die vorherigen Sicherungen bleiben erhalten und werden nicht gelöscht. Hier bitte Vorsicht: Die Dateigröße der Sicherungen können schnell anwachsen.
Die Transaktionsprotokolle der "master"-DB werden nicht gesichert, dies ist auch lt. Microsoft nicht möglich.
Eine Rücksicherung auf dem Server habe ich getestet mit Erfolg. Durch das Backup der Transaktionsprotokolle verliert man auch keine Daten, die noch nicht "richtig" in die DB geschrieben worden sind.
Bei einer Rücksicherung auf einem neuen Server (Name und IP identisch) erhalte ich jedoch eine Fehlermeldung. Dies funktioniert noch nicht. Daran muss ich noch arbeiten.
Gruß
Mull
Code: Alles auswählen
--Skript zur Sicherung der SQL-Serverdatenbanken
--eines Virtual Center Servers mit SQL-Express 2005.
--Vollsicherungen inkl. Transaktionsprotokollen.
--Hinweis:
--Der jeweilige Speicherort unter TO DISK ist anzupassen!!!
--Vorherige Sicherungen werden nicht gelöscht!!!
--
--MM 22/11/2008
ALTER DATABASE VIM_VCDB
SET RECOVERY FULL
GO
BACKUP DATABASE VIM_VCDB
TO DISK = 'C:\Backup\VIM_VCDB.bak'
WITH NAME = 'VIM_VCDB-Full Database Backup',
SKIP,
NOUNLOAD,
STATS = 10
GO
BACKUP LOG VIM_VCDB
TO DISK = 'C:\Backup\VIM_VCDB.bak'
WITH NAME = 'VIM_VCDB-Transaction Log Backup',
SKIP,
NOUNLOAD,
STATS = 10
ALTER DATABASE VIM_UMDB
SET RECOVERY FULL
GO
BACKUP DATABASE VIM_UMDB
TO DISK = 'C:\Backup\VIM_UMDB.bak'
WITH NAME = 'VIM_UMDB-Full Database Backup',
SKIP,
NOUNLOAD,
STATS = 10
GO
BACKUP LOG VIM_UMDB
TO DISK = 'C:\Backup\VIM_UMDB.bak'
WITH NAME = 'VIM_UMDB-Transaction Log Backup',
SKIP,
NOUNLOAD,
STATS = 10
ALTER DATABASE master
SET RECOVERY FULL
GO
BACKUP DATABASE master
TO DISK = 'C:\Backup\master.bak'
WITH NAME = 'master-Full Database Backup',
SKIP,
NOUNLOAD,
STATS = 10
ALTER DATABASE model
SET RECOVERY FULL
GO
BACKUP DATABASE model
TO DISK = 'C:\Backup\model.bak'
WITH NAME = 'model-Full Database Backup',
SKIP,
NOUNLOAD,
STATS = 10
GO
BACKUP LOG model
TO DISK = 'C:\Backup\model.bak'
WITH NAME = 'model-Transaction Log Backup',
SKIP,
NOUNLOAD,
STATS = 10
ALTER DATABASE msdb
SET RECOVERY FULL
GO
BACKUP DATABASE msdb
TO DISK = 'C:\Backup\msdb.bak'
WITH NAME = 'msdb-Full Database Backup',
SKIP,
NOUNLOAD,
STATS = 10
GO
BACKUP LOG msdb
TO DISK = 'C:\Backup\msdb.bak'
WITH NAME = 'msdb-Transaction Log Backup',
SKIP,
NOUNLOAD,
STATS = 10
Hi,
das sieht doch gut aus! Was man sich jedoch je nach Backupstrategie überlegen sollte ist auf welchen Level man das Wiederherstellungsmodell einstellt. Will man immer nur die gesamte DB wiederherstellen unabhängig von einzelnen einträgen sollte man schauen, dass in der Datenbank unter Eigenschaften/Optionen das Wiederherstellungsmodell auf Einfach steht. Dann werfen die Transaktionslogs auch nicht so riessig.
Was ich vor dem sichern immer mache ist zum einen einen Verlaufscleanup und eine Datenbankverkleinerung durchzuführen.
Ich habe gerade mal geschaut wie das T-SQL für die beiden aussieht
1. Verlaufscleanup
2. Datenbankverkleinerung
Ich hoffe das hilft dir weiter!
Gruß Peter
das sieht doch gut aus! Was man sich jedoch je nach Backupstrategie überlegen sollte ist auf welchen Level man das Wiederherstellungsmodell einstellt. Will man immer nur die gesamte DB wiederherstellen unabhängig von einzelnen einträgen sollte man schauen, dass in der Datenbank unter Eigenschaften/Optionen das Wiederherstellungsmodell auf Einfach steht. Dann werfen die Transaktionslogs auch nicht so riessig.
Was ich vor dem sichern immer mache ist zum einen einen Verlaufscleanup und eine Datenbankverkleinerung durchzuführen.
Ich habe gerade mal geschaut wie das T-SQL für die beiden aussieht
1. Verlaufscleanup
Code: Alles auswählen
declare @dt datetime select @dt = cast(N'2008-10-26T21:08:50' as datetime) exec msdb.dbo.sp_delete_backuphistory @dt
GO
EXEC msdb.dbo.sp_purge_jobhistory @oldest_date='2008-10-26T21:08:50'
GO
EXECUTE msdb..sp_maintplan_delete_log null,null,'2008-10-26T21:08:50'
2. Datenbankverkleinerung
Code: Alles auswählen
DBCC SHRINKDATABASE(N'DATENBANKNAME', 10, TRUNCATEONLY)
Ich hoffe das hilft dir weiter!
Gruß Peter
Hilfe : VIM_VCDB' is full
Hallo
Ich hab am 24.11. das Backup-Script von oben von mullfreak laufen lassen und das hat auch funktioniert.
Heute kann ich mich nun nicht mehr am Virtualcenter anmelden.
Im Eventlog steht
Leider hab ich von SQL nicht wirklich Ahnung.
Was hat das Skript an meiner bis dahin funktionieren Datenbank verändert ?
Wie bekomme ich das wieder gerade gebogen ?
Ich hab zwar ein wenig gegoogelt, aber außer das das Recovery-Model vorher vermutlich "simple" war nichts so richtig gefunden.
Als SQL-Server läuft der SQL 2005 Express.
Danke Ronald
Ich hab am 24.11. das Backup-Script von oben von mullfreak laufen lassen und das hat auch funktioniert.
Heute kann ich mich nun nicht mehr am Virtualcenter anmelden.
Im Eventlog steht
"The transaction log for database 'VIM_VCDB' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases "
Leider hab ich von SQL nicht wirklich Ahnung.
Was hat das Skript an meiner bis dahin funktionieren Datenbank verändert ?
Wie bekomme ich das wieder gerade gebogen ?
Ich hab zwar ein wenig gegoogelt, aber außer das das Recovery-Model vorher vermutlich "simple" war nichts so richtig gefunden.
Als SQL-Server läuft der SQL 2005 Express.
Danke Ronald
Hi 4huf_1
das Backupskript hat nichts an deiner Datenbank geändert! Sie ist einfach voll und für den SQL 2005 Express gibt es ja Größernbeschränkungen für die Datenbank.
Du must jetzt einen Cleanuptask laufen lassen und dann am besten auch die Datenbank verkleinern damit du den Platz wieder auf der Platte freibekommst. Das zweite muss du aber nicht machen, dann ist in der Datenbank zwar Platz, die Datei ist aber weiterhin maximal groß.
Wichtig wäre in diesem Zusammenhang auch mal gleich zu schauen auf was das Wiederhgerstellungsmodell steht. Steht es auf "vollständig" wird dir die Datenbank wieer sehr schenll voll laufen.
Gruß Peter
das Backupskript hat nichts an deiner Datenbank geändert! Sie ist einfach voll und für den SQL 2005 Express gibt es ja Größernbeschränkungen für die Datenbank.
Du must jetzt einen Cleanuptask laufen lassen und dann am besten auch die Datenbank verkleinern damit du den Platz wieder auf der Platte freibekommst. Das zweite muss du aber nicht machen, dann ist in der Datenbank zwar Platz, die Datei ist aber weiterhin maximal groß.
Wichtig wäre in diesem Zusammenhang auch mal gleich zu schauen auf was das Wiederhgerstellungsmodell steht. Steht es auf "vollständig" wird dir die Datenbank wieer sehr schenll voll laufen.
Gruß Peter
Hi,
wie Peter schon sagte, das Skript verändert nichts an der DB. Peter hat es auch schon erwähnt, mit:
USE [VIM_VCDB]
GO
DBCC SHRINKDATABASE(N'VIM_VCDB', 10, TRUNCATEONLY)
GO
die Datenbank zu "shrinken".
Dieses hab ich in mein Skript (noch) nicht eingebaut.
Bitte führe mal ein Cleanuptask aus.
Gruß
Mull
wie Peter schon sagte, das Skript verändert nichts an der DB. Peter hat es auch schon erwähnt, mit:
USE [VIM_VCDB]
GO
DBCC SHRINKDATABASE(N'VIM_VCDB', 10, TRUNCATEONLY)
GO
die Datenbank zu "shrinken".
Dieses hab ich in mein Skript (noch) nicht eingebaut.
Bitte führe mal ein Cleanuptask aus.
Gruß
Mull
Hi, Danke für die Antwort
Leider führt
zu dieser Fehlermeldung
Im Filesystem ist ausreichend Platz.
Was mit dem "Cleanuptask" gemeint ist weis ich leider nicht.
Im Objektexplorers des SQL-Studions, Datenbankname/Rechtsklick/Task gibt es nur
"Shrink/Database", "Shrink/Files", "Back up" und "Restore".
MfG Ronald
Leider führt
USE [VIM_VCDB]
GO
DBCC SHRINKDATABASE(N'VIM_VCDB', 10, TRUNCATEONLY)
GO
zu dieser Fehlermeldung
DBCC SHRINKDATABASE: File ID 1 of database ID 5 was skipped because the file does not have enough free space to reclaim.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Im Filesystem ist ausreichend Platz.
Was mit dem "Cleanuptask" gemeint ist weis ich leider nicht.
Im Objektexplorers des SQL-Studions, Datenbankname/Rechtsklick/Task gibt es nur
"Shrink/Database", "Shrink/Files", "Back up" und "Restore".
MfG Ronald
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste