¿Cómo sería vistas & amp; ¿Procs que hacen referencia a otro db causa que el registro crezca?

StackOverflow https://stackoverflow.com/questions/213134

  •  03-07-2019
  •  | 
  •  

Pregunta

Tengo 2 bases de datos en un servidor; Llamemos a db A y B. La base de datos A es de aproximadamente 11 GB, la base de datos B es muy pequeña (155 mb). La base de datos B tiene algunas vistas y procesos que constantemente acceden y actualizan los datos en la base de datos A.

Lo interesante es que el registro para la base de datos B crece rápidamente a enormes tamaños, creo que creció a aproximadamente 12 GB en menos de una semana. La base de datos A no crece tan grande tan rápido.

¿Qué podría estar causando que mi registro crezca tanto? ¿Algo así sucede cuando seleccionas datos de otra base de datos, eso haría que mi registro crezca de esa manera?

Sé que cuando haces algo similar contra una base de datos en un servidor diferente, todos los datos se transfieren a la base de datos de llamadas antes de que se unan y seleccionen ... Puedo ver que esto causa un crecimiento de registros, ¿podría estar ocurriendo lo mismo en ¿El mismo servidor?

Edición de SQL2000 SP4 STD
Modelo de recuperación completa

Gracias de antemano, John

Por cierto, me doy cuenta de que cambiar mi modelo de recuperación a Simple puede ayudar, pero me gustaría saber por qué sucede esto primero.

¿Fue útil?

Solución

No puedo imaginar por qué una simple instrucción SELECT agregaría algo al registro de transacciones, pero no tengo mucha experiencia con los servidores vinculados, por lo que no puedo decir con seguridad qué podría estar sucediendo detrás de la escena .

Sin embargo, usted dice que "Base de datos B tiene algunas vistas y procesos que están constantemente accediendo y actualizando datos en la base de datos A.", por lo tanto, aunque los datos subyacentes existen en la Base de datos A, porque su nueva aplicación se conecta a la base de datos B y usa sus objetos, parece razonable que esas operaciones se registren en el registro de transacciones de B.

Pero eso es solo una conjetura de mi parte. ¿Por qué no inspecciona directamente el registro de transacciones y ve si lo que contiene parece razonable? RedGate tiene un explorador de registro gratuito que funciona con SQL 2000 (consulte http: // www .red-gate.com / products / SQL_Log_Rescue / index.htm ); Solo lo he usado una vez antes, pero parecía funcionar bien y realmente salvó mi tocino en esa instancia en particular.

Admito que tengo curiosidad por los detalles, pero en su situación, me sentiría tentado a suprimir mi curiosidad y solo tratar con el archivo de registro. Después de todo, esto es solo temporal, y si el crecimiento del registro es un artefacto de los servidores vinculados, debería solucionarse solo una vez que finalice la nueva aplicación y retire la Base de datos A.

También, Godeke hizo un buen punto sobre las copias de seguridad. Si su archivo de registro está creciendo demasiado, entonces haga una copia de seguridad más a menudo. Hacer una copia de seguridad trunca el registro, pero solo internamente; es decir, el porcentaje del archivo de registro utilizado se reducirá, pero el tamaño real del archivo en el disco no cambiará hasta que use DBCC SHRINKFILE para hacerlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top