4

für SQL Server 2008 Developer Edition auf Vista 64 Bit:SQL Server 2008 Datenbankkopie - Dateiberechtigungen

ich kopieren versucht, eine Datenbank, die eine Vista Admin-Konto mit dem Anbringen/Abnehmen-Methode und es konnte aufgrund eines Berechtigungs Fehler, so gab ich dem Benutzer, dass SQL-Dienste als Schreiben ausgeführt werden und in das Verzeichnis ändern. Die Kopie hat nicht funktioniert. Ich gab ihm dann volle Kontrolle. Die Kopie hat funktioniert.

Macht das Sinn?

Wenn ich die volle Kontrolle vom Benutzer widerrufe, wird das Probleme verursachen?

Das Seltsame ist, dass in einer vorhandenen Arbeitsdatenbank mit Dateien in einem anderen Verzeichnis keine speziellen Berechtigungen für das Verzeichnis und die Dateien für die Datenbank vorhanden sind. Warum also benötigt eine Kopie die volle Kontrolle?

Antwort

3

Wenn Sie eine Datenbank trennen, können die MDF/LDF-Dateien mit eingeschränkterer Dauer als erwartet festgelegt werden, wie exklusiv für den Prinzipal, der die Trennung vorgenommen hat - möglicherweise das SQL Server-Dienstkonto oder das Domänenkonto des Benutzers führte die Trennung durch. Ich musste in der Vergangenheit manuell Berechtigungen für die Registerkarte "Eigenschaften"> "Sicherheit" für andere Benutzer hinzufügen, sonst verhalten sich die Dateien so, als wären sie gesperrt. Siehe auch http://www.onupdatecascade.com/2009/07/sql-server-locks-mdf-and-ldf-files-upon.html

auch: http://msdn.microsoft.com/en-us/library/ms189128.aspx

(dank GrumpyOldDBA)

0

Wenn der Server und/oder Daten, die Sie arbeiten nicht die restriktiven Berechtigungen erforderlich eingestellt wird, Sie einen Start Flag gesetzt in SQL Server, der diese Funktion überschreiben wird. Ich verstehe, was Microsoft für diese Sache bedeutet - sie gehen davon aus, dass wenn Sie eine DB lösen, sie nicht wollen, dass irgendjemand mit der Datei fortgeht; Aber ich denke, es ist leichter gesagt als getan, einen guten Hacker davon abzuhalten, und die DB zu verschlüsseln ist die beste Methode, um Daten zu schützen.

Wie auch immer, es gibt eine "Trace Flag 1802", die einen seltsamen Namen hat, da es nichts mit Tracing zu tun hat. Sie möchten es zu Ihrem SQL-Start in SQL Configuration Manager hinzufügen, wenn Sie dieses Verhalten beibehalten möchten.

https://support.microsoft.com/en-us/kb/922804

Ich selbst hatte das gleiche Problem und die Antwort in Stack gefunden: https://dba.stackexchange.com/a/77683/11001