AR
Erro ao conectar no banco de dados Mysql
Fechado
Sou novo no Adianti Studio e estou criando um sistema para Lar de Velhinhos (gratuito). Tinha o sistema em Access e estou mudando para o framework.
Montei no xampp e está funcionando, porém ao colocar em meu servidor no Redhost, não acessa. Já editei o conector de banco de dados e também não acessa o banco de dados MySql no que está no ar.
Procurei no fórum e achei algumas dicas, tentei mas não funcionou.
Alguém pode me ajudar?
Dá a seguinte Msg de erro:
SQLSTATE[HY000] [2002] Connection refused
File: /lib/adianti/database/TConnection.php : 80
PDO->__construct(mysql:host=127.0.0.1;port=3306;dbname=XXX,sislar,XXXX,SET NAMES utf8)
File: /lib/adianti/database/TConnection.php : 44
Adianti\Database\TConnection::openArray(127.0.0.1,sislar,XXX,user123#,mysql)
File: /lib/adianti/database/TTransaction.php : 56
Adianti\Database\TConnection::open(sislar)
File: /lib/adianti/widget/wrapper/TDBCombo.php : 62
Adianti\Database\TTransaction::open(sislar)
File: /app/control/TabidosoFormList.class.php : 57
Adianti\Widget\Wrapper\TDBCombo->__construct(Responsavel,sislar,tabresponsavel,IdResponsavel,Responsavel,Responsavel)
File: /lib/adianti/core/AdiantiCoreApplication.php : 51
TabidosoFormList->__construct(TabidosoFormList)
File: /engine.php : 20
Adianti\Core\AdiantiCoreApplication::run(1)
File: /engine.php : 39
TApplication::run(1)
Montei no xampp e está funcionando, porém ao colocar em meu servidor no Redhost, não acessa. Já editei o conector de banco de dados e também não acessa o banco de dados MySql no que está no ar.
Procurei no fórum e achei algumas dicas, tentei mas não funcionou.
Alguém pode me ajudar?
Dá a seguinte Msg de erro:
SQLSTATE[HY000] [2002] Connection refused
File: /lib/adianti/database/TConnection.php : 80
PDO->__construct(mysql:host=127.0.0.1;port=3306;dbname=XXX,sislar,XXXX,SET NAMES utf8)
File: /lib/adianti/database/TConnection.php : 44
Adianti\Database\TConnection::openArray(127.0.0.1,sislar,XXX,user123#,mysql)
File: /lib/adianti/database/TTransaction.php : 56
Adianti\Database\TConnection::open(sislar)
File: /lib/adianti/widget/wrapper/TDBCombo.php : 62
Adianti\Database\TTransaction::open(sislar)
File: /app/control/TabidosoFormList.class.php : 57
Adianti\Widget\Wrapper\TDBCombo->__construct(Responsavel,sislar,tabresponsavel,IdResponsavel,Responsavel,Responsavel)
File: /lib/adianti/core/AdiantiCoreApplication.php : 51
TabidosoFormList->__construct(TabidosoFormList)
File: /engine.php : 20
Adianti\Core\AdiantiCoreApplication::run(1)
File: /engine.php : 39
TApplication::run(1)
Você tem certeza que os parâmetros(host e porta) estão corretos?
Pelo que vi no link abaixo a porta deveria ser 41890:
atendimento.redehost.com.br/hc/pt-br/articles/209636858-Configurando
Versão do PHP ?
Obrigado Nataniel e Leandro.
Fiz a alteração de portas para 41890 e tb não funcionou.
Estava com o PHP 5.4 e atualizei no Redhost para 5.6 e continua dando a mesma mensagem.
Meu PHP info:
----------------------------------
PHP Version 5.6.18
System Linux web101.redehost.com.br 2.6.32-673.8.1.lve1.4.3.1.el6.x86_64 #1 SMP Thu May 5 16:06:47 EDT 2016 x86_64
Build Date Feb 28 2016 13:54:07
Configure Command './configure' '--prefix=/usr/local/php/PHP56' '--enable-ftp' '--enable-mysqlnd' '--with-mysql=shared,mysqlnd' '--with-mysqli=shared,mysqlnd' '--with-pdo-mysql=shared,mysqlnd' '--with-libdir=lib64' '--with-pear'
Server API CGI/FastCGI
Virtual Directory Support disabled
Configuration File (php.ini) Path /usr/local/php/PHP56/lib
Loaded Configuration File /home/amarildobomber.com.br/www/php.ini
Scan this dir for additional .ini files (none)
Additional .ini files parsed (none)
PHP API 20131106
PHP Extension 20131226
Zend Extension 220131226
Zend Extension Build API220131226,NTS
PHP Extension Build API20131226,NTS
Debug Build no
Thread Safety disabled
Zend Signal Handling disabled
Zend Memory Manager enabled
Zend Multibyte Support provided by mbstring
IPv6 Support enabled
DTrace Support disabled
Registered PHP Streams https, ftps, php, file, glob, data, http, ftp, compress.zlib, zip, phar
Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls, tlsv1.0, tlsv1.1, tlsv1.2
Registered Stream Filters convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, mcrypt.*, mdecrypt.*, zlib.*
-----------------------
E o host? É realmente 127.0.0.1?
Tenho outros sistemas instalados no mesmo servidor que também usam o host: localhost ou o 127.0.0.1.
Tô achando que é alguma configuração do php.ini ou dentro do próprio adianti, além da configuração do sistema que fica na pasta config que eu teria que mudar, mas não sei exatamente. Ocorre que no meu notebook com o Xampp está funcionando perfeitamente com a mesma configuração que coloquei no servidor Redehost.
Este erro esta diz que é recusado, se está tudo certo do ini, então, veja ai se esta habilitado para usar PDO no servidor.
Veja no PHP info esta linha: API Extensions: mysql,mysqli,pdo_mysql
Você pode tentar trocar o localhost pelo número do ip do dominio, talvez ajude.
Leandro, muito obrigado pelo apoio e interesse.
O sistema está no endereço:
www.amarildobomber.com.br/sislar
Usuario: user
Senha: 123456
Disponibilizei acesso a phpinfo e ao formulário que dá erro
Muito obrigado!
Esta dando outro erro, e não o de conexão:
SQLSTATE[HY000] [2002] No such file or directory
(Não existe tal arquivo ou diretório)
Este erro parece que vc esta buscando um arquivo e não foi encontrado, isso pode acontecer no linux, pq ele diferencia maiúscula e minuscula , já isso acontecer tbem com os nomes da tabela no mysql, tbem por causa de maiúscula e minuscula.
Leandro,
consegui resolver parcialmente o problema alterando dados da conexão. O problema era o host que o Redhost utiliza como padrão, tive que colocar o nome e não o IP, ele também não aceitava o localhost nem o 127.0.0.1 que costumam ser padrão.
O problema agora é que o formulário de cadastro do idoso tem TDBCombo, aparece a mensagem abaixo.
Mudando o TDBCombo para Entry funciona normalmente.
Engraçado é que localhost funciona perfeitamente em meu notebook com Windows e Xampp.
Mensagem de erro ao acessar o Formulário de Idoso:
File: /lib/adianti/widget/wrapper/TDBCombo.php : 64
Adianti\Database\TRepository->__construct(tabresponsavel)
File: /app/control/TabidosoFormList.class.php : 59
Adianti\Widget\Wrapper\TDBCombo->__construct(Responsavel,sislar,tabresponsavel,IdResponsavel,Responsavel,Responsavel)
File: /lib/adianti/core/AdiantiCoreApplication.php : 51
TabidosoFormList->__construct(TabidosoFormList)
File: /engine.php : 20
Adianti\Core\AdiantiCoreApplication::run(1)
File: /engine.php : 39
TApplication::run(1)
Descobri!
O problema é que no sistema no ar (redehost) ele não achava a classe model porque estava com a inicial maiuscula (problema do linux), pois localhost no xampp funcionava perfeitamente!
De qualquer forma obrigado!!
Isso não é problema do linux é padrão, toda vez que for hospedar e normalmente usamos linux, sempre será assim, ou seja, o linux deferência maiúscula e minuscula.
Ótimo que tenha resolvido.