2012-02-23 26 views
8

Casi me da miedo hacer esta pregunta aquí porque parece que debería estar disponible en google o en ravendb.net. Sin embargo, he estado teniendo dificultades para encontrar la forma correcta de actualizar mi RavenDB a una nueva versión. Actualmente estoy ejecutando la versión 573 y quiero actualizar a 616, simplemente por la posibilidad de promocionar un índice en Raven Studio.RavenDB Upgrade

¿Cuál es la forma correcta de actualizar? ¿Realizo una copia de seguridad de mi base de datos, elimino toda la carpeta de Raven en el disco duro y luego copio la nueva versión 616 en esa misma carpeta? Entonces restaurar el DB?

EDIT:

Cómo he actualizado RavenDB V573 a V960 (27-Nov-2012):

Nota: El cambio del MaxPageSize (paso 7.b) no es recomendable.

  1. Ejecute pruebas automatizadas contra el local 960 para verificar que no se rompa nada.
  2. copia de seguridad de 573 RavenDB
  3. Instalar/descomprimir 960 al servidor de producción
  4. carpeta Copiar datos de 573 a 960
  5. Dar usuario PrestoDatabaseUser acceso completo a la carpeta de datos
  6. Desinstalar servicio RavenDB existente:
    una . sc delete RavenDB
    b. Cambie el nombre de la carpeta antigua 573 a RavenDB-Build-573_deprecate
  7. Establezca Raven.Server.exe.config (restablezca cualquier configuración alterada de la configuración original):
    a. <add key="Raven/AnonymousAccess" value="Get"/>
    b. <add key="Raven/MaxPageSize" value="2147483647"/>
    c. <add key="Raven/Authorization/Windows/RequiredUsers" value="domain\UserName"/>
  8. Instalar como un servicio:
    a. C:\Software\RavenDb\RavenDB-Build-960\Server>Raven.Server.exe /install
  9. archivo de copia de seguridad por lotes Cambio RavenDB para que apunte a la nueva estructura de carpetas 960
  10. Si los servicios/aplicaciones no están respondiendo a la nueva RavenDB, reiniciarlos.

Respuesta

9

BobHorn,

La manera de hacerlo, en nuestros sitios de producción :-) 1) Detener el sitio de IIS. 2) Reemplace los binarios 3) Inicie el sitio IIS.

Si se trata de un gran cambio, también hago una copia de seguridad. Pero eso es más o menos.

+0

¿Es solo necesario reemplazar los archivos binarios en la carpeta Servidor? ¿O debería reemplazarse todo el RavenDB-Build-573? –

+0

¿Y también es necesario usar los nuevos binarios en la carpeta del Cliente? Uso la API del cliente .NET, no IIS. –

+0

Puedes hacerlo a través de Nuget. –

2

En el pasado, he instalado la versión más nueva de RavenDB como un sitio web de IIS completamente separado del anterior. Luego movió la carpeta de datos de la ubicación anterior a la nueva. Luego, lentamente, eliminar el antiguo cabo (por supuesto dependiendo de su situación, que iba a cambiar la configuración de IIS apropiadas para el sitio web y cuando mantenga la eliminación de uno de edad)

+0

Gracias. No estoy usando IIS con Raven. Estoy usando la API de .NET. Tengo la capacidad de desconectar el DB por un corto tiempo, así que no necesito eliminar uno. De acuerdo con lo que dijo, parece que puedo hacer lo que dije en mi pregunta original: copia de seguridad de la base de datos, eliminación de la instalación antigua de Raven, instalación de Raven nueva, restauración de la copia de seguridad. –

+0

Ojalá haya una mejor manera de actualizar que se ocupe de todo esto en el fondo ... puede que exista. Uno de los expertos Daniel o Ayende podría ayudarte. – ZVenue

+0

En realidad, no veo esto como una mala solución; Solo quiero saber si es la manera correcta de hacerlo. –