Red de Respuestas Legales - Asesoría legal - ¿Cómo mantener la base de datos?

¿Cómo mantener la base de datos?

Mantenimiento diario de la base de datos (referencia)

El mantenimiento diario de la base de datos es una responsabilidad importante del administrador del sistema. Su contenido incluye principalmente las siguientes partes:

1. Copia de seguridad de los datos del sistema

El mecanismo de copia de seguridad y recuperación del sistema SYBASE garantiza la posibilidad de volver a adquirir datos cuando el sistema falla. SQL Server proporciona dos tipos diferentes de mecanismos de recuperación: uno es la recuperación que el sistema completa automáticamente. Esta medida se realiza automáticamente cada vez que se inicia el sistema, lo que garantiza que las transacciones completadas antes de que el sistema falle se escriban en el dispositivo de base de datos. se revierten; el otro tipo es la recuperación manual, que utiliza comandos DUMP y LOAD para realizar trabajos de copia de seguridad y recuperación manuales. Por lo tanto, realizar copias de seguridad periódicas de los registros de transacciones y las bases de datos es una tarea de mantenimiento diario muy importante.

1. Haga una copia de seguridad de la base de datos

Cada base de datos debe descargarse después de su creación para proporcionar un punto base de montaje. Después de eso, descargue según el período de tiempo programado. Por ejemplo, la base de datos se descarga todos los viernes. Para sistemas de bases de datos generales, se recomienda que el ciclo de descarga de la base de datos sea una vez por semana.

Además de descargar la base de datos según el período planificado, la base de datos también debe descargarse después de cada operación sin registros. Por ejemplo:

·Ejecute a la fuerza DUMP TRAN CON NO_LOG cada vez (porque el disco de la base de datos se está desbordando);

·Utilice sp_dboption cada vez para permitir seleccionar en/copia masiva para realizar una copia rápida. , O use el comando SELECT INTO para crear una tabla permanente, o use el comando WRITETEXT.

El comando para descargar la base de datos es:

DUMP DATABASE nombre_base_datos

TO dump_device

nombre_base_datos es el nombre de la base de datos que se va a descargar. descargado, dump_device es el nombre del dispositivo desmontado. Utilice el procedimiento del sistema sp_helpdevice para obtener información del dispositivo.

El siguiente comando se utiliza para descargar la base de datos my_db:

DUMP DATABASE my_db

TO db_bk_dev

2.

p>

Si el registro de transacciones se coloca en el mismo dispositivo que la base de datos, no se debe realizar una copia de seguridad del registro de transacciones por separado de la base de datos. Este es el caso de las bases de datos maestras y las bases de datos de usuarios de menos de 4 millones. Generalmente, la base de datos y los registros de un sistema de base de datos se colocan en diferentes dispositivos. Por lo tanto, puede utilizar el comando DUMP TRAN para realizar una copia de seguridad de los registros por separado.

El período de copia de seguridad de los registros de transacciones afecta directamente el grado de recuperación de datos, por lo que se recomienda realizar una copia de seguridad todos los días.

El formato del comando para hacer una copia de seguridad del registro de transacciones es:

DUMP TRANsaction nombre_base de datos

[TO dump_device]

[WITH TRUNCATE_ONLY| CON NO_LOG| CON NO_TRUNCATE]

Donde nombre_base de datos es el nombre de la base de datos de la transacción de la que se va a realizar la copia de seguridad, dispositivo_volcado es el nombre del dispositivo de copia de seguridad. Sólo cuando se incluye la cláusula CON TRUNCATE_ONLY o CON NO_LOG, se puede. realizar una copia de seguridad en el dispositivo.

Nota: Si siempre usa DUMP DATEBASE (copia de seguridad de la base de datos y sus registros) en lugar de DUMP TRAN, el registro de transacciones no se actualizará y será muy grande.

Para bases de datos maestras y bases de datos pequeñas, se debe ejecutar el comando DUMP TRANsaction para actualizar el registro después de cada ejecución de DUMP DATEBASE.

El siguiente comando realiza una copia de seguridad del registro de transacciones de la base de datos db160 en el dispositivo de copia de seguridad:

DUMP TRANsaction db160

TO db_log_bk_dev

WITH TRUNCATE_ONLY

3. La interacción entre la base de datos de respaldo y su registro

No tiene sentido descargar el registro de transacciones antes de descargar la base de datos al menos una vez. La siguiente figura muestra la relación entre la base de datos de respaldo y sus registros

Si ocurre una falla no relacionada con el hardware a las 5:01 p.m. del martes, todo lo que se debe hacer es montar la cinta 5 (consulte la siguiente sección : Recuperación de datos), dado que se realizó la copia de seguridad de la cinta 5 a las 5:00 p. m., solo se perdieron los datos en el minuto entre la copia de seguridad y la carga.

Pero ¿qué pasa si vence a las 16:49 del martes? En este caso, se carga la cinta 1 (se descarga a las 5:00 p. m. del viernes). Luego, cargue las cintas 2, 3 y 4 en secuencia. De esta manera, el sistema quedará restablecido en el estado a las 10:00 am del martes, perdiéndose la mayor parte del trabajo del martes. Este ejemplo muestra la importancia de descargar transacciones con frecuencia.

2. Restaurar el sistema de base de datos en caso de falla del sistema.

Si el dispositivo donde se almacena la base de datos del usuario falla y la base de datos está dañada o es inaccesible, se realiza la última copia de seguridad de la base de datos y las siguientes. La copia de seguridad del registro de transacciones puede restaurar la base de datos. Suponiendo que el registro de transacciones actual existe en un dispositivo no dañado, vacíelo con el comando DUMP TRANsaction con la opción FROM NO_TRUNCATE.

Para restaurar la base de datos, siga estos pasos:

1. Si el registro existe en un dispositivo separado, use el comando DUMP TRANsaction con la opción NO_TRUNCATE para descargar el usuario dañado o inaccesible. registro de transacciones de la base de datos.

2. Utilice la siguiente consulta para verificar el uso del dispositivo de la base de datos de asignación de dispositivos que ha sido destruida. Se debe asignar el mismo bloque de espacio para el mismo propósito.

La siguiente consulta muestra el uso del dispositivo y el tamaño asignado a la base de datos mydb:

SELECT segmap, size FROM sysusages

WHERE dbid =

(SELECT dbid FROM sysdatabases WHERE nombre = “mydb”)

3. "3" en la columna segmap representa la asignación de datos y "4" representa la asignación de registros. La columna de tamaño representa la cantidad de bloques de datos de 2K. Preste atención a las secciones Secuencia, Uso y Tamaño de esta información. Por ejemplo, la salida es:

segmapSize

--------------------------

310240// El tamaño real es: 20M

35120//El tamaño real es: 10M

45120//El tamaño real es: 10M

31024//El tamaño real es: 2M

42048//El tamaño real es: 4M

4. Utilice el comando DROP DATABASE para eliminar la base de datos en el dispositivo dañado. . Si el sistema informa un error, utilice la opción DROPDB del comando DBCC DBREPAIR.

5. Después de eliminar la base de datos, utilice sp_dropdevice para eliminar el dispositivo dañado.

6. Utilice DISK INIT para inicializar el nuevo dispositivo de base de datos.

7. Reconstruir la base de datos. Utilice el comando CREATE DATABASE para copiar todas las filas de la tabla sysusages anterior, incluido el primer dispositivo lógico.

Para el ejemplo anterior, el comando es:

CREAR BASE DE DATOS mydb

ON datadev1=20, datadev2=10

INICIAR SESIÓN logdev1= 10

8. Utilice el comando ALTER DATABASE para reconstruir las entradas restantes.

En este ejemplo, para asignar más espacio en datadev1, el comando es:

ALTER DATABASE mydb ON datadev1=2[página]

9. Utilice LOAD DATABASE para recargar la base de datos y. luego use LOAD TRAN para cargar el registro descargado previamente.

La sintaxis del comando LOAD DATABASE es:

LOAD DATABASE nombre_base de datos

DESDE dispositivo_volcado

La sintaxis del comando LOAD TRANsaction es :

LOAD TRANsaction nombre_base de datos

DESDE dump_device

El permiso predeterminado para volcar la base de datos y el registro de transacciones pertenece al propietario de la base de datos y se puede pasar a otros usuarios; el permiso para cargar la base de datos y el registro de transacciones. También es propiedad del propietario de la base de datos, pero no es transferible.

2. Generar tablas de información de usuarios y autorizar las tablas de información.

Otra tarea diaria del personal de mantenimiento del sistema es crear nuevas tablas de información para los usuarios y autorizarlas. Los métodos para crear tablas y autorizar tablas ya se han discutido. Aquí solo escribimos la sintaxis de comando relevante.

·El comando para crear una tabla es:

CREATE TABLE nombre_tabla

( tipo de datos column_1 [NULL | NOT NULL],

< | p>columna_2......

)

ir

ALTER TABLE nombre_tabla

AÑADIR CLAVE PRIMARIA (columna_lista)

ir

·El formato del comando para eliminar una tabla es:

DROP TABLE nombre_tabla

ir

·El El formato del comando para autorizar una tabla es:

GRANT

ON nombre_tabla TO nombre_usuario

go

·El formato del comando para revocar permisos es

REVOCAR

REVOCAR

p>

ON nombre_tabla DESDE nombre_usuario

ir

3. el estado operativo del sistema y manejar los errores del sistema de manera oportuna.

Otro elemento para los administradores del sistema el trabajo diario es monitorear el funcionamiento del sistema. Existen principalmente los siguientes aspectos:

1. Monitorear la información del usuario y proceso actual

Utilizar el proceso del sistema: sp_who

Nota: Este comando muestra toda la información del sistema actual Información de usuario registrado y proceso, la siguiente tabla muestra la información de un determinado sistema.

SpidStatusLoginamehostnameblkdbnamecmd

---------------------------------- - ---------------------------

1EjecutandoSascosysv0MasterSELECT

2DurmiendoNULL0MasterNETWORK HANDLE

3SleepingNULL0MasterDEADLOCK TUNE

4SleepingNULL0MasterMIRROR HANDLER

5SleepingNULL0MasterHOUSEKEEPER

6SleepingNULL0MasterCHECKPOINT SLEEP

Se muestra de izquierda a derecha: número de proceso, estado actual, registro de usuario nombre, nombre de host, número de bloques ocupados, nombre de la base de datos y comando actual.

Si se encuentra que el número total de procesos está cerca del número máximo de conexiones durante el monitoreo (consulte con el proceso del sistema: sp_configure "user conn"), los procesos inactivos o irrelevantes deben eliminarse para garantizar la normalidad. funcionamiento del sistema, además, podrá Monitorear a usuarios ilegales o usuarios que utilicen bases de datos que no estén dentro de su ámbito de uso;

2. Monitoree el espacio ocupado por el objetivo

Utilice el proceso del sistema: sp_spaceused

Descripción: este proceso muestra el número de filas y el número de datos. páginas y el número de páginas de datos en la base de datos actual, espacio ocupado por los objetivos o por todos los objetivos. La siguiente tabla es la información de una determinada tabla de registro de base de datos:

NameRow_totalreserveddataIndex_sizeunused

---------------------- ----------------------------------

SyslogsNo disponible32KB32KB0KBNo disponible

Los principales objetivos a monitorear diariamente son: base de datos de usuarios, tabla de registro de base de datos (syslogs) y tabla de datos originales de facturación, etc. Si se descubre que el espacio ocupado es demasiado grande, la tabla de registro se debe volcar para otros objetivos, se debe ampliar el espacio o se deben borrar los datos basura;

3. Monitorear las estadísticas de SQL Server

Utilizar el proceso del sistema: sp_monitor

Descripción: sp_monitor muestra las estadísticas históricas de SQL Server. La siguiente tabla es para un determinado. Estadísticas del sistema:

Last_runCurrent_runSeconds

-------------------------------- ----------------------------------

13 de mayo de 2000 13:27 13 de mayo de 2000 3 :01PM5678

CPU_busyIO_busyIdle

--------------------------------- ------- --------------------------

16(6)-0%0(0 )-0%5727( 5672)-99%

Paquetes_recibidosPaquetes_enviadosPaquetes_errores

------------------------ -------- ----------------------------------

21 (17)100(97)0( 0)

Total_readTotal_writeTotal_errorsConexiones

------------------------ -------- -----------------------

785(366)311(113)0(0) 3(2)

La tabla anterior proporciona la última hora, la hora actual, el intervalo de segundos, el uso de la CPU, el uso de IO, el estado de envío y recepción de paquetes, el estado de lectura y escritura del sistema y otra información de las estadísticas de ejecución actuales. del sistema.

4. Garantizar la seguridad de los datos del sistema y cambiar las contraseñas de los usuarios periódicamente;

Para garantizar la seguridad de los datos del sistema, los administradores del sistema deben implementar una serie de medidas de seguridad basadas sobre la situación real del sistema. Entre ellas, cambiar periódicamente las contraseñas de los usuarios es una medida común y muy eficaz.

El cambio de la contraseña del usuario se logra llamando al procedimiento del sistema sp_password. La sintaxis de Sp_password es:

sp_password caller_password,new_password [,loginame]

Donde caller_password es la contraseña de inicio de sesión (contraseña anterior), nueva_contraseña es la nueva contraseña y logine es el inicio de sesión. nombre.

Búsqueda en Baidu: Mantenimiento diario de la base de datos (referencia)

Artículos relacionados

El establecimiento y uso de procedimientos almacenados de Sybase

SYBASE dbcc

Un arma para que las empresas de telecomunicaciones compitan: almacenamiento de datos y minería de datos

Instalación y copia de seguridad de unidades de cinta en SCOUNIX

Experiencia en escritura de procedimientos almacenados (procedimiento almacenado) y medidas de optimización

Detalles de los registros de la base de datos SYBASE

Comparación de sistemas de bases de datos comunes: SYBASE y SQL SERVER

Instalación de SYBASE ASE PARA LINUX y conexión perl a SYBASE

Aplicación de base de datos Sybase (1)

Instalación de Sybase ASE

Si le resulta útil, recuerde aceptarlo como una respuesta satisfactoria, ¡gracias! ¡Te deseo una vida feliz!

vaela