Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fabio_br

Como trapear esse erro ?

Recommended Posts

Boa tarde

 

Estou com esse problema já há algum tempo, já entrei em contato com meu servidor (locaweb), mas ainda esse erro vem a me acontecer, o pior é que minha página por ser de vendas, quando fica 3 a 4 minutos fora do ar é um péssimo negócio. Gostaria de saber como poderia trapear esse erro usando asp.

Tipo, quando esse problema aparecesse a página seria automaticamente redirecionada a uma página explicativa da instabilidade do servidor.

 

o erro é:

 

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

 

[MySQL][ODBC 3.51 Driver][mysqld-5.0.41--log]MySQL server has gone away

 

 

 

Gratos pela ajuda

Fábio

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta isso se a conexão falhar:

 

on error resume next
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open MSCSSite.DefaultConnectionString
Set cmdTemp = Server.CreateObject("ADODB.Command")
cmdTemp.CommandType = adCmdText
Set cmdTemp.ActiveConnection = conn

' Se a conexão ADO falhar, então check 
'O número de erro, caso não seja igual a 0, e mudar 
'O MSCSSite.DefaultConnectionString a uma das 
'Conexão string no mscssite.connectionstringmap. 
'Para os fins deste exemplo, a base de dados é o padrão 
'SSCommerce e de backup é SSCommerce2

If Err.Number <> 0 Then
	err.clear 
	mscssite.defaultconnectionstring = mcssite.connectionstringmap("SSCommerce2")
	Set conn = Server.CreateObject("ADODB.Connection")
	conn.Open MSCSSite.DefaultConnectionString
	Set cmdTemp = Server.CreateObject("ADODB.Command")
	cmdTemp.CommandType = adCmdText
	Set cmdTemp.ActiveConnection = conn
End if

Compartilhar este post


Link para o post
Compartilhar em outros sites

Xan,

 

Pode me explicar o que faz esse code? Isso pode render algo interessante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou testar, mas de boa pessoal , o que fará esse erro?? irá resetar a aplicação??

Caso possa me dar mais algumas dicas disso ae, agradeço.

 

 

De qq forma muito obrigado por ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode usar código ASP para redirecionar conexões com falha do ADO para um computador SQL Server backup no caso do computador SQL Server padrão usado fica offline. Usando esse código pode fornecer uma medida adicional de tolerância a falhas e além de outras falhas de tolerância, como clusters. Esse código não deve ser usado no lugar de uma solução de tolerantes a falhas true.Só que parece que funciona apenas no SQL Server.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia

 

Um detalhe interessante que devo comentar é que quando na página aparece aquele erro, o servidor mysql não está parado ou com erro, o mesmo está rodando normal, apenas a conexão via Asp para ele é que não funciona.

Como uso o Dreamweaver para fazer minhas páginas e entendo muito pouco do Asp, fiz umas alterações sugeridas por você acima que ficaram desse jeito:

 

<%
Dim MM_mysqlcatvi_STRING, MM_mysqlcatvi1_STRING
MM_mysqlxoom_STRING = "Driver={MySQL ODBC 3.51 Driver}; SERVER=mysql.xoom.com.br; DATABASE=xoom; UID=xxxx; PWD=xxxx;"
MM_mysqlxoom1_STRING = "Driver={MySQL ODBC 3.51 Driver}; SERVER=mysql.xoom.com.br; DATABASE=xoom; UID=xxxx; PWD=xxxx;"

on error resume next
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open MM_mysqlxoom_STRING
Set cmdTemp = Server.CreateObject("ADODB.Command")
cmdTemp.CommandType = adCmdText
Set cmdTemp.ActiveConnection = conn

If Err.Number <> 0 Then
	err.clear 
	MM_mysqlxoom_STRING = MM_mysqlxoom_STRING
	Set conn = Server.CreateObject("ADODB.Connection")
	conn.Open MM_mysqlxoom_STRING
	Set cmdTemp = Server.CreateObject("ADODB.Command")
	cmdTemp.CommandType = adCmdText
	Set cmdTemp.ActiveConnection = conn
End if
%>

Aqui no caso só troquei o nome da conexão, não troquei para um servidor diferente.

 

 

Obrigado

Fábio

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.