Article ID: 5573, created on Aug 19, 2009, last review on Aug 12, 2014

  • Applies to:
  • Plesk for Windows

Resolución

Nota: La realización de una actualización inmediata de MSDE es el procedimiento de actualización recomendado, en vez de realizar una actualización en paralelo tal y como se describe en este artículo.

Para actualizar MSDE a SQL Server 2005 Express si no puede o no desea realizar una actualización inmediata:


1. Realice una copia de seguridad de las bases de datos de Parallels Plesk Panel y MSDE;

1.1. Detenga los servicios de MSSQLSERVER y de Administración de Parallels Panel;

1.2. Copie las siguientes carpetas a otra ubicación:

      %plesk_dir%\admin\db
      %plesk_dir%\Databases\MSDE\MSSQL\Data

1.3. Inicie los servicios de MSSQLSERVER y Administración de Parallels Plesk Panel;

2. A continuación describimos los pasos a seguir para desasociar las bases de datos de usuarios (Nota: Esta acción puede realizarse a través de SQL Server Management Studio):

2.1. Abra el símbolo del sistema y use osql para conectarse a la instancia que desea actualizar. Para conectarse a la instancia local predeterminada de MSDE usando la Autenticación de Windows, ejecute el siguiente comando:
osql -E

Para conectarse a una instancia 'named', use el switch -S e indique la instancia tal y como mostramos a continuación para conectarse a ella.
osql -E -S servername\instancename

2.2. Liste todas las bases de datos en la instancia MSDE utilizando los siguientes comandos en el prompt osql:
1> SELECT name FROM master.dbo.sysdatabases WHERE DBID > 4
2> GO

Esto listará todas las bases de datos de usuarios en la instancia MSDE.

2.3. Desasocie cada una de las bases de datos de usuario en la instancia MSDE ejecutando el siguiente comando en el símbolo de sistema osql:
1> EXEC sp_detach_db [database_name]
2> GO

Esto hará que las bases de datos de usuario estén offline. Reemplace el valor de database_name por el nombre de las bases de datos que desea mover de MSDE a SQL Server 2005 Express. Posteriormente, las bases de datos serán asociadas a la nueva instancia SQL Server 2005 Express.

2.4 Salga de la utilidad osql ejecutando el siguiente comando en el símbolo de sistema osql:
1> exit


3. Descargue e instale Microsoft SQL Server 2005 Express Edition como nueva instancia SQL y  Microsoft SQL Server Management Studio Express;

4. Copie las bases de datos que hemos desasociado de la carpeta de MSDE a la carpeta predeterminada de SQL 2005:

Por ejemplo, de: %plesk_dir%\Databases\MSDE\MSSQL\Data
a:  C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data

5. Los pasos que detallamos a continuación describen cómo asociar las bases de datos de nuevo (Nota: El adjunto de las bases de usuario puede extraerse con SQL Server Management Studio):

5.1. Inicie sqlcmd abriendo el símbolo de sistema e indicando el siguiente comando y presionando ENTER:
sqlcmd -E

Esto le conectará a la instancia local predeterminada de SQL Server 2005 Express usando la Autenticación de Windows. Si desea conectarse a una instancia 'named', use el switch -S e indique el nombre de la instancia de la siguiente forma:
sqlcmd -E -S servername\instancename

5.2. Asocie las bases de datos de usuario que habíamos desasociado de la instancia MSDE ejecutando el siguiente comando en el símbolo de sistema sqlcmd:
1> EXEC sp_attach_db [database] , 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\database_data_filename.mdf', 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\database_log_filename.LDF'
2> go

Reemplace los valores de database_data_filename y database_log_filename por los nombres de los archivos de la base de datos de la base de datos que desasociamos de su instalación MSDE anterio. Este ejemplo muestra la ruta de instalación predeterminada usada por MSDE. Si su instalación usaba una ruta personalizada, puede sustituir el valor de ruta correcto. Repita la operación para cada una de las bases de datos de usuario desasociadas.

5.3. Salga de la utilidad sqlcmd indicando EXIT y presione ENTER.

6. Ahora reemplace MSDE por SQL Express en la base de datos de Parallels Plesk Panel.

6.1. Primero cambie la carpeta a %plesk_bin% ejecutando el siguiente comando en cmd:
cd  %plesk_bin%

6.2. Ahora consulte los servidores de base de datos registrados en Parallels Plesk Panel:
dbclient --direct-sql --sql="select * from databaseservers where type='mssql'"

Verá una salida similar a:
http://downloads.swsoft.com/kb/plesk/msde-upgrade/dbservers.jpg

6.3. Ejecute el siguiente comando para reemplazar el registro correspondiente en la base de datos de Parallels Plesk Panel:
dbclient --direct-sql --sql="update databaseservers set host='.\sqlexpress',server_version='9.00.1399.06',admin_password='new_password' where id=2"

donde,
admin_password es la contraseña de la cuenta sa indicada durante la instalación de SQL Express;
id es el ID de la instancia MSDE en la tabla databaseservers de la base de datos de Parallels Panel.

6.4. Acceda a Parallels Plesk Panel, vaya a Servidor, Administración de Componentes de Plesk y haga clic en el botón Actualizar. La versión de SQL Server debería cambiar de ‘8.00.2039’ a ‘9.00.1399.06’. Abra la lista de servidores de base de datos registrados en Parallels Panel a través de Servidor, Servidores de base de datos y aquí debería estar registrada la instancia ‘.\sqlexpress’, igual que en la siguiente imagen:
http://downloads.swsoft.com/kb/plesk/msde-upgrade/serverslist.jpg

7. Los pasos que detallamos a continuación describen el proceso de creación de usuarios en SQL Express para las bases de datos de usuario correspondientes

7.1. La siguiente consulta selecciona los nombres de usuario de las bases de datos msde, sus contraseñas y los nombres de la base de datos a la que pertenecen los usuarios:
dbclient --direct-sql --sql="select db_users.login, db_users.passwd,data_bases.name from db_users,data_bases where db_users.db_id=data_bases.id and data_bases.db_server_id=2"

Debería obtener una salida similar a:
http://downloads.swsoft.com/kb/plesk/msde-upgrade/users.jpg

7.2. Según esta salida, es necesario crear una consulta SQL que asigne el usuario existente a un nombre de usuario con el mismo nombre o que cree el nombre de usuario SQL Server con la contraseña indicada, en el caso de que el nombre de usuario no exista.

Ejemplo de la consulta SQL:
USE [db_domain1]
go
EXEC sp_change_users_login 'Auto_Fix', 'db_user1', NULL, '123qwe'
EXEC sp_change_users_login 'Auto_Fix', 'db_user2', NULL, 'qweasd'
go
USE db_domain2
go
EXEC sp_change_users_login 'Auto_Fix', 'db_user3', NULL, 'asdzxc'
go

7.3 Ahora conéctese a la instancia SQL Express a través de SQL Server Management Studio, cree una consulta, copie-pegue la consulta creada en el paso anterior y ejecútela.

8. Finalmente, desinstale la instancia MSDE del servidor. Por defecto, el componente MSDE está oculto en la entrada Plesk de la lista de Añadir/Quitar Programas.

Primero desasocie MSDE de Parallels Panel abriendo Añadir/Quitar Programas, seleccionando Parallels Plesk Panel y haciendo clic en el botón Cambiar. Amplíe la Administración de Bases de Datos, haga clic en Microsoft SQL Server Desktop Engine, seleccione “Todo el Componente no estará disponible” y haga clic en Siguiente.

Una vez hecho esto, abra la herramienta regedit en el servidor y cambie el valor de SystemComponent de 1 a 0 en la siguiente sección del registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{E09B48B5-E141-427A-AB0C-D3605127224A}

Nota: La ventana de Añadir/Quitar Programas ha sido actualizada para que muestre la entrada MSDE en la lista de Añadir/Quitar Programas.

Ahora, la instancia de MSDE se ha desasociado de Parallels Plesk Panel y puede ser desinstalada.

AdditionalInformation

Si usa Parallels Plesk Sitebuilder en la misma instancia MSDE, también deberá realizar el procedimiento descrito en Cómo configurar Parallels Sitebuilder para que trabaje con SQL Express 2005 en vez de con MSDE.

85a92ca67f2200d36506862eaa6ed6b8 a914db3fdc7a53ddcfd1b2db8f5a1b9c 56797cefb1efc9130f7c48a7d1db0f0c

Email subscription for changes to this article
Save as PDF