Primero responderé la última pregunta: Sí, puede cambiarla mientras el servidor se ejecuta sin problemas. Si desea cambiar el valor a través de SQL, puede hacerlo con la siguiente consulta
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'max server memory', 4096;
GO
RECONFIGURE;
GO
Consulte esta página para obtener más detalles sobre cómo configurar la memoria en el servidor SQL.
Su primera pregunta, desafortunadamente la respuesta es: no puedo decirte, no estoy allí.
Hay un millón de cosas que debe tener en cuenta al asignar memoria. ¿Qué tan grandes son los conjuntos de resultados de las consultas, con qué frecuencia se ejecutan, una consulta que solía tomar 20 ms estaría bien para tomar ahora 200 ms?
Los valores predeterminados de SQL asumen que es lo único que se ejecuta en el servidor, por lo que solo establece la memoria en MAX_VALUE y deja de crecer cuando toda la memoria disponible está en uso (y en hardware dedicado que está bastante cerca de lo que quiere que suceda) (vea Aarons comenta una posible advertencia)). Normalmente, cualquier servidor web u otro software que interactúe con la base de datos estaría en un hardware diferente que se comunicaría a través de la red.
Realmente solo necesitas establecerlo en un valor que creas que es sensato, y si tu servidor web todavía está bloqueado por la memoria, bájalo. Si SQL no le brinda el rendimiento suficiente después de darle al servidor web la memoria que necesita, deberá comprar más RAM o mover el SQL a un hardware dedicado.