Error de restauración de SQL Server: Acceso denegado


Creé una base de datos en mi máquina local y luego hice una copia de seguridad llamada tables.bak de la tabla DataLabTables.

Moví esa copia de seguridad a una máquina remota sin esa tabla e intenté hacer una restauración, pero obtuve el siguiente error:

Sistema.Datos.SqlClient.SqlError: El sistema operativo devolvió el error ' 5 (Acceso denegado.)' al intentar 'RestoreContainer:: ValidateTargetForCreation' on 'c:\Program Archivos\Microsoft SQL Servidor\MSSQL.1\MSSQL\DataLabTables.mdf".

¿Cómo puedo arreglar mis derechos, si ese es el problema?

Author: marc_s, 2011-08-11

17 answers

Acabo de tener este problema con SQL Server 2012.

Resulta que todo lo que tenía que hacer era marcar la casilla marcada ' Reubicar todos los archivos a la carpeta 'en la sección' Archivos':

introduzca la descripción de la imagen aquí

(Haz clic para ver la imagen completa)

Esto, por supuesto, supone que tiene instalada la versión correcta de SQL Server.

 387
Author: Exile,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-24 19:43:10

Desde el mensaje de error, dice que hay un error al validar el destino (c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DataLabTables.mdf) de su operación de restauración.

Eso suena como:

A) ese archivo ya existe (porque ya lo ha restaurado previamente) y está en uso por SQL Server

O

B) ese directorio no existe en absoluto

En su pregunta, mencionó que creó una copia de seguridad para esa tabla, así no es como funcionan las copias de seguridad de SQL Server. Esas copias de seguridad son siempre el todo base de datos (o al menos uno o varios grupos de archivos de esa base de datos).

Mi corazonada es: ya ha restaurado esa base de datos anteriormente, y ahora, en una segunda restauración, no marcó la casilla de verificación "Sobrescribir la base de datos existente" en su asistente de restauración - por lo tanto, el archivo existente no se puede sobrescribir y la restauración falla.

El usuario que está ejecutando la restauración en su servidor remoto obviamente no tiene acceso a ese directorio en el servidor remoto.

C:\program files\.... es un directorio protegido - los usuarios normales (no administradores) no tienen acceso a este directorio (y sus subdirectorios).

La solución más fácil: intente poner su archivo BAK en otro lugar (por ejemplo, C:\temp) y restaurarlo desde allí

 29
Author: marc_s,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-11 20:06:14

Yo estaba teniendo el mismo problema. Resultó que mis servicios SQL Server y SQL Server Agent logon as se estaban ejecutando bajo la cuenta Network Services que no tenía acceso de escritura para realizar la restauración de la copia de seguridad.

Cambié ambos servicios para iniciar sesión como Local System Account y esto solucionó el problema.

 21
Author: Flea,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-07 10:20:47

Recientemente me enfrenté a este problema con SQL 2008 R2 y la siguiente solución funcionó para mí:

1) Cree una nueva base de datos con el mismo nombre que la que está intentando restaurar 2) Al restaurar, use el mismo nombre que usó anteriormente y en las opciones, haga clic en la opción sobrescribir

Puede darle una oportunidad a lo anterior si las otras soluciones no funcionan.

 9
Author: Devin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-15 20:13:37

El creador de la copia de seguridad tenía MSSql versión 10 instalada, por lo que cuando tomó la copia de seguridad también almacena la ruta del archivo original (para poder restaurarlo en la misma ubicación), pero yo tenía la versión 11, por lo que no pudo encontrar el directorio de destino.

Así que cambié el directorio del archivo de salida a C:\Program Archivos \ Microsoft SQL Server \ MSSQL11.MSSQLSERVER\MSSQL \ DATA\, y fue capaz de restaurar la base de datos con éxito.

Fuente

 6
Author: Philluminati,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-12 11:19:57

Tuve un problema similar. Traté de restaurar un 2005 .archivo bak, y recibí exactamente el mismo error. He seleccionado la opción de sobrescribir, así que en vano.

Mi solución fue conceder al usuario SQL acceso al directorio en cuestión, yendo a la carpeta y editando los derechos de acceso a través de la pantalla de propiedades.

 6
Author: martijn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-14 09:57:55

Perdido un par de horas a este problema también. sin embargo, lo tengo en marcha:

"acceso denegado" en mi caso realmente significaba "acceso denegado". la cuenta de usuario de mssqlstudio en mi dispositivo Windows NO tenía control total de la carpeta especificada en el mensaje de error. le di el control total. el acceso ya no fue denegado y la restauración tuvo éxito.

¿Por qué se bloqueó la carpeta para studio ? quién sabe ? tengo suficientes preguntas para tratar como está sin tratar de responder más.

 2
Author: abraham tio,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-28 18:02:44

Otro escenario podría ser la existencia de múltiples rutas de base de datos. En primer lugar, tome nota de la ruta donde se almacenan las nuevas bases de datos. Así que si crea una nueva base de datos vacía y luego hace Tasks/Restore, asegúrese de que la ruta que la restauración está tratando de usar es el mismo directorio en el que se creó la base de datos vacía. Incluso si la ruta de restauración es legal, obtendrá el error de acceso denegado si no es la ruta actual con la que está trabajando. Muy fácil de detectar cuando el camino no es legal, mucho más difícil de detectar cuando el camino es legal, pero no el camino actual.

 0
Author: demongolem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-09-30 16:44:08

Lo siento porque no puedo comentar...

Yo tenía el mismo problema. En mi caso, el problema estaba relacionado con intentar restaurar en una carpeta antigua de sql Server (que existía en el servidor). Esto se debe a la antigua copia de seguridad de sql Server (es decir, la copia de seguridad de SQL Server 2012) restaurada en un nuevo sql server (SQL Server 2014). El verdadero problema no es muy diferente de la respuesta de @marc_s. De todos modos, cambié solo la carpeta de destino a la nueva carpeta de DATOS de SQL Server.

 0
Author: bubi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-14 08:01:37

Esta puede no ser la mejor solución, pero estaba tratando de hacer la restauración en SQL Server 2005, pero cambié a SQL Server 2008 y funcionó.

 0
Author: alansiqueira27,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-11 21:17:20

Tengo un problema como este. Error causado por la compresión habilitada en las carpetas de SQL Server.

 0
Author: Arman Hayots,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-20 09:23:11

Frnds... Tuve el mismo problema mientras restoring base de datos y probé todas las soluciones, pero podría nt conseguir resuelto. Luego traté de volver a instalar SQL 2005 y el problema resuelto. Actully última vez me olvidé de comprobar en personalizar opción mientras instlling SQL.. Viene dos veces durante la instalación y yo checkd solo para unos..

 0
Author: Nishant,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-23 07:37:45

Prueba esto:

En la ventana del asistente para Restaurar DB, vaya a la pestaña Archivos, Desmarque la casilla de verificación "Reubicar todos los archivos a la carpeta" y luego cambie el destino de restauración de C: a otra unidad. A continuación, proceder con el proceso de restauración regular. Se restaurará con éxito.

 0
Author: Raja Sekhar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-11 12:38:34

Tuve el mismo problema pero utilicé sql server 2008 r2, debe comprobar en las opciones y verificar las rutas donde sql va a guardar los archivos .y mdf .ldf debe seleccionar la ruta de su instalación de sql Server. He resuelto mi problema con esto, espero que te ayude.

 0
Author: Edgar Castillo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-22 22:41:40

Tuve este problema, inicié sesión como administrador y se solucionó el problema.

 0
Author: Rob Smith,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-17 13:19:11

Ir a C:\Program Archivos \ Microsoft SQL Server \ MSSQL12.MSSQLSERVER\MSSQL \ DATA \ y haga clic en permitir acceso cuando aparezca una nueva ventana

 -1
Author: Azeezat Raheem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-30 11:59:16

Luego intente moverlo a una subcarpeta bajo la C:, pero verifique que el usuario tenga todos los derechos sobre la carpeta que usa.

 -2
Author: sqlKob,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-12 06:22:04