Rubén Ortiz » Windows http://www.rubenortiz.es Blog personal de Rubén Ortiz Mon, 16 Jan 2012 08:09:38 +0000 en hourly 1 http://wordpress.org/?v= Windows 2003 – No tiene acceso al dispositivohttp://www.rubenortiz.es/2011/09/29/windows-2003-no-tiene-acceso-al-dispositivo/ http://www.rubenortiz.es/2011/09/29/windows-2003-no-tiene-acceso-al-dispositivo/#comments Thu, 29 Sep 2011 06:20:23 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=4797 Intentamos ejecutar un archivo y nos devuelve este error:

“windows no tiene acceso al dispositivo, ruta de acceso o archivo especificado”

Haz click derecho, haz click sobre propiedades y haz click sobre el boton desbloquear al lado de donde indica: “Este archivo provino de otro equipo y puede que se bloquee para ayudar a proteger este equipo”

]]>
http://www.rubenortiz.es/2011/09/29/windows-2003-no-tiene-acceso-al-dispositivo/feed/ 0
Windows 2003 – montar volúmen iSCSIhttp://www.rubenortiz.es/2011/01/07/windows-2003-montar-volumen-iscsi/ http://www.rubenortiz.es/2011/01/07/windows-2003-montar-volumen-iscsi/#comments Fri, 07 Jan 2011 12:35:06 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=3870 Recientemente, explicamos como montar un volúmen iSCSI con Openfiler. Ahora veremos todo lo necesario para montar este volúmen en Windows 2003 Server.

1. Descargar Microsoft Initiator

Descargamos la versión que necesitemos desde aquí

2. Instalamos

initiator_1

3. Añadimos volúmen

Primero, hacemos click en el icono de “Microsoft iSCSI initiator” y vamos a la pestaña “Discovery”, y clickamos en “Add portal”. Introducimos la IP y dejamos el puerto por defecto.

initiator_2

3. Configuramos el Target

Navegamos ahora hasta la pestaña Targets, seleccionamos el añadido y hacemos clik en “Log ON”. Seleccionamos el primer checkbox, para activar el target en el reinicio de la máquina, y clickamos en ok.

initiator_3

Ahora sólo faltaría ir hasta Disk Management y dar forma a nuestro nuevo volúmen.

]]>
http://www.rubenortiz.es/2011/01/07/windows-2003-montar-volumen-iscsi/feed/ 0
SQL Server – Exclusive access could not be obtained because the database is in usehttp://www.rubenortiz.es/2010/09/07/sql-server-exclusive-access-could-not-be-obtained-because-the-database-is-in-use/ http://www.rubenortiz.es/2010/09/07/sql-server-exclusive-access-could-not-be-obtained-because-the-database-is-in-use/#comments Tue, 07 Sep 2010 08:01:01 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=3548 sql_server_2000

Esto pasa por ejemplo cuando queremos restaurar un backup de la base de datos pero esta se encuentra en uso. Hay muchas formas de solucionarlo…¿qué os parece esta?

1. Ejecutamos el código en “New Query”

1
2
3
4
use master
go
alter database <dbname> set single_user with rollback immediate
alter database <dbname> set multi_user

2. Restaurar BBDD

]]>
http://www.rubenortiz.es/2010/09/07/sql-server-exclusive-access-could-not-be-obtained-because-the-database-is-in-use/feed/ 0
SQL Server 2000 – Borrar backupshttp://www.rubenortiz.es/2010/02/28/sql-server-2000-borrar-backups/ http://www.rubenortiz.es/2010/02/28/sql-server-2000-borrar-backups/#comments Sun, 28 Feb 2010 18:55:12 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2887 sql_server_2000

Me ha pasado más de una vez, que el MaintenancePlan de SQL 2000, funciona correctamente menos en el punto en que debe borrar los archivos. Así que he encontrado un buen script de ayuda en mssqltips.com, que elimina automáticamente los archivos de una ruta física del disco duro y sus subcarpetas teniendo en cuenta un valor, el día de antiguedad que deseemos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
iDaysOld = 7
strPath = "C:\BACKUP"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(strPath)
Set colSubfolders = objFolder.Subfolders
Set colFiles = objFolder.Files
For Each objFile in colFiles
   If objFile.DateLastModified < (Date() - iDaysOld) Then
       MsgBox "Dir: " & objFolder.Name & vbCrLf & "File: " & objFile.Name
       'objFile.Delete
   End If
Next
For Each objSubfolder in colSubfolders
   Set colFiles = objSubfolder.Files
   For Each objFile in colFiles
       If objFile.DateLastModified < (Date() - iDaysOld) Then
           MsgBox "Dir: " & objSubfolder.Name & vbCrLf & "File: " & objFile.Name
           'objFile.Delete
       End If
   Next
Next

Links
http://www.mssqltips.com/tip.asp?tip=1324

]]>
http://www.rubenortiz.es/2010/02/28/sql-server-2000-borrar-backups/feed/ 1
IIS – Conocer versión de IIS instaladohttp://www.rubenortiz.es/2009/11/27/iis-conocer-version-de-iis-instalado/ http://www.rubenortiz.es/2009/11/27/iis-conocer-version-de-iis-instalado/#comments Fri, 27 Nov 2009 12:02:23 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2672 Abrimos registro y vamos hasta esta clave para ver la versión

1
2
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
Services\W3SVC \Parameters\MajorVersion
]]>
http://www.rubenortiz.es/2009/11/27/iis-conocer-version-de-iis-instalado/feed/ 0
SQL 2005 Mirroringhttp://www.rubenortiz.es/2009/11/20/sql-2005-mirroring/ http://www.rubenortiz.es/2009/11/20/sql-2005-mirroring/#comments Fri, 20 Nov 2009 12:38:21 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2637 sqlserverLOGO

Este artículo se referirá a la implementación de mirroring para SQL SERVER 2005. El foco es la tolerancia a fallos, no la alta disponibilidad. Para este artículo, nos basamos en un ejemplo sobre 2 servidores SQL 2005.

Entorno: tenemos un servidor SQL SERVER 2005 al cual queremos dotar de tolerancia a fallos sin failover automático(para el failover automático, entraría en juego un tercer servidor (witness)). Así pues tenemos dos “instancias”, principal y mirror.

Hacemos un backup completo de la base de datos a replicar. Movemos el backup al mirror y restauramos la base de datos:

  • RecoveryModel -> FULL
  • RESTORE WITH NORECOVERY (en Options)
  • Restaurar con el mismo tipo de cotejamiento

Una vez restaurada, podemos ir al principal y iniciar la configuración del Mirror. Vamos a Databases, seleccionamos la base de datos en cuestión, botón derecho y clickamos “Mirror”. Nos aparece una segunda ventana, clickamos “Configure Security”. Nos aparece un Wizard que, básicamente, nos pide las credenciales necesarias para poder conectarnos a los dos SQL SERVER, el Principal y el Mirror. Decimos que no, a la opción de “Witnees”, en español, testigo.

Si todo ha ido bien, sólo nos falta iniciar el mirroring entre ambos servidores. Clickamos “Start Mirroring”. El mensaje que nos muestre en “Status” ha de ser, al poco de unos minutos, “Synchronized: the databases are fully synchronized”.

Veremos que en el servidor de mirror, nos aparece la base de datos pero no es operativa, si intentamos ver sus propiedades nos aparecerá un error. Es normal. Volverá a pasar a modo normal cuando acabemos en algún punto el mirroring.

Monitorización

Es recomendable monitorizar en ambos el tiempo de CPU y añadir algunos Perf Counters según el rol:

Perfmon Counters

  • Bytes Received/sec: El número de bytes recibidos del otro servidor, por segundo
  • Bytes Sent/sec: El número de bytes enviados al otro servidor, por segundo
  • Log Bytes Received/sec: El número de bytes de log recibidos del principal, por segundo
  • Log Bytes Sent/sec: El número de bytes de log enviados al mirror, por segundo
  • Log Send Queue KB: El número de kilobytes de log que no han sido enviados al mirror
  • Pages Sent/sec: El número de páginas de log transaccionales por segundo
  • Receives/sec: El número de mensajes de mirroring recibidos por segundo
  • Redo Bytes/sec: The number of bytes of log rolled forwards per second on the mirror
  • Redo Queue KB: El número de bytes  de log transaccional que permanecen en cola para ser aplicados en el mirror
  • Send/Receive: Ack Time
  • Sends/sec: Número de mensajes de mirroring enviados por segundo
  • Transaction Delay: El retraso mientras el mirror intenta hacer un commit de la transacción

Transaction Delay es uno de los contadores a monitorizar, nos muestra cuanto tardan las transacciones en ser “comprometidas” (to be committed). Si este contador crece, puede haber un problema en la red o en el espejo. Podría llegar a haber una degradación en el servicio que afectase a los usuarios del principal.

Otro contador a monitorizar en el principal, es el Log Send Queue KB, que muestra cuanto log no ha sido enviado al espejo. Este contador puede aumentar fácilmente, en casos especiales como una reconstrucción de un índice (un montón de tráfico de log en un corto período de tiempo). Si este valor aumenta demasiado puede suponer un problema en el caso de el principal sufriese un problema grave, ya que, muchas transacciones no se habrían realizado en el espejo.

Desde la perspectiva del mirror, el Redo Queue KB es el contador principal. Muestra cuantos KB han sido recibidos en el mirror pero no aplicados todavía en la base de datos. Es fácil deducir los problemas resultantes de esto. Este contador es importante ya que nos muestra cuanto va por detrás el espejo del principal.

Vistas

  • sys.database_mirroring
  • sys.database_mirroring_endpoints
  • sys.database_mirroring_witnesses
  • sys.dm_db_mirroring_connections

database_mirroring contiene información sobre todos los espejos configurados y el estado actual, dm_db_mirroring_connections tiene información sobre el tráfico experimentado por el principal-mirror.

Links

http://www.jimmcleod.net
http://technet.microsoft.com/
http://www.microsoft.com
http://technet.microsoft.com/
http://www.improve.dk/blog/2008/03/23/sql-server-mirroring-a-practical-approach

]]>
http://www.rubenortiz.es/2009/11/20/sql-2005-mirroring/feed/ 0
SQL SERVER – SELECT TOPhttp://www.rubenortiz.es/2009/11/17/sql-server-select-top/ http://www.rubenortiz.es/2009/11/17/sql-server-select-top/#comments Tue, 17 Nov 2009 11:35:38 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2621 sql_server_2000

Query que saca los últimos 20 registros

1
2
SET ROWCOUNT 0
SELECT TOP 20 * FROM SMSRecibidos2 ORDER BY idSMSr DESC
]]>
http://www.rubenortiz.es/2009/11/17/sql-server-select-top/feed/ 1
SQL SERVER – Duplicar una tablahttp://www.rubenortiz.es/2009/11/16/sql-server-duplicar-una-tabla/ http://www.rubenortiz.es/2009/11/16/sql-server-duplicar-una-tabla/#comments Mon, 16 Nov 2009 15:59:46 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2615 sql_server_2000

Para duplicar una tabla, podemos hacer varias cosas, copiar sólo la estructura:

1
SELECT * Into DestinationTableName From SourceTableName Where 1 = 2

porque puede ser útil para casos X, o bien hacer un duplicado exacto de la misma:

1
SELECT * INTO MyNewTable FROM MyTable

con la salvedad de que, no se copiarán las constraints o índices.

]]>
http://www.rubenortiz.es/2009/11/16/sql-server-duplicar-una-tabla/feed/ 3
SQL Server 2005 – Cambiar Puertohttp://www.rubenortiz.es/2009/10/05/sql-server-2005-cambiar-puerto/ http://www.rubenortiz.es/2009/10/05/sql-server-2005-cambiar-puerto/#comments Mon, 05 Oct 2009 10:45:44 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=2533 Clickamos en Inicio> Todos los programas> Microsoft SQL Server 2005. Vamos hasta Herramientas de configuración> SQL Server Configuration Manager

Una vez abierta la consola, clickamos en SQL SERVER 2005 Network Configuration > Protocols for MSSQLSERVER. Vamos a la pestaña IP Addresses, y allí veremos el puerto de SQL SERVER.

Links

]]>
http://www.rubenortiz.es/2009/10/05/sql-server-2005-cambiar-puerto/feed/ 0
SQL SERVER – Conocer la versión instaladahttp://www.rubenortiz.es/2009/10/01/sql-server-conocer-la-version-instalada/ http://www.rubenortiz.es/2009/10/01/sql-server-conocer-la-version-instalada/#comments Thu, 01 Oct 2009 15:41:45 +0000 Rubén Ortiz http://www.rubenortiz.es/?p=1357 sql_server_2000

Hay veces que dudamos si tenemos instalado un Service Pack de SQL Server, y es probable que no nos acordemos. Hay dos formas de encontrar la versión actual de SQL Server:

1. Botón derecho sobre la instancia de SQL SERVER y hacemos click en “Propiedades”. Nos mostrará un recuadro donde podremos leer “Product Version”.
2. Ejecutar la sentencia SELECT @@VERSION. El output nos mostrará la versión actual:

1
2
3
4
Microsoft SQL Server 2000 - 8.00.760 (Intel X86)
Dec 17 2002 14:22:05
Copyright (c) 1988-2003 Microsoft Corporation
Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 2)

Links
http://www.mssqltips.com/tip.asp?tip=1140

]]>
http://www.rubenortiz.es/2009/10/01/sql-server-conocer-la-version-instalada/feed/ 0