{"id":1046,"date":"2011-11-07T20:49:40","date_gmt":"2011-11-07T22:49:40","guid":{"rendered":"http:\/\/fabriciolima.net\/blog\/?p=1046"},"modified":"2016-07-23T23:29:28","modified_gmt":"2016-07-24T02:29:28","slug":"casos-do-dia-a-dia-databases-online-e-inacessiveis-para-select","status":"publish","type":"post","link":"https:\/\/fabriciolima.net\/blog\/2011\/11\/07\/casos-do-dia-a-dia-databases-online-e-inacessiveis-para-select\/","title":{"rendered":"Casos do Dia a Dia &#8211; Databases ONLINE e inacess\u00edveis para SELECT"},"content":{"rendered":"<p>Fala Pessoal,<\/p>\n<p>O tempo est\u00e1 bem curto e por isso faz tempo que n\u00e3o posto por aqui. Semana passada passei por um problema e gostaria de deixar registrado aqui para voc\u00eas.<\/p>\n<p>Possuo um servidor SQL Server de homologa\u00e7\u00e3o que \u00e9 virtualizado. Algumas databases menores ficam dentro do pr\u00f3prio VHD e as que s\u00e3o maiores ficam em nosso Storage. Ap\u00f3s uma tentativa de expans\u00e3o do tamanho de uma unidade de disco desse servidor (c:), as databases que estavam nas unidades que s\u00e3o armazenadas no Storage ficaram inacess\u00edveis. Elas estavam com o Status ONLINE, entretanto, ao executar um SELECT era gerado um erro. As databases que estavam em um disco local no servidor (dentro do VHD) n\u00e3o tiveram esse problema.<\/p>\n<p>Ao tentar executar um DBCC CHECKDB em uma dessas databases, o erro abaixo era retornado:<\/p>\n<p>Msg 1823, Level 16, State 2, Line 1<br \/>\nA database snapshot cannot be created because it failed to start.<\/p>\n<p>Msg 7928, Level 16, State 1, Line 1<br \/>\nThe database snapshot for online checks could not be created. Either the reason is given in a previous error or one of the underlying volumes does not support sparse files or alternate streams. Attempting to get exclusive access to run checks offline.<br \/>\nDBCC results for &#8216;NOME_DATABASE&#8217;. CHECKDB found 0 allocation errors and 0 consistency errors in database &#8216;NOME_DATABASE&#8217;.<\/p>\n<p>Msg 9001, Level 21, State 1, Line 1<br \/>\nThe log for database &#8216;NOME_DATABASE&#8217; is not available. Check the event log for related error messages. Resolve any errors and restart the database.<\/p>\n<p>Msg 823, Level 24, State 2, Line 1<br \/>\nThe operating system returned error 21(failed to retrieve text for this error. Reason: 1815) to SQL Server during a read at offset 0x00000000196000 in file &#8216;X:\\NOME_DATABASE_Data.mdf&#8217;. Additional messages in the SQL Server error log and system event log may provide more detail. This is a severe system-level error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.<\/p>\n<p>Eu n\u00e3o conseguia nem executar um detach nas databases.<\/p>\n<p>Para resolver esse problema segui os seguintes passos:<\/p>\n<p>1 &#8211; Ao tentar deixar a database offline, eu estava sendo bloqueado por outro processo. Com isso, tive que matar todas as conex\u00f5es da mesma:<\/p>\n<p>alter database database_name set single_user with rollback immediate<\/p>\n<p>2 &#8211; Ap\u00f3s a execu\u00e7\u00e3o desse comando a conex\u00e3o \u00e9 perdida. Em seguida, devem ser rodados os outros dois comandos abaixo:<\/p>\n<p>alter database database_name set offline<br \/>\nalter database database_name set online<\/p>\n<p>3 &#8211; Para finalizar, verifiquei se est\u00e1 tudo certo executando o comando a seguir:<\/p>\n<p>DBCC CHECKDB(&#8216;database_name&#8217;)<\/p>\n<p>Nenhum erro foi retornado e a database estava novamente acess\u00edvel para utiliza\u00e7\u00e3o.<\/p>\n<p>N\u00e3o sei exatamente o que aconceteu, mas acredito que a VM perdeu a conex\u00e3o com os discos do Storage temporariamente, o que causou\u00a0 uma perda de referencia do SQL Server para os arquivos de dados e logs. Se eu tivesse que voltar um restore de todas as databases desse servidor eu iria demorar aproximadamente 8 horas. Espero que possa ajud\u00e1-los.<\/p>\n<p><b>Gostou dessa dica?<\/b><\/p>\n<p>Cadastre seu e-mail para receber novos Posts e curta minha <a href=\"https:\/\/www.facebook.com\/FabricioLimaSolucoesemBancodeDados\/\" target=\"_blank\">P\u00e1gina no Facebook<\/a> para receber Dicas de Leituras e Eventos sobre SQL Server.<\/p>\n<p>Confira mais experi\u00eancias do Dia a Dia de um DBA no meu <a href=\"https:\/\/www.fabriciolima.net\/cursos-online\/treinamento-tarefas-do-dia-a-dia-de-um-dba-online\/\" target=\"_blank\">Treinamento de Tarefas do Dia a Dia de um DBA<\/a>.<\/p>\n<p>Abra\u00e7os,<\/p>\n<p>Fabr\u00edcio Lima<\/p>\n<p>MCITP \u2013 Database Administrator<\/p>\n<p>Consultor e Instrutor SQL Server<\/p>\n<p>Trabalha com SQL Server desde 2006<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fala Pessoal, O tempo est\u00e1 bem curto e por isso faz tempo que n\u00e3o posto por aqui. Semana passada passei por um problema e gostaria de deixar registrado aqui para voc\u00eas. Possuo um servidor SQL Server de homologa\u00e7\u00e3o que \u00e9 virtualizado. Algumas databases menores ficam dentro do pr\u00f3prio VHD e as que s\u00e3o maiores ficam [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[3,6,280],"tags":[438,85,441,442,450,373,250,376,23,24,375,393,440,448,372,436,437,445,443,394,446,386,278,439,444,447,449,277],"class_list":["post-1046","post","type-post","status-publish","format-standard","hentry","category-administracao-de-bd","category-casos-do-dia-a-dia","category-virtual-pass-br","tag-a-database-snapshot-cannot-be-created-because-it-failed-to-start","tag-alter-database","tag-attempting-to-get-exclusive-access-to-run-checks-offline","tag-checkdb-found-0-allocation-errors-and-0-consistency-errors-in-database","tag-complete-a-full-database-consistency-check","tag-corrupcao-de-dados","tag-database-corruption","tag-database-online","tag-dba","tag-dbcc-checkdb","tag-desaster-recovery","tag-desastre","tag-either-the-reason-is-given-in-a-previous-error-or-one-of-the-underlying-volumes-does-not-support-sparse-files-or-alternate-streams","tag-failed-to-retrieve-text-for-this-error-reason-1815","tag-high-availability","tag-msg-1823","tag-msg-7928","tag-msg-823","tag-msg-9001","tag-recuperacao-de-desastre","tag-resolve-any-errors-and-restart-the-database","tag-single_user-with-rollback-immediate","tag-sql-server-virtualizado","tag-the-database-snapshot-for-online-checks-could-not-be-created","tag-the-log-for-database-is-not-available","tag-the-operating-system-returned-error-21","tag-to-sql-server-during-a-read-at-offset","tag-virtualizacao"],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":2534,"url":"https:\/\/fabriciolima.net\/blog\/2013\/12\/11\/casos-do-dia-a-dia-databases-em-modo-suspect-e-pendente-recovery\/","url_meta":{"origin":1046,"position":0},"title":"Casos do Dia a Dia &#8211; Databases em modo Suspect e Pendente Recovery","author":"Fabr\u00edcio Lima","date":"11 de dezembro de 2013","format":false,"excerpt":"Ol\u00e1 Pessoal, Compartilhando mais uma experi\u00eancia do meu Dia a Dia com voc\u00eas (fazia tempo que n\u00e3o fazia um post assim), tive um problema em um servidor onde o servi\u00e7o do SQL Server foi iniciado sem que a LUN onde estavam as bases de usu\u00e1rios tivesse dispon\u00edvel para utiliza\u00e7\u00e3o. Pouco\u2026","rel":"","context":"Em &quot;Administra\u00e7\u00e3o de Banco de Dados&quot;","block_context":{"text":"Administra\u00e7\u00e3o de Banco de Dados","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/administracao-de-bd\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":942,"url":"https:\/\/fabriciolima.net\/blog\/2011\/08\/15\/casos-do-dia-a-dia-corrupcao-de-dados-e-database-suspect\/","url_meta":{"origin":1046,"position":1},"title":"Casos do Dia a Dia: Corrup\u00e7\u00e3o de Dados e Database Suspect","author":"Fabr\u00edcio Lima","date":"15 de agosto de 2011","format":false,"excerpt":"Fala Pessoal, Gostaria de fazer deste post como se fosse uma thread de um f\u00f3rum com uma discus\u00e3o sobre alta disponibilidade no SQL Server. S\u00e1bado, dia 13\/08 eu tive um problema em uma database que deixa qualquer DBA com o cora\u00e7\u00e3o disparado(DBA n\u00e3o pode ter problema card\u00edaco!!!). Uma database de\u2026","rel":"","context":"Em &quot;Casos do Dia a Dia&quot;","block_context":{"text":"Casos do Dia a Dia","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/casos-do-dia-a-dia\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":564,"url":"https:\/\/fabriciolima.net\/blog\/2011\/03\/17\/casos-do-dia-a-dia-erro-ao-executar-o-comando-dbcc-checkdb\/","url_meta":{"origin":1046,"position":2},"title":"Casos do Dia a Dia: Erro ao executar o comando DBCC CHECKDB","author":"Fabr\u00edcio Lima","date":"17 de mar\u00e7o de 2011","format":false,"excerpt":"Casos do Dia a Dia: Erro ao executar o comando DBCC CHECKDB","rel":"","context":"Em &quot;Casos do Dia a Dia&quot;","block_context":{"text":"Casos do Dia a Dia","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/casos-do-dia-a-dia\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1070,"url":"https:\/\/fabriciolima.net\/blog\/2011\/12\/05\/casos-do-dia-a-dia-e-mails-de-eventos-com-erros-criticos-no-banco-de-dados\/","url_meta":{"origin":1046,"position":3},"title":"Casos do Dia a Dia &#8211; E-mails de eventos com erros cr\u00edticos no Banco de Dados","author":"Fabr\u00edcio Lima","date":"5 de dezembro de 2011","format":false,"excerpt":"Fala Pessoal, Na semana passada passei por uma experi\u00eancia que gostaria de compartilhar aqui no Blog. Em meus servidores SQL Server, eu configuro o envio de alertas quando acontece algum erro com severidade entre 20 e 25 (cr\u00edticos). Um certo dia, precisei reiniciar o servi\u00e7o do SQL Server. Como n\u00e3o\u2026","rel":"","context":"Em &quot;Administra\u00e7\u00e3o de Banco de Dados&quot;","block_context":{"text":"Administra\u00e7\u00e3o de Banco de Dados","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/administracao-de-bd\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2011\/12\/EventLogCorrupt.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2011\/12\/EventLogCorrupt.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2011\/12\/EventLogCorrupt.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.fabriciolima.net\/blog\/wp-content\/uploads\/2011\/12\/EventLogCorrupt.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":3714,"url":"https:\/\/fabriciolima.net\/blog\/2015\/12\/17\/corrupcao-de-dados-incorrect-pfs-free-space-information\/","url_meta":{"origin":1046,"position":4},"title":"Corrup\u00e7\u00e3o de Dados: Incorrect PFS free space information","author":"Fabr\u00edcio Lima","date":"17 de dezembro de 2015","format":false,"excerpt":"Ol\u00e1 Pessoal, Essa semana iniciei mais uma Consultoria Remota em um cliente e uma das atividades mais importante desse servi\u00e7o \u00e9 criar uma rotina para validar diariamente se existe corrup\u00e7\u00e3o nos bancos. Na grande maioria das vezes o banco est\u00e1 abandonado e n\u00e3o tem uma rotina dessa. Ao executar essa\u2026","rel":"","context":"Em &quot;Administra\u00e7\u00e3o de Banco de Dados&quot;","block_context":{"text":"Administra\u00e7\u00e3o de Banco de Dados","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/administracao-de-bd\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":788,"url":"https:\/\/fabriciolima.net\/blog\/2011\/05\/28\/erro-em-um-cubo-que-parou-todo-o-analysis-services\/","url_meta":{"origin":1046,"position":5},"title":"Erro em um Cubo que parou todo o Analysis Services","author":"Fabr\u00edcio Lima","date":"28 de maio de 2011","format":false,"excerpt":"Fala Pessoal, Essa semana recebi uma liga\u00e7\u00e3o de um setor reclamando que eles n\u00e3o estavam conseguindo se conectar a um Cubo. Esse cubo \u00e9 criado e utilizado atrav\u00e9s da ferramenta do Project. Ao logar no Analysis Services desse servidor, identifiquei que n\u00e3o era poss\u00edvel nem ver as propriedades do cubo.\u2026","rel":"","context":"Em &quot;Business Intelligence&quot;","block_context":{"text":"Business Intelligence","link":"https:\/\/fabriciolima.net\/blog\/category\/sql-server\/business-intelligence\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts\/1046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/comments?post=1046"}],"version-history":[{"count":0,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/posts\/1046\/revisions"}],"wp:attachment":[{"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/media?parent=1046"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/categories?post=1046"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fabriciolima.net\/blog\/wp-json\/wp\/v2\/tags?post=1046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}