[Guía]Algunos Scripts para SQL

Ver el tema anterior Ver el tema siguiente Ir abajo

[Guía]Algunos Scripts para SQL

Mensaje por Ingesdel el Mar Ago 14, 2012 10:46 am

Hola gente, estoy de vuelta para volver a hacer aportes a la comunidad así que acá les dejo algunos Scripts para SQL que son de gran importancia para reparar o hacer algunos cambios en nuestra base de datos.

Bueno vamos a empezar con un Script que es muy útil para limpiar los logs de nuestra base de datos ya que estos provocan "Lag" en el servidor y es lo que menos queremos... Este paso se puede hacer sin necesidad de detener el servidor y es recomendado hacerlo una vez a la semana.

1er paso:

Vamos al Administrador Corporativo (Enterprise manager) cuando inicia, vamos a bases de datos y buscamos la base "MuOnline" click derecho -> todas las tareas -> Reducir las bases de datos (Tambien puede aparecer en ingles como "Shrink database" le hacemos click y aparecerá una ventana, sin tocar absolutamente nada le damos a aceptar (ok) y aparecerá un mensaje indicando que la base de datos a sido reducida correctamente.

2do paso:

Ahora abrimos el Analizador de Consultas (Query Analizer) pedirà iniciar la sesion del usuario de sql "sa" por defecto, colocamos el pass y entramos.

Arriba en la pestaña de bases de datos buscamos "MuOnline" y en la sección de consulta colocamos el siguiente codigo:

Código:
BACKUP LOG MuOnline WITH TRUNCATE_ONLY

DBCC SHRINKDATABASE ( MuOnline , TRUNCATEONLY )

Le damos al botón > (parecido al play de un equipo de audio) corre la sentencia y listo, tenemos nuestras bases de datos reducidas.

Continuamos con otros scripts de gran utilidad:

Importante:

Si alguno de estos scripts de SQL no les funciona, deben ir a la base de datos que se menciona en la primer linea de cada script y buscar que la columna que estan modificando contenga el mismo nombre:

Ejemplo:

Código:
UPDATE MEMB_STAT
SET ConnectStat='0'
WHERE ConnectStat>0

Puede ser en tablas viejas:

Código:
UPDATE MEMB_STAT
SET Connect_Stat='0'
WHERE Connect_Stat>0

Incorrecta cantidad de Usuarios En Linea (debe estar el server offline)

Código:
UPDATE MEMB_STAT
SET ConnectStat='0'
WHERE ConnectStat>0

Actualizar Razas (Suele pasar en algunos servidores que las quest no estan bien configuradas y los jugadores quedan en ninguna raza o en algún valor de raza inexistente, como también puede que deseen en algun servidor S3 en adelante volver a todos los que se hicieron 3er evolución a 2da)

Código:
UPDATE Character
SET Class='49'
WHERE Class=50

Arreglar dinero negativo :

Código:
UPDATE Character
SET Money='2000000000'
WHERE Money<-1

Dinero al comenzar (en SET Money=('colocan el valor deseado')) :

Código:
UPDATE Character
SET Money=('10000000')
WHERE Money<1

Auto Stats Fix (Para servidores con variable smallint (soporta 32767)) :


Código:
UPDATE Character
SET Strength='32766'
WHERE Strength<1

UPDATE Character
SET Dexterity='32766'
WHERE Dexterity<1

UPDATE Character
SET Vitality='32766'
WHERE Vitality<1

UPDATE Character
SET Energy='32766'
WHERE Energy<1
Para corregir a los Dark Lords

UPDATE Character
SET Strength='32766'
WHERE Strength<1

UPDATE Character
SET Dexterity='32766'
WHERE Dexterity<1

UPDATE Character
SET Vitality='32766'
WHERE Vitality<1

UPDATE Character
SET Energy='32766'
WHERE Energy<1

UPDATE Character
SET Leadership='32766'
WHERE Leadership<1

Auto Clear PK

Código:
UPDATE Character
SET PkLevel = ('0'), PkTime = ('0'), PkCount = ('0')
Where PkLevel>2

Fixear score negativo en Guilds (Famoso -99)

Código:
UPDATE Guild
SET G_Score=('0')
WHERE G_Score<-1

Borrar todos los resets (no usar como trabajo de sql)

Código:
UPDATE Character
SET Resets=('0')
WHERE Resets>0

Borrar todos los puntos a repartir

Código:
UPDATE Character
SET LevelUpPoints=('0')
WHERE LevelUpPoints>0

Limpiar baules

Código:
UPDATE warehouse
SET Items=('')

Limpiar inventarios:

Código:
UPDATE Character
SET Inventory=('')

Desbanear a todos

Código:
UPDATE Character
SET CtlCode=('0')
WHERE CtlCode=('1')

Borrar todos los gm's

Código:
UPDATE Character
SET CtlCode=('0')
WHERE CtlCode=('8')

el CtlCode también puede ser 32 u otras variables que dan atributos a jugadores "especiales".

Evolucionar a todos los personajes a la tercera evolución, sirve más para auto tercera Quest, si quieres ponerla como trabajo:

Nota: Sólo sirve para servidores Season 6:

Código:
UPDATE Character
SET Class = ('2')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 0 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('2')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 1 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('18')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 16 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('18')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 17 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('34')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 32 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('34')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 33 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('49')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 48 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('65')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 64 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('82')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 80 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('82')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 81 AND Memb_Stat.ConnectStat = 0 AND clevel>399

UPDATE Character
SET Class = ('97')
FROM Character inner join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
WHERE Class = 96 AND Memb_Stat.ConnectStat = 399


Créditos:

ARIES
ThunDeR
INNER
GameServers

Ingesdel
ROOT ADMIN

Masculino Mensajes : 120
Fecha de inscripción : 29/06/2011
Localización : Chile

Ver perfil de usuario

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.