Desinstalación manual de SQL Server

Si el método habitual de desinstalación desde el Panel de control resulta imposible, revisamos los registros del desinstalador y seguimos sin poder quitarlo… como último recurso podemos «extirpar»:

  1. Desinstalar todos los componentes desde el panel de control, los auxiliares que tiene que ver con SQL, todos los que podamos, aunque nos pregunte que existen dependencias…
  2. Realizar copia de seguridad del registro.
  3. Borrar las siguientes claves:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer

  4. Borrar las referencias a SQL server dentro de la clave:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  5. Lo mismo para eliminar los servicios: browser, agente, instancias…
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
  6. Renombra las carpetas de instalación:
    C:\Program Files\Microsoft SQL Server
 

Tamaño de Base de datos y log en SQL Server

Desde las bases de datos del sistema podemos extraer todo tipo de información, para localizar dentro de una BBDD de una instancia concreta de SQL podemos extraer con una consulta la información de los tamaños que ocupan:

with mf
as
(
    select database_id, type, size * 8.0 / 1024 size
    from sys.master_files
)
select 
    name, db.is_auto_shrink_on, 
    (select sum(size) from mf where type = 0 and mf.database_id = db.database_id) DatosMB,
    (select sum(size) from mf where type = 1 and mf.database_id = db.database_id) LogMB
from sys.databases db
TIP: debug Linq SQL

TIP: debug Linq SQL

En ocasiones podemos encontrar sentencias complejas o sin errores aparentes, otra forma de intentar buscar soluciones es mostrar la sentencial SQL generada por Entity Framework. Tan solo debemos habilitar el log, mostrandolo en en panel Output de nuestro Visual Studio por ejemplo:

                using (ModeloEntities entidad = new ModeloEntities ())
                {

                    entidad.Database.Log = s => System.Diagnostics.Debug.WriteLine(s);
                    var resultado = (nuestraConsultaLINQ)

                }

NOTA: puedes recupera la ventana de salida con CTRL + ALT + O

Actualizar modelo .edmx con los cambios de la base de datos

La realización de cambios en la base de datos debe reflejarse dentro del modelo generado en Visual Studio. Desde un cambio mínimo, por ejemplo un campo de una tabla determinada pasa a admitir valores nulos, a cualquier otro complejo de adición/modificación/eliminación de tablas, referencias, triggers, procedimientos, relaciones…

1.- Abrimos nuestro archivo edmx con el editor predeterminado de Visual Studio: ADO.NET Entity Data Model Designer y pulsamos con el botón derecho sobre una zona libre en la opción «Udate Model from Database»

2.- Una vez que tenemos nuestro modelo reflejado, actualizamos el fichero con extensión «IntranetModel.TT» pulsando con el botón derecho sobre ellos y seleccionado «Run custom tool»

3.- Lanzamos «Run custom tool» sobre el fichero «IntranetModel.context.TT»

En el caso de haber cambiado el namespace o el nombre del proyecto, deberemos renombrarlos de nuevo en el archivo CS correspondiente del context de la clase. Tambien es posible realizar cambios parciales en partes concretar del modelado desde «Model browser«.

NOTA 1: Si a pesar de ello, no se reflejan los cambios, podemos eliminar ambos ficheros y volver a añadir «Add code generation item» seleccionando la versión correspondiente de «EF 6.x DbContext Generator»

NOTA 2: En ocasiones al actualizar un tipo de dato, es posible que no se refleje correctamente en el modelo EDMX, por ejemplo, el paso de un campo de string a bintint (int64). Revise manualmente los posibles cambios y vuelve a realizar el proceso.

Firebird: conexión fallida

Todavía hay aplicaciones que necesitan interoperabilidad, con bases de datos de Firebird, desde herramientas de Office u otros orígenes de datos; puede realizarse desde ODBC (Open DataBase Connectivity), debemos asegurarnos si la aplicación es de 32 o 64 bits, en ambos casos es posible instalar el driver desde la página oficial, es posible tener los dos instalados sin problema. Si ya disponemos de una versión podemos aprovechar para actualizarla y forzar la instalación de la que nos falte:

Desde línea de comandos y el directorio de instalación de la versión, por ejemplo para la versión de 32 bits:

instclient.exe install gds32
instclient.exe install fbclient

Estos comando copiaran y registraran las librerías FBLCIENT.DLL y GDS32.DLL en la carpeta C:\Windows\System32 para 32 bits y c:\Windows\SysWOW64 para 64 bits según cada caso

Igualmente es posible añadir el registro de Windows desde el mismo directorio mediante el comando:

instreg install

Para determinar la versión de la base de datos mediante el comando, se muestra On Disk Structure (ODS):

gstat.exe -h midatabase.gdb
ODSVersión
10.0Firebird 1.0
10.1Firebird 1.5
11.0Firebird 2.0
11.1Firebird 2.1
11.2Firebird 2.5

ACTUALIZADO: si el cliente necesita tener instaladas las versiones de 32 y 64 al mismo tiempo, para un servidor se puede configurar un puerto diferente haciendo una instalación manual. Para una estación cliente se puede instalar la versión de ejecutable «Classic Server» en lugar de «Super Server» lo que permitirá en la configuración posterior «Ejecutar como una aplicación» para no tener siempre el servicio iniciado y activado la casilla de «¿Copiar librería cliente como GDS32.DLL para soporte de aplicaciones antiguas?»

firebird_gds32_classic_01 sobre 2016
firebird_gds32_classic_02 sobre 2016