tipos sentencia seguridad script restauracion respaldo recuperacion para hacer datos crear copia como sql-server backup database-table

sql-server - seguridad - sentencia sql para crear backup



Copia de seguridad a nivel de tabla (16)

¿Cómo tomar una copia de seguridad a nivel de tabla (volcado) en MS SQL Server 2005/2008?


Cada modelo de recuperación le permite hacer una copia de seguridad de una base de datos de SQL Server total o parcial o de archivos individuales o grupos de archivos de la base de datos. Las copias de seguridad a nivel de tabla no se pueden crear .

De: technet.microsoft.com/en-us/library/ms175477.aspx



Cree un nuevo grupo de archivos, ponga esta tabla en él y haga una copia de seguridad de este grupo de archivos únicamente.


Esto es similar a la solución de qntmfred , pero usando un volcado de tabla directo. Esta opción es un poco más rápida (ver documentos BCP ):

exportar:

bcp "[MyDatabase].dbo.Customer " out "Customer.bcp" -N -S localhost -T -E

importar:

bcp [MyDatabase].dbo.Customer in "Customer.bcp" -N -S localhost -T -E -b 10000


Estos son los pasos que necesita. El paso 5 es importante si quieres los datos. El paso 2 es donde puedes seleccionar tablas individuales.

La versión de la pila EDIT no es del todo legible ... aquí hay una imagen en tamaño completo http://i.imgur.com/y6ZCL.jpg


Estoy usando la utilidad de copia masiva para lograr copias de seguridad a nivel de tabla

exportar:

bcp.exe "select * from [MyDatabase].dbo.Customer " queryout "Customer.bcp" -N -S localhost -T -E

importar:

bcp.exe [MyDatabase].dbo.Customer in "Customer.bcp" -N -S localhost -T -E -b 10000

como puede ver, puede exportar en función de cualquier consulta, por lo que incluso puede hacer copias de seguridad incrementales con esto. Además, es programable en lugar de los otros métodos mencionados aquí que usan SSMS.


Handy Backup hace automáticamente archivos de volcado de MS SQL Server, incluido MSSQL 2005/2008. Estos volcados son archivos binarios a nivel de tabla, que contienen copias exactas del contenido de la base de datos particular.

Para realizar un volcado sencillo con Handy Backup, siga las siguientes instrucciones:

  1. Instale Handy Backup y cree una nueva tarea de respaldo.
  2. Seleccione "MSSQL" en un Paso 2 como fuente de datos. En una nueva ventana, marque una base de datos para hacer una copia de seguridad.
  3. Seleccione entre diferentes destinos donde almacenará sus copias de seguridad.
  4. En un Paso 4, seleccione la opción de copia de seguridad "Completa". Configure un sello de tiempo si lo necesita.
  5. Omita un Paso 5 a menos que necesite comprimir o encriptar un archivo de volcado resultante.
  6. En un Paso 6, configure un cronograma para que una tarea cree volcados periódicamente (de lo contrario, ejecute una tarea manualmente).
  7. De nuevo, omita un Paso 7 y asigne un nombre a su tarea en el Paso 8. ¡Ha terminado la tarea!

Ahora ejecute su nueva tarea haciendo clic en un icono antes de su nombre o espere la hora programada. Handy Backup creará automáticamente un volcado para su base de datos. A continuación, abra su destino de copia de seguridad. Encontrará una carpeta (o un par de carpetas) con sus copias de seguridad MS SQL. Cualquiera de estas carpetas contendrá un archivo de volcado a nivel de tabla, que consta de algunas tablas binarias y configuraciones comprimidas en un único archivo ZIP.

Otras bases de datos

Handy Backup puede guardar volcados para MySQL, MariaDB, PostgreSQL, Oracle, IBM DB2, Lotus Notes y cualquier base de datos SQL genérica que tenga un controlador ODBC. Algunas de estas bases de datos requieren pasos adicionales para establecer conexiones entre DBMS y Handy Backup.

Las herramientas descritas anteriormente a menudo vuelcan bases de datos SQL como secuencias de comandos SQL a nivel de tabla, preparando estos archivos para cualquier modificación manual que necesite.


No sé si coincidirá con el problema que se describe aquí. ¡Tuve que tomar la copia de seguridad incremental de una tabla! (Solo se deben copiar los nuevos datos insertados). Solía ​​diseñar un paquete DTS donde.

  1. Tomo nuevos registros (sobre la base de una columna de "estado") y transfiero los datos a destino. (A través de ''Transformar tarea de datos'')

  2. Luego acabo de actualizar la columna ''estado''. (A través de ''Ejecutar tarea SQL'')

Tuve que arreglar el ''flujo de trabajo'' correctamente.


Probablemente tenga dos opciones, ya que SQL Server no admite copias de seguridad de tablas. Ambos comenzarían escribiendo la creación de la tabla. Luego puede usar la tabla de guiones - INSERTAR la opción que generará una gran cantidad de instrucciones de inserción, o puede usar los servicios de integración (DTS con 2000) o similares para exportar los datos como CSV o similar.


Puede ejecutar la consulta siguiente para tomar una copia de seguridad de la tabla existente que crearía una nueva tabla con la estructura existente de la tabla anterior junto con los datos.

select * into newtablename from oldtablename

Para copiar solo la estructura de la tabla, use la consulta siguiente.

select * into newtablename from oldtablename where 1 = 2


Puede usar el asistente gratuito de publicación de bases de datos de Microsoft para generar archivos de texto con scripts SQL (CREATE TABLE e INSERT INTO).

Puede crear dicho archivo para una sola tabla, y puede "restaurar" la tabla completa incluyendo los datos simplemente ejecutando el script SQL.


Si está buscando algo como DUMP de MySQL, entonces buenas noticias: SQL Server 2008 Management Studio agregó esa capacidad.

En SSMS, simplemente haga clic derecho en el DB en cuestión y seleccione Tareas> Generar secuencias de comandos . Luego, en la segunda página del asistente de opciones, asegúrese de seleccionar que también desea que los datos estén encriptados , y generará lo que equivale a un archivo DUMP para usted.


Si está buscando restaurar una tabla después de que alguien borre las filas por error, tal vez pueda echar un vistazo a las instantáneas de la base de datos. Puede restaurar la tabla con bastante facilidad (o un subconjunto de las filas) de la instantánea. Ver http://msdn.microsoft.com/en-us/library/ms175158.aspx


Una aplicación gratuita llamada SqlTableZip hará el trabajo. Básicamente, escribe cualquier consulta (que, por supuesto, también puede ser [select * from table]) y la aplicación crea un archivo comprimido con todos los datos, que se pueden restaurar más adelante.

Enlace: http://www.doccolabs.com/products_sqltablezip.html


Use el Asistente de importación y exportación de SQL Server.

  1. ssms
  2. Abra el motor de base de datos
  3. Alt. haga clic en la base de datos que contiene la tabla para exportar
  4. Seleccione "Tareas"
  5. Seleccione "Exportar datos ..."
  6. Sigue al mago

No puede usar el comando BACKUP DATABASE para realizar una copia de seguridad de una sola tabla, a menos que, por supuesto, la tabla en cuestión esté asignada a su propio FILEGROUP .

Lo que puede hacer, como ha sugerido, es exportar los datos de la tabla a un archivo CSV. Ahora, para obtener la definición de su tabla, puede ''Script out'' el script CREATE TABLE .

Puede hacerlo en SQL Server Management Studio, por:

clic derecho en Base de datos> Tareas> Generar secuencia de comandos

A continuación, puede seleccionar la tabla que desea secuenciar y también elegir incluir cualquier objeto asociado, como restricciones e índices.

para obtener los DATA junto con solo el schema , debe elegir Advanced en la pestaña de opciones de scripting configurada, y en la sección GENERAL establecer los Types of data to script seleccionar Schema and Data

Espero que esto ayude, pero siéntete libre de contactarme directamente si necesitas más ayuda.