locked
memoria SQL 2005 64 bits em servidor windows 2003 64 bits RRS feed

  • Pergunta

  • Ola

    Preciso resolver uma dúvida. tenho servidor 2003 64 bits 8gb memoria onde instalei sql 2005 standard 64 bits, porem no gerenciador de dispositivos esta demonstrando que o arquivo sqlservsr.exe esta utilizando sempre 7 ou mais da memoria.

    Como faço para diminuir?

    tenho que efetuar configuracoes no windows 2003 e no sql?

    segunda-feira, 27 de julho de 2009 02:46

Respostas

  • Ola Zukka,

    vc deve fazer as configurações no SQL, geralmente ele usa a memoria disponível, conforme a necessidade ele vai alocando...

    para configurar o max que ele pode usar basta seguir os passos abaixo:

    no Managemante Studio
    propriedades do server / Memory / "maximun server memory"

    no SP_CONFIGURE
    sp_configure 'max server memory (MB)',<valor desejado em mb>
    go
    RECONFIGURE WITH OVERRIDE;

    Att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS. Se útil, classifique!!!
    segunda-feira, 27 de julho de 2009 11:17
    Moderador
  • Godoy, para aumentar para 7 só seguir os procedimentos informado mais acima.

    Referente aos locks~, não pode ser considerado apenas a memória como causadora do aumento de tempo e quantidade de lock.
    O lock está mais ligado a concorrência entre usuários e como as transações estão desenvolvidas, envolve tipos e modos de lock e nivel de isolamento.

    Todos estes fatores devem ser análisados antes de aumentar a memória.
    ITILF | MCP | MCTS | MCITP SQL Server 2005 & 2008. http://www.bydocs.com
    sexta-feira, 30 de outubro de 2009 18:09

Todas as Respostas

  • Ola Zukka,

    vc deve fazer as configurações no SQL, geralmente ele usa a memoria disponível, conforme a necessidade ele vai alocando...

    para configurar o max que ele pode usar basta seguir os passos abaixo:

    no Managemante Studio
    propriedades do server / Memory / "maximun server memory"

    no SP_CONFIGURE
    sp_configure 'max server memory (MB)',<valor desejado em mb>
    go
    RECONFIGURE WITH OVERRIDE;

    Att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS. Se útil, classifique!!!
    segunda-feira, 27 de julho de 2009 11:17
    Moderador
  • Zukka,

    Seguindo as orientações do Marcelo, você poderá realizar esta alteração.

    Agora deixa eu te perguntar, este servidor tem mais alguma funcionalidade configurada?

    Se for somente servidor SQL Server, recomendo deixar para o sistema operacional 1.5GB de memória e o restante para o SQL Server.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    segunda-feira, 27 de julho de 2009 16:00
    Moderador
  •   O meu servidor é 64 bits tb., windows 2003 server e é servidor de TS (terminal Server), então o SQl está usando 10 GB e tenho mais 6 GB para o TS, antes o SQL Server 2005 32 ficava no servidor Windows 2003 Server 32 e usava somente 1.8 GB de RAM, dai quando passamos para o 64 bits está usando 10 GB, preciso configurar a memória como a dica acima ou é assim mesmo? Pq no 32 bits ele usava apenas 1.8 Gb e agora usa 10 GB no 64bits?
       Obrigado e aguardo resposta.
       Reginaldo.
    quinta-feira, 20 de agosto de 2009 12:58
  • Regi TI,

    Mas o que você esta querendo fazer, definir um novo valor de uso da memória para o SQL Server?


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    quinta-feira, 20 de agosto de 2009 13:38
    Moderador
  •   eu instalei o SQL e deixei tudo padrão, agora eu queria saber se precisa definir algum valor para a memória do SQL, digo isso pelo fato de estar usando muita memória, pois como eu disse no servidor antigo que era 32 bits os mesmos bancos de dados usavam apenas 1.8 GB de RAM e nesse servidor está usando 9 / 10 GB para os mesmos bancos e aplicativos.
       Eu achei que era algum bug no SQL 2005 64 bits, mas é normal usar tudo isso de memória? O SQL está com SP 2.
    quinta-feira, 20 de agosto de 2009 15:48
  • zukka | Regi,

    a diferença é que em sistema operacional 32 bits as aplicações conseguem utilizar apenas 2GB de RAM devido ao limite do sistema operacional, no caso do SQL Server há possibilidade de aumentar o uso de memória, porém para tanto é necessário realizar algumas configurações como por exemplo AWE.

    Como não havia essa configuração em seu ambiente ele usava o limite permitido pelo sistema operacional.

    Já no sistema operacional de 64 bits este limite de apenas 2GB de RAM não existe, devido a isto o SQL Server passou a usar mais memória, no SQL você consegue restringir a quantidade de memória utilizada por instâncias, ou seja minimo e máximo.

    Caso você não defina esta opção o SQL Server alocará quanta memória for possível e estiver disponível.

    Por isso é um boa prática especificar uma quantidade máxima a ser utilizada.

    existem duas maneiras de realizar esta configuração:

    1 - Como nosso amigo Marcelo falou.
    2 - Através da interface gráfica nas propriedades da instância de seu SQL Server.
    DBA SQL Server MCTS - SQL Server 2005 | ITIL Foundation V2 http://www.bydocs.com
    • Sugerido como Resposta Regi TI terça-feira, 25 de agosto de 2009 17:48
    sexta-feira, 21 de agosto de 2009 02:07
  • ola colegas...um amigo indiicou-me para executar o comando : DBCC TRACEON 834

    Já executei este comando umas tres vezes no meu servidor onde apos execucao sem nenhum usuario estar acessando, reinicio a maquina, e logo em seguida visualizo no gerenciador de tarefas que o serviço sqlservr cai de 8 ou 7 para 1 ou 2 gb, sendo que meu servidor tem memoria 8gb.


    Duvida: Tem como deixar este comando fixo? Ou toda vez que ver o consumo de memoria grande terei que ficar executando o comando e reiniciando a máquina?


    Quem poder ajudar-me, ficarei agradecida



    abraços


    zuleide

    quarta-feira, 26 de agosto de 2009 21:57
  • Como citado na resposta minha mais acima, você pode configurar quanto de memória deseja que o SQL utilize do seu servidor, você não precisa executar este comando.

    Uma das formas é:

     1 - Abra o management studio, e conecte em sua instância
     2 - Clique com o botão direito sobre o nome da instância e depois propriedades.
     3 - Clique em Memory e defina em Maximum Server Memory (MB), qual o MÁXIMO e MÍNIMO de memória que deseja que o sql utilize.

    Por exemplo:
     Min = 2000MB
     Max = 6000MB.

    Assim seu SQL sempre ficará entre 1 e 6 gb de RAM, na maior parte do tempo ele irá alocar o próximo ao valor máximo, porém se o sistema operacional precisar desta memória irá solicitar ao SQL, desde que não deixe o SQL com menos memório do que foi específicado no mínimo.

    Ou você pode rodar os scripts como o Marcelo falou, das duas formas irá funcionar.

    abraço.
    DBA SQL Server MCTS - SQL Server 2005 | ITIL Foundation V2 http://www.bydocs.com
    quinta-feira, 27 de agosto de 2009 01:42
  • boa noite

    Ok,
    só mais uma duvida

    este servidor que tenho foi criado 3 instancias.

    1) para um banco de dados, onde o sistema não é utilizado todos os dias. e o uso dele é limitado para alguns usuarios.
    2) para banco de dados testes, onde utiliza-se um numero pequeno de usuarios (usuarios finais e administradores banco de dados) para realizacao de testes
    3) para banco de dados que esta producao, que sempre chega no pico de consumo de memoria.

    Se meu servidor tem 8gb. como configurar para cada instancia os parametros de memoria.


    aguardo respostas

    obrigado

    zu
    domingo, 30 de agosto de 2009 03:56
  • Zukka, então com certeza produção muito mais que os outros, o ideal é que pelo menos a instância de produção fosse em um servidor diferente, porém se não é possível e pelo que mencionou de seu ambiente de produção, na minha opnião configuraria:

    1 GB reservado para o sistema operacional
    1 GB para testes
    1,5 GB para a instância que citou como bancos pouco utilizados
    4,5 GB para produção.


    DBA SQL Server MCTS - SQL Server 2005 | ITIL Foundation V2 http://www.bydocs.com
    domingo, 30 de agosto de 2009 14:49
  • PEssoal,

    Tenho um servidor com Windows 2003Server Enterprise 64 bits e SQL2005 64bits, com 4 processadores e 8Gb de memória Ram.

    No log do Sqlagent mostra uma informação dos 4 processadores e somente 4Gb de memória. Como faço para aumentar essa memória para 7Gb?

    Nosso sistema tem apresentado muitos problemas de lock, talvez essa pode ser a causa. Alguma sugestão para essa questão da memória e dos locks?

    Valeu!
    quarta-feira, 28 de outubro de 2009 02:26
  • Godoy, para aumentar para 7 só seguir os procedimentos informado mais acima.

    Referente aos locks~, não pode ser considerado apenas a memória como causadora do aumento de tempo e quantidade de lock.
    O lock está mais ligado a concorrência entre usuários e como as transações estão desenvolvidas, envolve tipos e modos de lock e nivel de isolamento.

    Todos estes fatores devem ser análisados antes de aumentar a memória.
    ITILF | MCP | MCTS | MCITP SQL Server 2005 & 2008. http://www.bydocs.com
    sexta-feira, 30 de outubro de 2009 18:09
  • Este post foi encerrado por ser considerado um post antigo.

    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    terça-feira, 5 de junho de 2018 18:10
    Moderador